当前位置:首页 >> 服务器

Mysql导出导入说明

必要知识: 
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后才能在平台用导入.