mysql 建表字符集
1.列出MYSQL支持的所有字符集:
SHOW CHARACTER SET;
2.當前MYSQL服務器字符集設置
SHOW VARIABLES LIKE 'character_set_%';
3.當前MYSQL服務器字符集校驗設置
SHOW VARIABLES LIKE 'collation_%';
4.顯示某數據庫字符集設置
show create database 數據庫名;
5.顯示某數據表字符集設置
show create table 表名;
6.修改數據庫字符集
alter database 數據庫名 default character set 'utf8';
7.修改數據表字符集
alter table 表名 default character set 'utf8';
8.建庫時指定字符集
create database 數據庫名 character set gbk collate gbk_chinese_ci;
9.建表時指定字符集
CREATE TABLE `mysqlcode` (
`id` TINYINT( 255 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`content` VARCHAR( 255 ) NOT NULL
) TYPE = MYISAM CHARACTER SET gbk COLLATE gbk_chinese_ci;
庫字符集,在my.cnf中缺少了如下代碼:
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
如果不加以上代碼,那么即便MYSQL編譯安裝時指定的編碼是UTF8,那么在建庫時其默認編碼仍是LATIN1,而由於字符集的繼承性,庫中的表也是LATIN1的了。
windows下的方法是:
1、windows系統
win下可使用類似如下語句處理。通過命令行進入mysql/bin所在目錄。
D:\usr\mysql41\bin>mysqldump -uroot -p --quick --compatible=mysql40 --default-character-set=latin1 --extended-insert=FALSE test2 > d:\zzz.sql
test2是你想導出數據的數據庫名,d:\是路徑,設置成你希望的路徑就行了,zzz.sql是隨意命名的文件,名稱隨意,只要有.sql后綴名就行了。
程序會提示你輸入root的用戶密碼(如果存在密碼的話),輸入,程序開始導出。500MB的數據2-3分鍾就完成了。
2、第二步,通過phpmyadmin建立一個新庫,庫名:test ,采集字符集設定為utf8-general-li 或gb2312
3、將備份出來的sql文件導入新數據庫。
D:\usr\mysql41\bin>mysql -uroot -p --default-character-set=utf8 test < d:/zzz.sql
或
D:\usr\mysql41\bin>mysql -uroot -p --default-character-set=gb2312 test < d:\zzz.sql
這一步花的時間相對較長,200MB數據花了10分鍾左右。
原文地址:http://hi.baidu.com/chenzhen1310/item/17b8e9136445428789a95652