MySQL 5.6主主同步
實戰環境介紹:
伺服器名 | IP | 系統 | MySQL |
odd.example.com | 192.168.1.115 | rhel-5.8 | 5.6.24 |
even.example.com | 192.168.1.116 | rhel-5.8 | 5.6.24 |
假設要同步的庫是db_rocky
㈠ 建立同步使用者
在ODD上
mysql> grant replication slave on *.* to 'water'@'192.168.1.116' identified by 'cdio2010';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
在EVEN上
mysql> grant replication slave on *.* to 'water'@'192.168.1.115' identified by 'cdio2010';
Query OK, 0 rows affected (0.11 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
㈡ 修改/etc/my.cnf配置檔案,為其新增以下內容:
在ODD上
[mysqld]
server-id=1
binlog-do-db=db_rocky #需要記錄進位制日誌的資料庫.
binlog-ignore-db=mysql #不需要記錄進位制日誌的資料庫.
replicate-do-db=db_rocky #需要進行同步的資料庫.
replicate-ignore-db=mysql,information_schema #不需要同步的資料庫.
注意:如果有多個資料庫可用逗號分隔,或者使用多個binlog-do-db、binlog-do-db、replicate-do-db、replicate-ignore-db選項
#同步引數:
#保證slave掛在任何一臺master上都會接收到另一個master的寫入資訊
log-slave-updates
sync_binlog=1
auto_increment_increment=2
auto_increment_offset=1
slave-skip-errors=all #過濾掉一些沒啥大問題的錯誤
在EVEN上
[mysqld]
server-id=2 #設定一個不同的id號
注意:在my.cnf裡面有個預設值1,把預設值改為其它的數字,而非新增一個server-id
binlog-do-db=db_rocky #需要記錄二進位制日誌的資料庫.
binlog-ignore-db=mysql #不需要記錄進位制日誌的資料庫.
#需要同步的資料庫
replicate-do-db=db_rocky #需要進行同步的資料庫.
replicate-ignore-db=mysql,information_schema #不需要同步的資料庫.
#如果有多個資料庫可用逗號分隔,或者使用多個binlog-do-db、binlog-do-db、replicate-do-db、replicate-ignore-db選項
#同步引數:
#保證slave掛在任何一臺master上都會接收到另一個master的寫入資訊
log-slave-updates
sync_binlog=1
auto_increment_increment=2
auto_increment_offset=2
slave-skip-errors=all #過濾掉一些沒啥大問題的錯誤
㈢ 分別重啟伺服器ODD、EVEN上的mysql服務
# server mysqld restart
㈣ 分別在伺服器ODD、EVEN上檢視做為主伺服器狀態
在ODD
mysql> flush tables with read lock; #防止進入新的資料
Query OK, 0 rows affected (0.00 sec)
mysql> show master status\G;
*************************** 1. row ***************************
File: mysql-bin.000007
Position: 438
Binlog_Do_DB: db_rocky
Binlog_Ignore_DB: mysql
1 row in set (0.00 sec)
在EVEN
mysql> flush tables with read lock;
Query OK, 0 rows affected (0.00 sec)
mysql> show master status\G;
*************************** 1. row ***************************
File: mysql-bin.000008
Position: 107
Binlog_Do_DB: db_rocky
Binlog_Ignore_DB: mysql
1 row in set (0.01 sec)
㈤ 分別在伺服器ODD、EVEN上用change master語句指定同步位置 :
在ODD
mysql> change master to master_host='192.168.1.116',master_user='water',master_password='cdio2010',
-> master_log_file='mysql-bin.000008',master_log_pos=107;
Query OK, 0 rows affected (0.05 sec)
在EVEN
mysql> change master to master_host='192.168.1.115',master_user='water',master_password='cdio2010',
-> master_log_file='mysql-bin.000007',master_log_pos=438;
Query OK, 0 rows affected (0.15 sec)
注:master_log_file,master_log_pos由上面主伺服器查出的狀態值中確定
master_log_file對應File,master_log_pos對應Position
在ODD、EVEN上執行
mysql> unlock tables;
Query OK, 0 rows affected (0.00 sec)
㈥ 分別在伺服器ODD、EVEN上啟動從伺服器執行緒
mysql> start slave;
Query OK, 0 rows affected (0.00 sec)
分別在伺服器ODD、EVEN上檢視從伺服器狀態 :
ODD上
mysql> show slave status\G;
*************************** 1. row ***************************
主要關注以下 2 個引數:
...
...
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
...
...
EVEN上:
mysql> show slave status\G;
*************************** 1. row ***************************
主要關注以下 2 個引數:
...
...
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
...
...
㈦ 測試
EVEN上
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| db_rocky |
| mysql |
| performance_schema |
| test |
+--------------------+
5 rows in set (0.00 sec)
mysql> use db_rocky;
Database changed
mysql> show tables;
Empty set (0.00 sec)
mysql> create table water (id int);
Query OK, 0 rows affected (0.04 sec)
mysql> insert into water values(1);
Query OK, 1 row affected (0.01 sec)
mysql> commit;
Query OK, 0 rows affected (0.00 sec)
在ODD上
mysql> show tables;
+--------------------+
| Tables_in_db_rocky |
+--------------------+
| t_rocky |
| water |
+--------------------+
2 rows in set (0.00 sec)
mysql> select * from water;
+------+
| id |
+------+
| 1 |
+------+
1 row in set (0.00 sec)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9034054/viewspace-2056402/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql 5.6 半同步主從安裝MySql
- mysql5.6主主叢集自動同步指令碼MySql指令碼
- mysql主主同步MySql
- mysql 5.7主主同步MySql
- Mysql主主同步-配置資料同步MySql
- mysql主從同步MySql主從同步
- Mysql5.6主從複製MySql
- mysql5.6主主複製及keepalived 高可用MySql
- MySQL主從同步配置MySql主從同步
- mysql之 mysql 5.6不停機主主搭建(活躍雙主基於日誌點複製)MySql
- Mysql 5.6 Master和Slave 主備切換MySqlAST
- mysql5.6主從引數詳解MySql
- rpm 安裝5.6 MySql主從搭建MySql
- MySQL 資料主從同步MySql主從同步
- MySql主從同步介紹MySql主從同步
- Mysql 主從同步實戰MySql主從同步
- mysql主從同步機制MySql主從同步
- mysql master slave 主從同步MySqlAST主從同步
- 生產環境mysql主主同步主鍵衝突處理MySql
- MySQL主從複製、半同步複製和主主複製MySql
- MYSQL資料庫主從同步(一主一從)MySql資料庫主從同步
- MySQL主從複製、半同步複製和主主複製概述MySql
- mysql5.6.xGTID主從複製配置MySql
- 5.6 MySql主從自動切換指令碼MySql指令碼
- [資料庫]MYSQL主從同步資料庫MySql主從同步
- Mysql 主從同步原理簡析MySql主從同步
- mysql主從同步問題整理MySql主從同步
- MySQL主從同步配置記錄MySql主從同步
- MySQL主從同步加速Transfer–FAQMySql主從同步
- MySQL-主從複製之同步主從資料MySql
- mysql之 mysql 5.6不停機主從搭建(一主一從基於GTID複製)MySql
- MySQL的主從複製、半同步複製、主主複製詳解MySql
- 配置mysql5.5主從複製、半同步複製、主主複製MySql
- mysql5.6搭建主從過程中遇到主從server_uuid一致無法同步的問題MySqlServerUI
- MySQL主從同步校驗與重新同步薦MySql主從同步
- MySQL 5.6同一物理主機配置多例項MySql
- Mysql5.6主從複製-基於binlogMySql
- MySQL 5.7的安裝及主從複製(主從同步)MySql主從同步