linux下mysql中文乱码问题

  1. 如果无论前端数据、后端数据都是uft-8编码,程序上找不出任何问题,但是仍然出现插入数据库乱码,那么有可能就是mysql数据库服务器本身字符集编码有问题

  2. 用mysql-front连接上数据库后执行:show variables like 'character%';

    linux下mysql中文乱码问题

    可以发现,character_set_server这里的字符集编码是latin1

  3. 修改/etc/my.cnf文件,修改添加character-set-server=utf8这一行

    [root@localhost ~]# cat /etc/my.cnf 
    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    user=mysql
    default-storage-engine=INNODB
    character-set-server=utf8
    
    # Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    
    [mysqld_safe]
    log-error=/var/log/mysqld.log
    pid-file=/var/run/mysqld/mysqld.pid
  4. 重启mysql服务器

    service mysqld restart

  5. 查看mysql服务器字符编码集

    linux下mysql中文乱码问题

    这样以后就不会有乱码了。

你可能感兴趣的:(linux,mysql,乱码)