程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> Linux下指定mysql數據庫數據配置主主同步的實例

Linux下指定mysql數據庫數據配置主主同步的實例

編輯:MySQL綜合教程

一、 概念:

① 數據庫同步  (主從同步 --- 主數據庫寫的同時 往從服務器寫數據)
② 數據庫同步  (主主同步 --- 兩台數據庫服務器互相寫數據)

二、 舉例

主主數據庫同步服務器配置
數據庫服務器(A) 主數據庫   IP:192.168.1.134
數據庫服務器(B) 主數據庫   IP:192.168.1.138
兩台服務器同步的用戶名為: bravedu    密碼: brave123

一、主數據庫操作設置(A):

① 創建同步用戶名   允許連接的 用戶IP地址  (非本機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 (路徑要根據自己的安裝設置)
binlog-do-db = dbname (要同步的數據庫名)
binlog-ignore-db=mysql

#相對應主從數據庫同步不同的地方
復制代碼 代碼如下:
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服務器

③ 查看主數據庫同步狀態  IP: ***.134 
復制代碼 代碼如下:
mysql>flush tables with read lock; 
mysql>show master status\G
*************************** 1. row ***************************
File: mysql-bin.000001    (這裡注意 設置從服務器的時候要用)
Position: 106             (這裡注意設置從服務器的時候要用)
Binlog_Do_DB: dbname
Binlog_Ignore_DB: mysql
1 row in set (0.00 sec)

mysql>unlock tables;
*****主服務器到目前位置設置完畢*******


二、從數據庫操作設置(B):

① 創建同步用戶名
復制代碼 代碼如下:
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 (路徑要根據自己的安裝設置)
binlog-do-db = dbname (要同步的數據庫名)
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服務器

查看主數據庫同步狀態  IP: ***.138 
復制代碼 代碼如下:
mysql>flush tables with read lock; 
mysql>show master status\G
*************************** 1. row ***************************
File: mysql-bin.000005    (這裡注意 設置從服務器的時候要用)
Position: 106             (這裡注意設置從服務器的時候要用)
Binlog_Do_DB: dbname
Binlog_Ignore_DB: mysql
1 row in set (0.00 sec)
mysql>unlock tables;

③  指定主主數據庫服務器同步指令
注:IP為主服務器的IP,用戶名,密碼,log_file,log_post 服務器互相統一
可能這塊操作 需要先  解除鎖表、停止數據庫狀態、在運行後 在啟動狀態
復制代碼 代碼如下:
mysql > stop  slave;
#設置192.168.1.138數據庫服務器配置 那麼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;
#設置192.168.1.134 數據庫服務器配置 那麼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;

④ 查看主數據庫同步狀態  會出來很多信息 但是主要看這兩個狀態就行了 如果都是 yes 就可以了
復制代碼 代碼如下:
mysql>show slave status\G;
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

至此,主主數據庫同步成功配置完成。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved