本文介绍在Ubuntu 16.04系统下配置 MySQL 的字符编码。
安装完 MySQL 后,系统默认的字符编码是 latin1,输入的是中文,可是输出却是一堆乱码。现在要做的就是把 MySQL的默认字符编码设置为支持中文的编码:utf8。(需要Ubuntu 18.04下安装MySQL 8服务器教程的请参考:https://ywnz.com/linuxysjk/1645.html)
首先进入MySQL存放配置文件的目录,执行ls查看此文件夹下的文件:
这里有个my.cnf文件,此文件是mysql的配置文件,用vim打开此文件: vi my.conf
打开后文件内容如下:
文件的最后两行又引用了其他的两个配置文件,我们需要修改的是mysqld.conf,这是mysql服务端的基础配置文件。
用vim打开/etc/mysql/mysql.conf.d/mysqld.conf文件,在[mysqld] 的skip-external-locking下,添加character-set-server=utf8,如果提示不可编辑,则切换到root账户。
下面我们还要去设置客户端的默认编码,现在进入mysql客户端配置文件目录:
用vim打开,并在[mysql]下插入一行:default-character-set=utf8:
现在重启mysql服务,运行以下命令: service mysql restart
最后进入mysql,用\s查看是否修改成功:
附1:查看编码 1.查看数据库编码 show variables like '%char%'; 2.查看表编码 show create table <表名>; 例:show create table user; 3.查看字段编码 show full columns from <表名>; 例: show full columns from user;
附2:修改编码格式 1.修改数据库编码格式 alter database <数据库名> character set utf8; 例:alter database db_user character set utf8; 2.修改表编码 alter table <表名> character set utf8; 例: alter table user character set utf8; 3.修改字段编码 ALTER TABLE <表名> MODIFY COLUMN <字段名> <字段类型> CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; 例:ALTER TABLE user MODIFY COLUMN name VARCHAR(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
相关主题 |