修改MySQL默认编码
在Ubuntu 下配置 MySQL 的字符编码。安装完 MySQL 后,系统默认的字符编码是 latin1 ,输入的是中文,可是输出却是一堆乱码。现在要做的就是把 MySQL的默认字符编码设置为支持中文的编码,如 GBK、GB23112、等。
首先进入MySQL存放配置文件的目录
执行ls,查看下此文件夹下的文件
会发现有个文件是my.cnf,这个文件是mysql的配置文件
用vim打开此文件
cd /etc/mysql/ ls vi my.cnf
打开my.cnf后,会发现在此文件的最后有两行(此配置文件又引用了其他的两个配置文件,我们需要修改的是mysqld.cnf ,这是mysql服务端基础配置文件 ):
!includedir /etc/mysql/conf.d !includedir /etc/mysql/mysql.conf.d
用vim打开/etc/mysql/mysql.conf.d/mysqld.cnf文件(如果提示不可编辑的话,可以切换账号为root)
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
打开文件后,在[mysqld] 的skip-external-locking下,添加character-set-server=utf8
...... [mysqld] ...... skip-external-locking character-set-server=utf8 ......
补:external-locking
external-locking用于多进程条件下为MyISAM数据表进行锁定。
如果你有多台服务器使用同一个数据库目录(不建议),那么每台服务器都必须开启external locking;
下面,我们还要去设置客户端的默认编码,我们现在进入mysql客户端配置文件目录
cd /etc/mysql/conf.d ls
ls后,发现有个文件mysql.cnf
用vi打开,并在[mysql]下插入一行:default-character-set=utf8
~#vi mysql.cnf
[mysql] default-character-set=utf8
最后,重启mysql 服务
sudo service mysql restart
进入mysql,用\s查看是否修改成功
mysql>\s