gpt4 book ai didi

mysql - mysql在同一台服务器上的数据库同步

转载 作者:行者123 更新时间:2023-11-29 07:05:10 25 4
gpt4 key购买 nike

我需要同步放置在同一个 mysql 服务器上的两个数据库。这个同步不是用来复制的,而是用来统计的,二库的信息不一定要“新鲜”。

目前,我每晚都在做一个简单的 mysqldump,这可能是一个解决方案,但好吧,它很脏。

所以我想到了使用mysql复制,遇到了2个主要问题:- 如果两个数据库在同一台服务器上,我不知道如何让它工作。- 我不知道如何在精确的时间每天只执行一次复制。

我在 windows 上使用 mysql 5.1.49(好吧,只是为了我的测试,生产服务器在 linux 上),这是我在 my.ini 文件中尝试的

# Replication
server-id = 1

report-host = master-is-slave-host
log-bin = "d:/localhost-binlog"
log-error = "d:/localhost-errorlog"
relay-log = "d:/localhost-relaylog"

binlog-do-db = dev_nbe_msg_metier
replicate-rewrite-db = base1->base2

replicate-same-server-id = 1

日志工作正常,不幸的是我只能得到这些,我尝试了几个选项,但无法使其工作。

如果有人有解决方案或更好的同步方法,我会很高兴听到。

最佳答案

MySQL 中开箱即用的复制假定所涉及的每个服务器都是一个服务器 ;)

这意味着您可以仅使用两个 MySQL 实例在同一台物理机器上的数据库之间进行复制,每个实例都有自己的服务器 ID。

幸运的是,您几乎可以随意暂停/重新启动复制,因此每晚在从机上运行:

start slave;

...让它运行一段时间,然后当再次开始生产工作时,运行:

stop slave;

如果你觉得聪明,你可以使用 start slaveUNTIL 子句(参见 here )来避免必须停止从属,并拥有它一旦你 catch 了,就会自动发生。

还有其他解决方案,但考虑到 OOTB 功能,这可能是可行的方法。

关于mysql - mysql在同一台服务器上的数据库同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7766032/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com