如何将数据从本地MySQL服务器更新到远程MySQL服务器

发布于 2024-08-21 17:43:44 字数 66 浏览 5 评论 0原文

我想将本地 MySQL 服务器上发生的每个操作(插入、更新、删除)的数据更新到远程 MySQL 服务器。我该怎么做呢?

I would like to update data for every action (insert, update, delete) that happens on a localhost MySQL server to a remote MySQL server. How would I do that?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

初心未许 2024-08-28 17:43:44

启用数据库复制。出于性能原因,频繁刷新并不是一个好主意,但也许这是一个可以接受的权衡?

Enable database replication. It's not a great idea to flush frequently for performance reasons, but maybe it's an acceptable tradeoff?

夏花。依旧 2024-08-28 17:43:44

你不能使用触发器吗?

22.5.5:触发器是否可以更新远程服务器上的表?
是的。远程服务器上的表可以
使用 FEDERATED 存储进行更新
引擎。

来自:http: //dev.mysql.com/doc/refman/5.0/en/faqs-triggers.html#qandaitem-22-5-1-5

我不会推荐这样做,因为你会消耗每个小带宽改变你所做的。您可以尝试安排作业。

Can't you use Triggers?

22.5.5: Is it possible for a trigger to update tables on a remote server?
Yes. A table on a remote server could
be updated using the FEDERATED storage
engine.

From : http://dev.mysql.com/doc/refman/5.0/en/faqs-triggers.html#qandaitem-22-5-1-5

I wouldn't recommend this because you will be consuming bandwidth for every small change you do. You can try a scheduled job instead.

隱形的亼 2024-08-28 17:43:44

这是一个使用 git 服务器的简单而安全的解决方案,如果两个 db_table 变化不大并且不必始终相同,则可以正常工作。

  1. 在 git 服务器(GitHub、Bitbucket 等)上创建存储库
  2. 将存储库克隆到两台服务器

在要从中导出的服务器上运行这些终端命令

$ 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

Here is a simple and safe solution using a git server and works fine if the two db_tables don't change that much and don't have to be identical at all times.

  1. Create a repository on your git server (GitHub, Bitbucket, other)
  2. Clone the repository to both your servers

On the server you want to export from run those terminal commands

$ 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

The db table is now on the git server.

On the server you want to import to

$ cd /my/repository/path
$ git pull https://git_server/repository/name
$ mysql -h localhost -u User_Id -pPassword DB_name < Table_Name.sql
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文