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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

关于MySQL4.1+版本升级时候的数据问题。

[复制链接]
deepseath 发表于 2005-10-13 19:52:49 | 显示全部楼层 |阅读模式
MySQL4.1+版本的论坛数据升级后可能会出现乱码(如果以前的数据为非GBK、BIG5、UTF-8字符外)。

以下操作涉及到拥有主机权限。

假设当前操作的数据库名为:database

如果可以对其降级就进行降级处理:
  1.导出4.0格式的SQL备份文件,可以使用类似此命令
  1. mysqldump -uroot -p --compatible=mysql40 --skip-opt --default-character-set=latin1 --set-charset=gbk database > xxx.sql
复制代码
请将以上的latin1对应更换为此数据库表内的对应字符集,一般来说,绝大多数人都使用此字符集,不过最好建议使用phpmyadmin查看一下。这样就导出了4.0结构的数据备份。

  2.卸载MySQL4.1,然后安装mysql4.0,将上面导出的文件导入到数据库中即可。


如果客户一定选择使用mysql4.1版本:
  1.导出4.0格式的SQL备份文件,可以使用类似此命令
  1. mysqldump -uroot -p --compatible=mysql40 --skip-opt --default-character-set=latin1 --set-charset=gbk database > xxx.sql
复制代码
请将以上的latin1对应更换为此数据库表内的对应字符集,一般来说,绝大多数人都使用此字符集,不过最好建议使用phpmyadmin查看一下。这样就导出了4.0结构的数据备份。

  2.使用下面语句新建一个GBK字符集的数据库(mmmm):
  1. CREATE DATABASE `mmmm` DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci
复制代码


  3.将上面导出的4.0结构的备份数据导入到刚才新建的mmmm数据库中。
这样所有的表文件数据都是GBK的了。以后涉及到升级也不会出现乱码的问题了。

就实际而言有很多方法进行,不过个人认为这样操作比较安全一些,不会到老数据有什么损害,不能升级就拉倒,哈哈

当然,也并不是所有人都是GBK,其他字符集(Big5、UTF-8)对应设置即可。
穆亦风 发表于 2005-10-14 09:21:49 | 显示全部楼层
收到,这个相当的usefull
回复

使用道具 举报

conan 发表于 2006-4-29 13:56:26 | 显示全部楼层
简单实用哦
回复

使用道具 举报

puyang 发表于 2006-8-4 18:00:41 | 显示全部楼层
这个很有用阿

一定要收藏
回复

使用道具 举报

軒動我心 发表于 2006-8-4 18:02:28 | 显示全部楼层
简单实用哦
回复

使用道具 举报

飞扬の青春 发表于 2006-8-28 13:34:16 | 显示全部楼层
不知道改在哪里执行这个语句啊
回复

使用道具 举报

veff 发表于 2007-1-22 19:03:30 | 显示全部楼层
晕哦。收藏夹已经满了。
回复

使用道具 举报

pc77maikongjian 发表于 2007-5-12 19:27:51 | 显示全部楼层
实用的文章,要看看:)
回复

使用道具 举报

sdwrc 发表于 2008-4-24 11:25:55 | 显示全部楼层
真及时啊




中国站长论坛:www.hotwzw.cn(全国站长扎堆的地方!)
回复

使用道具 举报

club123456 发表于 2008-6-18 18:30:35 | 显示全部楼层
谢谢楼主,辛苦了.
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-24 10:46 , Processed in 0.036550 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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