论坛首页 > 数据库知识讲堂 > Mysql导出导入说明  
作者
本主题已被浏览4217次 回复0次
chinainfoa



头衔:守护天王
来自:新疆
积分:941
注册:2006年4月
发表于: 2009/6/16 13:47:09  查看作者档案  给作者发送电子邮件  访问作者主页  查看IP地址  QQ号码:183675925  MSN号码:fxm@cxx.cn


必要知识:
mysql编码:
在mysql的安装目录,如:
E:\Program Files\MySQL\MySQL Server 5.0\my.ini
可以找到mysql库的编码,大部分情况下,可以设置为uft-8:
default-character-set=utf8
或gbk:
default-character-set=gbk
编码不对,就会造成无法导入.修改编码后要重启数据库才会生效.

1.条件:在同一台服务器,
mysql数据库可以用平台的导出导入功能正常备份及还原.

2.条件:不同服务器上,在my.ini编码一致的情况下,
mysql数据库可以用平台的导出导入功能正常备份及还原.

2.条件:不同服务器上,在my.ini编码不一致的情况下,
必须修改my.ini成为一致的编码,mysql数据库才可以用平台的导出导入功能正常备份及还原.

3.对于用phpmyadmin或其他工具导入的文件,您需要再次加工后,才能用平台的导入功能:
以phpmyadmin为例,导出后,将生成的SQL语句另存为一个.sql文件,然后,用记事本修改它:

(1)找到CREATE DATABASE开头的这一行如:

CREATE DATABASE `数据库名` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;

在前面加上--符号,取消这行的运行权(原因是导入时是用普通用户角度导入,不允许建立数据库)

这样,才有可能用平台的导入功能导入.

(2)然后,您可以看看这个库的编码是否和您服务器上的一致

如果编码不一致,那么,
<1>要么用phpmymyadmin重新备份成编码一致的.sql文件才能导入.(在phpmyadmin登陆的首页可以选编码)
<2>要么是修改my.ini中的编码,并重启Mysql才能导入(重启Mysql可以在服务器上,管理工具,服务管理中重启),这种方式成功机会高一些,建议这样操作.


-----注意,如果由于编码不对,造成导入失败,您需要点清空数据库才能进行下次导入(2007-6-12后的主控版本在数据库面板中有清空的功能)------


以discuz论坛为倒
如果当时安装的是GBK版本的论坛,那么,
用phpmyadmin导出后,编码就是GBK的,
要想导入另一台服务器,必须要将my.ini中设置为:default-character-set=gbk并重启mysql后才能在平台用导入.

补充:
使用mysql做数据库还原的时候,或者使用星外后台还原备份时发现还原不完整时,由于有些数据很大,会出现这样的错误:The MySQL Server returned this Error:MySQL Error Nr.2006-MySQL server has gone away。一个150mb的备份还原的时候就出现了这错误。解决的方法就是找到mysql安装目录,找到my.ini文件,在文件的最后添加:max_allowed_packet = 100M(也可以设置自己需要的大小)。 max_allowed_packet 参数的作用是,用来控制其通信缓冲区的最大长度。



顶尖服务器先驱
服务器租用6000起/托管2500起/空间租用一M/一元起/

公司地址:郑州市农业路东16号省汇中心A座2002室 
直销服务热线:0371-65750497 65707807 
渠道专线:0371-65707809
业务传真:0371-65707807 
信息反馈:fxm@cxx.cn
7*24小时服务热线 0371-65111123
OICQ在线支持:595701041 328173490
业务网址:http://www.cncnc.com.cn


26

第1篇


共1页 1
在线统计
 游客 游客 游客 游客 游客 游客 游客
当前共有7名用户在线 图例: 总版主版主用户游客