当前位置:七道奇文章资讯数据防范MySQL防范
日期:2011-01-25 22:43:00  来源:本站整理

mysql 4.1 数据转换指南[MySQL防范]

赞助商链接



  本文“mysql 4.1 数据转换指南[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
    mysql 4.1增添了编码的支持,所以在转换旧数据的时刻略微麻烦一些,但只要注意以下几点,基本没问题的:

1、转换之前一定要先把原有数据dump出来,普通原有数据都是gb2312编码吧,dump号令以下:
mysqldump -u -p database –add-drop-table –extended-insert

–add-drop-table是为了导入的时刻省去建表环节,–extended-insert是为了避免在导入的时刻一个sql语句过大的情形,想想你的上千条记录写在一条sql语句中是多么的可怕.

这里假定原有数据库是gb2312编码,需求转换为utf8编码,别的编码之间的转换近似.

2、改正dump出来的sql文件,用Emeditor或iconv把文件的编码转换为utf-8,注意最好不要那个什么"Unicode Signature(BOM)",因为mysql.exe不认的.再把文件中的gbk_bin替换为utf8_general_ci,把gbk替换为 utf8,然后在文件最前面加上
set names utf8;

带上BOM,mysql不辨认的错误大体以下:
ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the ma
nual that corresponds to your MySQL server version for the right syntax to use n
ear ‘???
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */’ at line 1

3、重新建mysql库,然后导入备份的sql语句,导入号令以下:
mysql -u -p database < dumpdata.sql

4、假如是从前导出的文件,导入的时刻碰到错误:
Got a packet bigger than ‘max_allowed_packet’ bytes
or
ERROR 1153 (08S01) at line 616: Got a packet bigger than ‘max_allowed_packet’ by
tes

就需求改正mysql的最大答应包大小了,编辑my.ini,在[mysqld]部份(不在这部份没用)增添一句:
set-variable=max_allowed_packet=10485760

重启mysql服务便可以了,我这里设置的是大约10M.

到这里数据导入基本就完成了,接下来就是按照各个利用的差别来调整了,普通有的系统已经支持了,但还有的不支持,不过调整办法大约分以下几类:

1、在数据库衔接背面加上
mysql_connect(….
mysql_query("set names ‘utf8′");

这种情形最多,比方Brim什么的.

2、将语言文件或模板文件的编码设置为utf-8,注意是直接把文件编码转换了便可以,内容不用管,这样的有phpwind, mantis.利用工具可以是iconv,在这里可以下载.
iconv -f gb2312 -t utf-8 gb2312.html > utf-8.html

3、改正模板文件,设置HTML中的
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8″ />

原先是gb2312编码的系统大都需求改这个
  以上是“mysql 4.1 数据转换指南[MySQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • Windows 搭配 IIS7 PHP MySQL 环境
  • mysql Out of memory (Needed 16777224 bytes)的错误办理
  • mysql提醒[Warning] Invalid (old?) table or database name问题的办理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • MySQL Order By语法介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • mysql数据库插入速度和读取速度的调整记录
  • MySQL Order By索引优化办法
  • MySQL Order By用法分享
  • mysql #1062 –Duplicate entry ''1'' for key ''PRIMARY''
  • MySQL Order By Rand()效率解析
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .