将MySQL主服务器更改为从服务器
我有一个MySQL主/从配置将MySQL主服务器更改为从服务器,mysql,database,mariadb,master-slave,slave,Mysql,Database,Mariadb,Master Slave,Slave,我有一个MySQL主/从配置 -------- -------- | master | -> | slave1 | -------- -------- 我想杀死我当前的主人,将slave1转换为新主人,并让另一个奴隶指向slave1 -------- ------------ -------- | master | | new master | -> | slave2 | ------
-------- --------
| master | -> | slave1 |
-------- --------
我想杀死我当前的主人,将slave1转换为新主人,并让另一个奴隶指向slave1
-------- ------------ --------
| master | | new master | -> | slave2 |
-------- ------------ --------
KILLED
在没有数据库停机的情况下,最好的方法是什么?
我使用的是MariaDB 10.0.17,这相当简单,因为MySQL服务器可以同时作为主服务器和从服务器 我认为这一过程会有如下结果:
log\u slave\u updates
(请参阅)。此步骤很重要,否则slave2在转换期间将不会从当前主机复制数据。还没有真正开始复制希望这是有道理的 这比你想象的要容易。您可以构建整个复制链
只需设置从slave1到slave2的复制,杀死当前主服务器,就完成了。在从服务器上运行下面的命令
只要Slave1不用于读取或任何其他进程,我看不出第1点有任何问题。好吧,如果在此期间主服务器崩溃,您会非常紧张。@fancyPants您需要为slave2获取一致的数据快照。一个简单的方法是如上所述。但是,如果OP有更严格的要求,那么他可以改为进行热拷贝(如第3点所述)。OPs的要求是“无停机时间”,而不是“完全冗余”。我所做的是按照上的说明(以slave1为主)并启用
log\u slave\u updates=on
。是的,您必须打开它。