【问题标题】:Cloning database tables across to another server将数据库表克隆到另一台服务器
【发布时间】:2018-12-17 22:25:07
【问题描述】:

新海报,长期浏览器。我在这里环顾四周,但似乎无法找到我的查询的确切答案。

我有一个在 LAMP 堆栈上运行的 MySQL 数据库,其中包含两个表,一个表包含产品列表,另一个表包含这些产品的链接报价列表。每天使用导入脚本刷新报价,并且产品是持久的,但新产品可能偶尔会通过相同的导入脚本添加。

Products 表大约有 1,000 条记录。报价表可以超过 150 万个,包含大约 15-20 列数据。

我在另一个 LAMP 堆栈上还有另一个 MySQL 数据库,表是一样的。

服务器 #1 上的导入脚本在早上 7 点运行,因为此时有新的报价可用。

我想要做的是将 Offers 表克隆到服务器#2。我的开发人员使用的当前方法需要 3-4 小时,但这不起作用,因为我需要在上午 9 点之前更新交易。

我看过多篇关于备份、导出和导入数据的帖子。但不确定这是否可行,因为它们位于不同的服务器上。

谁有一些提示,你可以指点吗?

编辑:添加 - 原始导入最多需要一个小时。通常在早上 8 点之前完成。

【问题讨论】:

  • 服务器 #1 上的导入脚本在早上 7 点运行,因为此时有新的报价可用;那么脚本需要多长时间才能完成?更新报价表后,您可以在服务器 2 中转储此表并在服务器 2 上导入。

标签: php mysql import export lamp


【解决方案1】:

选项 1:

使用 mysqldump 转储表并将转储的文件导入其他服务器:

mysqldump - root -p db1 tabletoexport > table.sql

在其他服务器上导入:

mysql -u root -p db2 < table.sql

选项 2:

为了将来的目的,您可以设置一个主从复制。

https://www.digitalocean.com/community/tutorials/how-to-set-up-master-slave-replication-in-mysql

【讨论】:

  • 太好了,谢谢。可以将这些选项中的任何一个设置为每天早上 9 点自动运行的 Cron 吗?我希望这个过程是自动化的,所以我不必登录并手动运行它。
猜你喜欢
  • 2014-05-20
  • 1970-01-01
  • 2016-11-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-04
  • 2011-05-23
相关资源
最近更新 更多