-3

我想做的是连接到运行网站的数据库。然后将该数据库的内容复制到不同服务器上的另一个数据库。这可以做到吗?

4

2 回答 2

2

这是可以做到的,并且有不同的方法可以做到。我将列出 3 种不同的方式

  1. 运行mysqldump -h<source host> | mysql -h<target host>。您必须阅读 mysqldump 选项来决定需要添加哪些选项,并且您可能还需要为用户、密码和数据库设置选项。
  2. 复制 mysql 使用的所有文件并将它们放在新主机上。只要新服务器的配置方式相同,它就可以工作
  3. 使用 Perconas xtrabackup。如果数据库很大,这可能是最好的选择。在进行备份时,数据库仍然可以运行。此选项将创建数据库的精确副本,可能需要也可能不需要。

通常,如果数据库很小,选项 1 是最简单的。

于 2013-01-10T21:30:08.997 回答
1

是的,但这取决于数据库的设置方式。

出于安全原因,大多数在 Web 服务器后面运行的数据库将无法从外部访问。假设您可以访问服务器,最好的选择是登录到 shell 并转储数据库。MySQL 有工具mysqldump可以帮助解决这个问题。紧要关头:

mysqldump -u username -p schemaname > yourdatabasedump.sql

或者,您可以安装PhpMyAdmin在您的服务器上(假设启用了 PHP)并从那里转储数据库。

进口则相反。在另一台服务器上获取 shell 访问权限并执行以下操作...首先,创建您的架构:

mysql -u someuser -p

 > CREATE DATABASE schemaname;
 > exit

然后导入。

mysql -u someuser -p schemaname < yourdatabasedump.sql
于 2013-01-10T21:26:43.833 回答