小智 95
要使用 master-master 设置完全禁用复制,您应该在每个从站上执行以下操作:
STOP SLAVE;RESET SLAVE;(RESET SLAVE ALL;用于 MySQL 5.5.16 及更高版本)小智 20
我知道这是一个老问题,但我发现我还必须重置从变量。如果您像建议的那样使用“blah”,服务器将尝试启动以查找服务器“blah”。
更改
MASTER为MASTER_HOST='',MASTER_USER='',MASTER_PASSWORD='';
可以验证机器不再是slave
SHOW SLAVE STATUS \G;
Run Code Online (Sandbox Code Playgroud)
小智 13
在从服务器上:
无需在 master 或 slave 上重新启动 MySQL。完整的文档可以在MySQL 参考手册的第 19 节中找到。
我建议保留其余的复制设置,以防您决定恢复到以前的配置。这样你只需要推送数据并重置从站位置(不要忘记删除跳过从站开始),而不是重新创建整个布的设置。
无论MySQL版本如何,最完整的方法如下
cd /var/lib/mysql
service mysql stop
rm -f master.info relay-*`
service mysql start
Run Code Online (Sandbox Code Playgroud)
这必须适用于最新版本,因为复制设置仍然存在于 MySQL 5.5 的 RAM 中。
我刚刚回答了一个关于这个主题的类似问题:如何将 MySQL 以前的从站更改为主站并删除从站状态信息?
小智 6
仅编辑 my.cnf 文件不足以禁用复制。事实上,它不再是推荐的启用方式。将条目放入 my.cnf 文件仅对下次启动有效,其行为就像您已将命令输入到 mysql 客户端一样:
mysql> 将 master 更改为 master_host='blah', master_user='blah', master_password='blah'...;
这两种方法都会在数据目录中创建一个名为master.info的文件。只要此文件存在,服务器就会尝试使用那里的详细信息进行复制。“重置从机”;第一个答案中列出的命令将删除master.info文件(以及relay-log.info文件)。正如第一个答案中提到的,您还需要确保 my.cnf 文件中没有该配置信息,否则在下次重新启动服务器时,将重新启用日志记录。
小智 6
我将此添加到 Harrison Fisk 的回答中:
如果您使用过,RESET SLAVE ALL;则无需重新启动。
此外,您可能希望启用已在从站上禁用的事件:
select * from information_schema.events where status = 'SLAVESIDE_DISABLED';
Run Code Online (Sandbox Code Playgroud)
对于他们每个人:
alter event <event_name> enable;
Run Code Online (Sandbox Code Playgroud)
小智 5
一个答案在这里:
http://www.oops.net.br/~bac/bam/canopy_repl_setup.htm
*编辑 MySQL 配置文件:/etc/my.cnf 并删除标题为 [mysqld] 部分的以下 7 行:
port=3306
log-bin
server-id=1
master-host=10.0.0.2
master-user=server_1_repl
master-password=server_1_passwd
master-port=3306*
Run Code Online (Sandbox Code Playgroud)
重启 MySQL。
| 归档时间: |
|
| 查看次数: |
156933 次 |
| 最近记录: |