当前位置: 首页 > 图文教程 > 数据库 > MYSQL > mysql3升级到mysql5解决乱码心得

MYSQL
MySQL 实用命令
Mysql 默认字符集设置方法(免安装版)
MySQL 数据库对服务器端光标的限制
MySQL UPDATE更新语句精解
Table ‘xxx’ is marked as crashed and should be repaired 错误解决方法参考
mysql 读写分离(基础篇)
mysql 读写分离(实战篇)
processlist命令 查看mysql 线程
MySQL 数据类型 大全
MySQL 密码设置
MYSQL代码 定期备份Mysql数据库
汇总整理MYSQL相关操作命令
MySQL 数据库两台主机同步实战(linux)
MSSQL 添加字段说明
MySQL 查询某个字段不重复的所有记录
mysql 设置默认的时间值
mysqlreport显示Com_中change_db占用比例高的问题的解决方法
解决mysql不能插入中文Incorrect string value
mysql从执行.sql文件时处理\n换行的问题
mysql 主从服务器的简单配置

MYSQL 中的 mysql3升级到mysql5解决乱码心得


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

我的原数据库是3.23版本的.前几天因为一个论坛转移.必须用5.1的.于是就是升级了数据库.论坛是正常的.可以是原来的一个老库因为是3.23下面的.gb2312的.不管怎么样导入到新库都是乱码.后来查找了各方面资料.借鉴了discuz的一个帖子.终于升级成功.现把心得总结出来。

环境:

1.老库是mysql 3.23,新库是mysql-5.1.33-win32.msi .数据库名是 www.cxinbao.com

2.我本机是xp sp2

首先在本地安装3.23数据库.把服务器上的数据库在data目录下直接打包到本地.复制到本地数据库所在data目录下.同版本的.或者.4.1以下的版本直接拷贝目录即可.4.1以下的要转移到4.1及以上版本.则不能直接拷贝.会涉及到字符集问题.只能和mysqldump先导出.再导入.

1.安装完3.23.然后cmd进入数据库所在bin目录.然后运行 导出数据库为sql文件

mysqldump -uroot -p --default-character-set=gbk www.cxinbao.com >cxinbao.sql

2.然后原库下的表删除掉.再运行.把刚才导出的sql导进库里.

mysql -uroot -p --default-character-set=latin1 -f www.cxinbao.com <cxinbao.sql

3.再把刚才导入的数据库.再导出为sql,

mysqldump -uroot -p --default-character-set=latin1 www.cxinbao.com >cxinbao.sql

4.在服务里把3.23的mysql服务器停止掉.然后安装mysql5.1数据库.,编码用utf-8,把mysql3.23数据库bin目录下的cxinbao.sql拷贝到mysql5.1数据库bin目录下.备用,然后用cmd转到mysql5所在的bin目录下.运行

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

这样cxinbaonew数据库就是你转移成功的数据库了.这个库要事先建好.