一、主MySQL
1. 兩臺機器
i. A:192.168.1.2(主數據庫)
ii. B:192.168.1.3(從數據庫)
2. 打開A的my.cnf 文件:vi /etc/my.cnf,修改配置如下
i. # binary logging is required for replication
server-id = 1
ii. # binary logging is required for replication
log-bin=mysql-bin
iii. # binary logging is required for replication
binlog-do-db = demo //要同步的數據庫,有多個分多行寫
binlog-ignore-db = mysql //忽略的數據庫
3. 重啓服務,進入主庫用show master status/G查看服務器狀態
4. 給B增加一個備份用戶bk
Grant file,replication slave,replication client,super on *.* to bk@’192.168.1.3’ identified by ‘***’,表示這個bk帳號只能由從備份機192.168.1.3訪問只能用來進行備份操作
5. 爲確保從機可以連接主機修改iptables:sudo vi /etc/sysconfig/iptables,添加3306,如下:-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
6. 重啓防火牆 sudo /sbin/service iptables restart
二、從MySQL
1. 打開B的my.cnf 文件:vi /etc/my.cnf,修改配置如下
2. server-id=2
master-host=192.168.1.2
master-user=bk
master-password=backuppassword
master-port=3306
master-connect-retry=60
replicate-do-db=要同步的數據庫
#replicate-ignore-db=不同步的數據庫
3. restart mysql server sudo /sbin/server mysqld restart
4. /usr/local/mysql/bin/mysql –uroot –p
5. show slave status/G;如果出現下面內容則說明配置成功
i. Slave_IO_Running: Yes
Slave_SQL_Running: Yes
6. 相關命令
i. Slave start/stop
ii. Master start/stop