WEB开发网
开发学院数据库MySQL Mysql 数据库字符集转换及版本升/降级教程 阅读

Mysql 数据库字符集转换及版本升/降级教程

 2007-05-29 10:58:43 来源:WEB开发网   
核心提示: 如果我们只想使用gbk字符集存储和获取数据,我们在编译mysql 4.1和 5.0的时候,需要注意在my.ini或者my.cnf中添加两处参数CODE:[mysqld]default-character-set=utf8CODE:#settings for clients (connect

如果我们只想使用gbk字符集存储和获取数据,

我们在编译mysql 4.1和 5.0的时候,需要注意在my.ini或者my.cnf中添加两处参数

CODE:

[mysqld]
default-character-set=utf8
CODE:#settings for clients (connection, results, clients)
[mysql]
default-character-set=utf8

下面我们来说主题,如何转换数据库字符集

两种方法,

QUOTE:

第一种----更改存储字符集

主要的思想就是把数据库的字符集有latin1改为gbk,big5,或者utf8; 以下操作必须拥有主机权限。假设当前操作的数据库名为:database

导出

首先需要把数据导为mysql4.0的格式,具体的命令如下:

mysqldump -uroot -p --default-character-set=latin1 --set-charset=gbk --skip-opt databse > d4.sql

mysqldump的参数参照:

MySql数据库备份mysqldump参数选项

--default-characte-set 以前数据库的字符集,这个一般情况下都是latin1的,

--set-charset 导出的数据的字符集,这个可以设置为gbk,utf8,或者big5

导入

首先使用下面语句新建一个GBK字符集的数据库(test)

CREATE DATABASE `d4` DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;

然后把刚才导出的数据导入到当前的数据库中就ok了。

mysql -uroot -p --default-character-set=gbk -f d4<d4.sql

通过以上的导出和导入就把数据库的字符集改为正确的存储方式了。

其中d4为新建库的名称,d4.sql为导出文件的名字

但是这种方法,发现数据库数据存储量无端变大30%,真是郁闷

QUOTE:

另外一种其实原理相同,但是需要手动操作,一般用于第一种方法失败后的选择

上一页  1 2 3 4 5  下一页

Tags:Mysql 数据库 字符集

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接