Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[经验] 完全修改mysql字符集

[复制链接]
myeconomy 发表于 2012-2-25 10:08:02 | 显示全部楼层 |阅读模式
完全修改字符集
当数据库中已有数据,想修改数据集,不能通过简单的修改字符集完成,需要先将原数据导出,经过适当调整后重新导入才可完成。
通过七步完成字符集的完全修改(假设原字符集是latin1,想修改成GBK)。
1、导出表结构:
mysqldump -uroot -p –default-character-set=GBK -d databasename>createdb.sql
说明:
–default-character-set=GBK 表示设置以什么字符集连接;
-d 表示只导出表结构,不导出数据。
2、手工修改createdb.sql中表结构定义中的字符集(latin1)为新的字符集(GBK);
3、确保数据库中的数据不再更新,导出所有的数据:
mysqldump -uroot -p –quick –no-create-info –extended-insert –default-character-set=latin1 databasename>data.sql
说明:
–quick 该选项用于转储大的表,它强制mysqldump从服务器一次一行地检索表中的行而不是检索所有行,并在输出前将它缓存到内存中;
–extended-insert 使用包括几个values的多行insert语法;
–no-create-info 不要create table语句;
–default-character-set=latin1 表示按照原有的字符集导出所有的数据。
4、打开data.sql,将set names latin1修改成set names GBK;
5、使用新的字符集创建数据库:
create database databasename default charset GBK;
6、创建表:
mysql -uroot -p databasename < createdb.sql
7、导入数据:
mysql -uroot -p databasename < data.sql
xinzhangjun 发表于 2012-2-25 23:24:59 | 显示全部楼层
路过,看看
回复

使用道具 举报

好记吧 发表于 2012-2-26 15:33:04 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

我心易用 发表于 2012-2-27 20:24:22 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-16 23:52 , Processed in 0.035026 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表