切换主机想要传输我的数据库

时间:2011-08-23 21:34:12

标签: mysql

我正在考虑转换到新的托管服务提供商,我想将我的生产网站的数据库转移到新的托管服务提供商。我正在使用mysql。我需要采取哪些步骤来转移我的数据库?

感谢任何帮助。

谢谢,

布赖恩

2 个答案:

答案 0 :(得分:1)

假设一个相对简单的应用程序(PHP,类似的东西),一个应用程序服务器,一个数据库服务器,然后简单地说:

在新主机上,在旧主机数据库上使用的数据库上创建必要的帐户。

复制应用代码。

在旧主机上“锁定”您的应用,这样就不会发生任何数据更改(如果可行的话)。

http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html是你的朋友。转储架构和数据,并将其捕获到文件中。这是我用来转储具有示例登录名的数据库exampledb的命令:

mysqldump --add-drop-table -u example -p exampledb > output.sql

--add-drop-table可以让您在以后需要时更轻松地重新运行脚本。但它会创建一个会破坏您的数据库的脚本,因此请小心运行它。)

现在将output.sql文件复制(可能使用scp)到新主机。

在新主机上,运行mysql以使用旧主机中的架构和数据构建数据库。我使用像这样的命令,假设用户为“example”,数据库名称为“exampledb”:

mysql -u example -p exampledb < output.sql

(小心只在新主机上运行它。它会消除你的数据库。)

好消息是,你有一台新机器的空白。你可以在不破坏任何东西的情况下继续尝试不同的东西。

在新主机上开启应用。测试。如果已经有一段时间了,您可能需要进行更改以使您的代码更新为该语言版本。 (我的确是这样做的。但也许你最好还是保持代码最新。)

关闭旧主机上的应用程序。

将DNS /路由器/指向新主机。

我错过了什么? (刚刚通过这个将我愚蠢的网站移到新机器上。)

答案 1 :(得分:0)

这很简单,特别是对于一个数据库而言?

mysqldump后跟mysqlimport

MySQL Dump

生成.sql文件就是您所需要的,因为它将包含所有表信息,例如CREATE INDEXES,当您运行所有插入时,将添加索引。

如果您在使用命令行时遇到困难,我建议您使用Navicat Lite吗?它是免费的,是我在市场上见过的最好的GUI。

Navicat Lite