查看编码:

show variables like 'collation_%';

show variables like 'character_set_%';

修改:

MySQL:修改默认字符集,转换字符集(MySQL 5.X)

1. 修改 MySQL 数据库默认字符集(mysql database default character set)

alter database testdb default character set = gb2312;

2. 修改 MySQL 数据表默认字符集(mysql table default character set)

alter table ip_to_country default character set = gb2312;

注意:修改 MySQL 的默认字符集,不管是在数据库级别,还是数据表级别,对已经存储的字符数据无任何改变。只是新增的表或列,开始使用新的字符集。

3. 转换 MySQL 数据表字符集(mysql table character set)

MySQL 中有一个数据表 ip_to_country,以前该表字符列数据都是以 utf8 编码格式存放的,现在想转换为 gb2312 编码格式存放。需要使用 MySQL 转换字符集命令:convert to character set

alter table ip_to_country convert to character set gb2312;

提示:convert to 也会把数据表 ip_to_country 的默认字符集从 utf8 更改为 gb2312。

4. 转换 MySQL 数据表中某个列的字符集(mysql column character set)

alter table ip_to_country modify country_name varchar(50) character set gb2312;

这个语句把单独一个列 country_name 的字符集转换为 gb2312。这在用法在实际中比较少见,因为大多数情况下,都是改变整个表的字符集。


MySQL字符集修改命令(2009-02-10 10:57:31)标签:mysql 字符集 it
MySQL字符集修改命令

1.修改服务器级

a. 临时更改: mysql>SET GLOBAL character_set_server=utf8;

b. 永久更改:shell>vi /etc/my.cnf[mysqld]default-character-set=utf8



2.修改数据库级

a. 临时更改: mysql>SET GLOBAL character_set_database=utf8;

b. 永久更改:改了服务器级就可以了



3.修改表级

mysql>ALTER TABLE table_name DEFAULT CHARSET utf8; 更改了后永久生效



4.修改列级修改示例:

mysql>ALTER TABLE `products` CHANGE `products_model` `products_model` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; 更改了后永久生效



5.更改连接字符集

a. 临时更改:mysql> SET NAMES utf8;

b.永久更改: shell>vi /etc/my.cnf在[client]中增加:default-character-set=utf8