有没有人知道将数据库从一台计算机复制到一个文件,然后将其导入另一台计算机的简单方法?
答案 0 :(得分:35)
以下是一些选项:
<强> mysqldump的强>
最简单,保证工作的方法是使用mysqldump
。请参阅此处的实用程序的手册页:
http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html
基本上,它会转储重建数据库内容所需的SQL脚本,包括创建表,触发器和其他对象以及插入数据(这些都是可配置的,所以如果你已经在其他地方设置了架构,你可以只转储数据,例如)。
复制单个MyISAM表格文件
如果你有大量数据和,你正在使用MyISAM存储引擎来复制你想要复制的表,你可以关闭mysqld并复制.frm,.myd,和.myi文件从一个数据库文件夹到另一个(甚至在另一个系统上)。这对InnoDB表不起作用,可能适用于其他存储引擎,也可能不适用(我不太熟悉)。
<强> mysqlhotcopy的强>
如果需要在数据库服务器运行时转储数据库的内容,可以使用mysqlhotcopy
(请注意,这仅适用于MyISAM和存档表):
http://dev.mysql.com/doc/refman/5.0/en/mysqlhotcopy.html
复制整个数据文件夹
如果要复制整个数据库安装,那么,所有数据库和每个数据库的内容,你可以关闭mysqld,压缩整个MySQL数据目录,然后复制它到新服务器的数据目录。
这是将InnoDB文件从一个实例复制到另一个实例的唯一方法(我知道)。如果您在运行相同OS系列的服务器和相同版本的MySQL之间移动,这将正常工作;它可能用于在操作系统和/或MySQL版本之间移动;在我的头顶,我不知道。
答案 1 :(得分:0)
你可以很好地使用SQL yog - 网络瑜伽的产品..它使用上面提到的类似技术但是给你一个很好的GUI让你知道你在做什么。您可以从网站
获取相同或试用版的社区项目http://www.webyog.com/en/downloads.php#sqlyog
可以选择创建文件备份并将文件还原到新服务器。将数据库从一个服务器导出到另一个服务器的更好选择是......
干杯,
RDJ