修改my.ini檔案
加上
default-character-set=gb2312
設定資料庫字元集
alter database da_name default character set 'charset'
1)設定資料庫編碼 /etc/my.cnf
[mysqld]
default-character-set=gbk
...
[client]
default-character-set=gbk
---------------------------------------
2)按字元集匯出
$mysqldump -u root -p dbname --default-character-set=gbk > a.sql;
3)查看SQL檔案的編碼
[root@localhost gethtml]# file a.sql
a.sql: UTF-8 Unicode ...
[root@localhost gethtml]# iconv -f utf-8 -t gbk a.sql > a2.sql
[root@localhost gethtml]# file a2.sql
a2.sql: Non-ISO extended-ASCII English text 這時已經是gbk的編碼了
3)匯入
查看資料庫服務和用戶端字元集
mysql> status;
Server characterset: gbk
Db characterset: gbk
Client characterset: latin1
Conn. characterset: latin1
mysql> set names 'gbk'; //這樣
mysql> status;
Server characterset: gbk
Db characterset: gbk
Client characterset: gbk
Conn. characterset: gbk
這時才能導資料
mysql> source a.sql;
----------------------------------------------------------------------------------
單獨設定某個資料庫:
alter database testdb character set utf8;
查看mysql支援的編碼:
show character set;
查看系統的字元集和排序方式的設定可以通過下面的兩條命令:
mysql> SHOW VARIABLES LIKE ''character_set_%'';
LINUX 如下:
1)匯出資料
[root@www.cnscn.org ~]$ mysqldump -u root -p dbname --default-character-set=gbk > base_user.sql;
2)查看匯出的sql檔案的編碼
[root@www.cnscn.org ~]$ file base_user.sql
base_user.sql: UTF-8 Unicode text, with very long lines
3)轉成要用的編碼
[root@www.cnscn.org ~]$ iconv -f utf-8 -t gbk base_user.sql >base_user_gbk.sql
4)串連資料庫並查看當前庫的編碼
[root@www.cnscn.org ~]$ mysql -uroot
mysql> use testdb;
mysql> status;
Server characterset: latin1
Db characterset: gbk
Client characterset: latin1
Conn. characterset: latin1
5)設定成需要的編碼
mysql>set names 'gbk';
6)查看現在的編碼
mysql> status;
Server characterset: latin1
Db characterset: gbk
Client characterset: gbk
Conn. characterset: gbk
7)匯入我們轉換成gbk後的檔案
mysql> source base_user_gbk.sql;