統一字符集保證不亂碼:建議中英文環境選擇utf8
1.linux系統語言
/etc/sysconfig/i18n
LANG="zh_CN.utf8"
2.mysql客戶端
臨時:
set names utf8;
永久:
配置文件my.cnf
[client]
default-charater-set=utf8
3.mysql服務端
[mysqld]
character-set-server=utf8
4.mysql建庫建表語句
指定字符集建庫
create database oldboy_utf8 default character set uft8 collate utf8_general_ci;
指定字符集建表
create table student (
id int(4) not null auto_increment,
name char(20) not null,
primary key(id)
)engine=inonodb auto_increment=10 default charset=utf8
5.開發程序的字符集
模擬將latin1字符集的數據庫修改成GBK字符集的實際過程
1.導出表結構
mysqldump -uroot -p --default-character-set=latin1 -d dbname >alltatale.sql
--default-character-set=latin1 以latin1連接 -d只導表結構
2.編輯alltable.sql將latin1改成gbk
sed替換
3.確保數據庫不在更新,導出所有數據
mysqldump -uroot -p --quick --no-create-info --extended-insert --default-character-set=latin1 dbname >alldata.sql
4.打開alldata.sql將set names latin1修改成set names gbk;(或者修改系統的服務端和客戶端)
5.建庫
create database dbname default charset bgk;
6.創建表,執行alltable.sql
mysql -uroot -p dbname<alltable.sql
7.導入數據
mysql -uroot -dbname < alldata.sql