当前位置: 首页 > 图文教程 > 数据库 > MYSQL > mysql4.0升级到mysql5(4.1),解决字符集问题

MYSQL
SQL Server数据库对上亿表的操作
MyISAM和InnoDB的异同
带你轻松的接触用于Mysql元数据的UTF8
校对确定 较为复杂的一些特殊情况
带你轻松接触Mysql校对效果的示例
快速的掌握MySQL支持的操作系统
教你快速掌握Mysql ENUM和SET约束
MaxDB和MySQL之间的特性差异
带你轻松接触Mysql事务和原子操作
怎样在ANSI模式下运行MySQL
怎样使MySQL在攻击者面前保持安全
mysql_data_seek函数详解
如何解决MYSQL不能自动启动的问题
MySQL5.1新特性 日志的增强
一个实例讲解MySQL查询优化
MySQL_常用查询的例子
学习使用数据库MySQL
管理控制:MYSQL数据库常用命令列表
让新装上的MYSQL数据库更加安全
初学者必读 MySQL数据库常见问题汇总

MYSQL 中的 mysql4.0升级到mysql5(4.1),解决字符集问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 190 ::
收藏到网摘: n/a

软件升级部分就不说了,光说数据库迁移。 1、从4.0中导出表 mysqldump –no-data -uroot -p database > struct.sql
2、导出数据 mysqldump –no-create-info=true –extended-insert=false -u root -p database > data.sql
3、用vi编辑struct.sql, 使用最末行命令
:%s/) TYPE=MyISAM;/) ENGINE=MyISAM DEFAULT CHARSET=gbk;/g
:%s/) TYPE=HEAP.*$/) ENGINE=MEMORY DEFAULT CHARSET=gbk;/g
4、导入struct.sql,data.sql
mysql 4.0及之前的版本,都是只支持一种字符集latin1,从mysql 4.1起,支持众多的字符集,比如gbk,utf8(非utf-8)等。
gbk,utf8等多字节字符集的存储也发生了变化,比如latin1下,汉字字长是2,在gbk或utf8下,汉字字长就是1。也就是说原来varchar(32)只能存16个汉字,现在能保存32个了。
网址:http://www.xiaojb.com/archives/it/mysqludate.shtml