本文摘自PHP中文网,作者不言,侵删。
MySQL Master-Slave复制是在主服务器完成更改后立即设置从服务器进行更新。但是如果在从属服务器上进行了任何更改,它将不会更新Master。本篇文章将介绍在MySQL服务器之间设置Master-Master复制。在此设置中,如果在任一服务器上进行的任何更改将都在另一台服务器上更新。
设置细节:
1 2 3 |
|
步骤1:设置MySQL Master-1服务器
编辑MySQL配置文件并在[mysqld]部分下添加以下代码。
1 |
|
1 2 3 4 |
|
重启MySQL服务器以使更改生效。
1 |
|
在Master-1服务器上创建一个具有REPLICATION SLAVE权限的mysql帐户,复制客户端将连接到master。
1 2 |
|
所有表上都有block write语句,因此备份后不能进行任何更改。
1 2 |
|
使用以下命令检查当前二进制日志文件名(File)和当前偏移量(Position)值。
1 2 3 4 5 6 7 |
|
上面的输出显示当前的二进制文件使用的是mysql-bin.000003,偏移值为332。记下这些值,以便在下一步中在master-2服务器上使用。
备份数据库并将其复制到另一个mysql服务器。
1 2 |
|
完成备份后,从表中删除READ LOCK,以便进行更改。
1 |
|
步骤2:设置MySQL Master-2服务器
编辑mysql Master-2配置文件并在[mysqld]部分下添加以下值。
1 2 3 4 5 |
|
server-id始终为非零数值。这些值永远不会与其他主服务器或从服务器相似。
相关阅读 >>
更多相关阅读请进入《mysql》频道 >>
数据库系统概念 第6版
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。