编码格式查看
查看MySQL编码
mysql> show variables like "%char%";
查看数据库编码
show create database <databasename>
查看表编码
show create table <tablename>t;
查看字段编码
show full columns from artist;
编码格式修改
MySQL编码格式修改
set [global] character_set_database=utf8;
set [global] character_set_server=utf8;
其中 global 为可选参数,不指定global时只修改单个会话间的字符集,指定global后会修改多个会话间的字符集合。想要修改当前会话间的字符集,则不能使用global。但是重启后则会失效。
重启后修改失效:
永久修改MySQL默认编码需要修改配置文件(配置文件位置因系统而异,在我的Ubuntu上配置文件位于/etc/mysql/conf.d/mysql.cnf)添加如下内容即可:
[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8
[client]
default-character-set=utf8
保存后MySQL默认编码即永久修改。
修改数据库编码
ALTER DATABASE <database_name> CHARACTER SET utf8;
修改表编码
ALTER TABLE <table_name> DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
修改列编码
ALTER TABLE `table_name`
CHANGE `column_name`
`column_name`
VARCHAR( 100 )
CHARACTER SET utf8
COLLATE utf8_general_ci NULL DEFAULT NULL