一、 概念:
① 數(shù)據(jù)庫同步 (主從同步 --- 主數(shù)據(jù)庫寫的同時 往從服務(wù)器寫數(shù)據(jù))
② 數(shù)據(jù)庫同步 (主主同步 --- 兩臺數(shù)據(jù)庫服務(wù)器互相寫數(shù)據(jù))
二、 舉例
主主數(shù)據(jù)庫同步服務(wù)器配置
數(shù)據(jù)庫服務(wù)器(A) 主數(shù)據(jù)庫 IP:192.168.1.134
數(shù)據(jù)庫服務(wù)器(B) 主數(shù)據(jù)庫 IP:192.168.1.138
兩臺服務(wù)器同步的用戶名為: bravedu 密碼: brave123
一、主數(shù)據(jù)庫操作設(shè)置(A):
① 創(chuàng)建同步用戶名 允許連接的 用戶IP地址 (非本機(jī)IP)
grant replication slave on *.* to 'bravedu'@'192.168.1.%' identified by 'brave123';
flush privileges;
② 更改mysql配置文件
[mysqld]
server-id = 1
log-bin=/www/mysql/binlog/binlog (路徑要根據(jù)自己的安裝設(shè)置)
binlog-do-db = dbname (要同步的數(shù)據(jù)庫名)
binlog-ignore-db=mysql
#相對應(yīng)主從數(shù)據(jù)庫同步不同的地方
log-slave-updates
sync_binlog=1
auto_increment_offset=1
auto_increment_increment=2
replicate-do-db = dbname
replicate-ignore-db = mysql,information_schema
重啟mysql服務(wù)器
③ 查看主數(shù)據(jù)庫同步狀態(tài) IP: ***.134
mysql>flush tables with read lock;
mysql>show master status/G
*************************** 1. row ***************************
File: mysql-bin.000001 (這里注意 設(shè)置從服務(wù)器的時候要用)
Position: 106 (這里注意設(shè)置從服務(wù)器的時候要用)
Binlog_Do_DB: dbname
Binlog_Ignore_DB: mysql
1 row in set (0.00 sec)
mysql>unlock tables;
*****主服務(wù)器到目前位置設(shè)置完畢*******
二、從數(shù)據(jù)庫操作設(shè)置(B):
① 創(chuàng)建同步用戶名
grant replication slave on *.* to 'bravedu'@'192.168.1.%' identified by 'brave123';
flush privileges;
② 更改mysql配置文件
[mysqld]
server-id = 2
log-bin=/www/mysql/binlog/binlog (路徑要根據(jù)自己的安裝設(shè)置)
binlog-do-db = dbname (要同步的數(shù)據(jù)庫名)
binlog-ignore-db= mysql,information_schema
#相對于主從同步不同的地方
binlog-do-db = dbname
binlog-ignore-db=mysql
log-slave-updates
sync_binlog=1
auto_increment_offset=2
auto_increment_increment=2
重啟mysql服務(wù)器
查看主數(shù)據(jù)庫同步狀態(tài) IP: ***.138
mysql>flush tables with read lock;
mysql>show master status/G
*************************** 1. row ***************************
File: mysql-bin.000005 (這里注意 設(shè)置從服務(wù)器的時候要用)
Position: 106 (這里注意設(shè)置從服務(wù)器的時候要用)
Binlog_Do_DB: dbname
Binlog_Ignore_DB: mysql
1 row in set (0.00 sec)
mysql>unlock tables;
③ 指定主主數(shù)據(jù)庫服務(wù)器同步指令
注:IP為主服務(wù)器的IP,用戶名,密碼,log_file,log_post 服務(wù)器互相統(tǒng)一
可能這塊操作 需要先 解除鎖表、停止數(shù)據(jù)庫狀態(tài)、在運(yùn)行后 在啟動狀態(tài)
mysql > stop slave;
#設(shè)置192.168.1.138數(shù)據(jù)庫服務(wù)器配置 那么host 配置文件信息 就是 134的信息
mysql > change master to master_host='192.168.1.134', master_user='bravedu', master_password='brave123', master_log_file='mysql-bin.000005', master_log_pos=106;
#設(shè)置192.168.1.134 數(shù)據(jù)庫服務(wù)器配置 那么host 等配置文件信息 就是 134的信息
mysql > change master to master_host='192.168.1.138', master_user='bravedu', master_password='brave123', master_log_file='mysql-bin.000001', master_log_pos=106;
mysql > start slave;
mysql > unlock tables;
④ 查看主數(shù)據(jù)庫同步狀態(tài) 會出來很多信息 但是主要看這兩個狀態(tài)就行了 如果都是 yes 就可以了
mysql>show slave status/G;
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
至此,主主數(shù)據(jù)庫同步成功配置完成。
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com