我想将本地 MySQL 服务器上发生的每个操作(插入、更新、删除)的数据更新到远程 MySQL 服务器。我该怎么做?
问问题
5218 次
3 回答
4
启用数据库复制。出于性能原因频繁刷新不是一个好主意,但也许这是一个可以接受的权衡?
于 2010-02-10T06:31:38.927 回答
2
你不能使用触发器吗?
22.5.5: 触发器是否可以更新远程服务器上的表?是的。可以使用 FEDERATED 存储引擎更新远程服务器上的表。
来自:http ://dev.mysql.com/doc/refman/5.0/en/faqs-triggers.html#qandaitem-22-5-1-5
我不建议这样做,因为您所做的每一个小改动都会消耗带宽。您可以改为尝试预定的作业。
于 2010-02-10T06:19:35.233 回答
0
这是一个使用 git 服务器的简单而安全的解决方案,如果两个 db_tables 没有太大变化并且不必始终相同,则可以正常工作。
- 在您的 git 服务器(GitHub、Bitbucket 等)上创建存储库
- 将存储库克隆到您的两台服务器
在要从中导出的服务器上运行这些终端命令
$ cd /my/repository/path
$ mysqldump -h localhost -u User_Id -pPassword DB_name Table_Name > Table_Name.sql
$ git add .
$ git commit -m "Table Update"
$ git push https://git_server/repository/name
db 表现在位于 git 服务器上。
在您要导入的服务器上
$ cd /my/repository/path
$ git pull https://git_server/repository/name
$ mysql -h localhost -u User_Id -pPassword DB_name < Table_Name.sql
于 2015-10-02T23:55:33.953 回答