mysql5.7主從複製,主主複製
主從複製:主庫可寫(會寫入從庫)可讀,從庫只能讀
主主複製:兩個庫可寫可讀,一個庫修改會寫入另一個庫
A.主從複製
1.準備兩臺機器
192.168.1.193 master 主庫機器
192.168.1.194 slave 從庫機器
2.在兩臺機器安裝mysql5.7
3.**配置 master 主庫機器 **
a.開啟binlog
設定mysql的唯一編號(mysql5.7即更高版本新加引數), 和開啟binlog日誌
輸入vi /etc/my.cnf 進入配置檔案,按Insert鍵進入編輯模式,新增如下引數
server-id=1 (機器的唯一標識)
log-bin=/var/lib/mysql/mysql-bin (開啟binlog)
新增完後,按Esc鍵,輸入 :wq! 儲存退出
b.重啟 service mysqld restart
c.進入mysql,檢視binlog是否開啟成功,輸入cd /var/lib/mysql,看到如下檔案代表開啟成功
d.建立使用者並授權
登入MySQL mysql -uroot -p
建立使用者:create user ‘repl’ identified by ‘repl’;
授權:grant replication slave on . to ‘repl’@‘192.168.1.%’ identified by ‘repl’;
4.配置slave 從庫機器
a.開啟binlog
輸入vi /etc/my.cnf 進入配置檔案,按Insert鍵進入編輯模式,新增如下引數
server-id=2
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin
( ( server-id機器的唯一標識),後面兩步是用來開啟slave的relaylog功能的)
新增完後,按Esc鍵,輸入 :wq! 儲存退出
b.重啟 service mysqld restart
5.建立主從關係
a.開啟主庫機器登入mysql
輸入 show master status; 檢視狀態
b.開啟從庫機器登入mysql
輸入 show slave status\G; 檢視狀態,狀態未開啟時進行如下設定:
change master to
master_host=‘192.168.1.193’, // 主節點
master_port=3306, //主節點的埠號
master_user=‘repl’, // 賬號
master_password=‘repl’, // 密碼
master_log_file=‘mysql-bin.000002’, // show master status 對應的的日誌
master_log_pos=936; // show master status 對應的
c.輸入start slave 開啟從節點
輸入 show slave status\G; 檢視狀態,如下圖所示為成功
6.Navicat資料庫工具建立主從庫連線,如下圖所示:
如主從庫未開啟遠端訪問,需先開啟,操作如下:
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘123456’ WITH GRANT OPTION;
FLUSH PRIVILEGES;
可以運算元據庫啦
B.主主複製
1.準備兩臺機器
192.168.1.193 master 主庫機器
192.168.1.195 master 主庫機器
2.在兩臺機器安裝mysql5.7
https://blog.csdn.net/qq_16676539/article/details/81904714
3.修改my.cnf
開啟binlog
輸入vi /etc/my.cnf 進入配置檔案,按Insert鍵進入編輯模式,新增如下引數
第一臺:
server-id=1
log-bin=/var/lib/mysql/mysql-bin
auto_increment_increment=2
auto_increment_offset=1
第二臺:
server-id=3
log-bin=/var/lib/mysql/mysql-bin
auto_increment_increment=2
auto_increment_offset=2
重啟 service mysqld restart
4. 建立使用者並授權
登入MySQL mysql -uroot -p
建立使用者:create user ‘repl’ identified by ‘repl’;
授權:grant replication slave on . to ‘repl’@‘192.168.1.%’ identified by ‘repl’;
set global validate_password_policy=0;
set global validate_password_length=1;
5.建立關係
第二臺關聯第一臺
a.開啟第一臺機器登入mysql
輸入 show master status; 檢視狀態
b.開啟第二臺機器登入mysql,執行如下操作
change master to
master_host=‘192.168.1.193’, // 主節點
master_port=3306, //主節點的埠號
master_user=‘repl’, // 賬號
master_password=‘repl’, // 密碼
master_log_file=‘mysql-bin.000002’, // show master status 對應的的日誌
master_log_pos=2072; // show master status 對應的
第一臺關聯第二臺
a.開啟第二臺機器登入mysql
輸入 show master status; 檢視狀態
b.開啟第一臺機器登入mysql,執行如下操作
change master to
master_host=‘192.168.1.195’, // 主節點
master_port=3306, //主節點的埠號
master_user=‘repl’, // 賬號
master_password=‘repl’, // 密碼
master_log_file=‘mysql-bin.000001’, // show master status 對應的的日誌
master_log_pos=702; // show master status 對應的
6.啟動庫,執行start slave
7.資料庫工具Navicat新建連線,遠端運算元據庫,可以看到兩個庫可以互相讀寫
*大功告成~~~~*
原文連結:https://blog.csdn.net/a375015762/article/details/80164042
binlog主要用途
binlog的兩個重要用途:
-
主從複製
對於主從部署的mysql server,master將所有可能更改資料庫狀態的操作寫入binlog並將其同步給slave,後者重放binlog中的操作序列以便使其資料庫狀態與master達到一致,這樣就實現了master-slave的資料同步。 -
資料恢復
資料庫恢復時可以回放binlog重建當機時的資料狀態。假設資料庫在某個備份點後又執行一段時間後當機,則server重啟後,可以在上次備份點的基礎上,通過回放binlog來重做資料以便恢復上次備份點到server當機這段時間內的資料狀態。
注意:binlog只包含可能改變資料庫狀態的操作,因此,select或show等不會修改資料的操作不會記錄在binlog中。
相關文章
- MySQL主從複製與主主複製MySql
- MySQL主從複製、半同步複製和主主複製MySql
- MySQL主從複製、半同步複製和主主複製概述MySql
- MySQL5.7主從複製-半同步複製搭建MySql
- MySQL5.7主從複製教程MySql
- MySQL的主從複製、半同步複製、主主複製詳解MySql
- 配置mysql5.5主從複製、半同步複製、主主複製MySql
- MySQL的主從複製與MySQL的主主複製MySql
- 主從複製
- mysql複製--主從複製配置MySql
- Windows 環境下,MySQL 的主從複製和主主複製WindowsMySql
- windows環境下,Mysql的主從複製和主主複製WindowsMySql
- Redis - 主從複製Redis
- Redis:主從複製Redis
- MongoDB主從複製MongoDB
- MySQL 主從複製MySql
- 【MySql】主從複製MySql
- Redis主從複製Redis
- MySQL主從複製MySql
- 主從複製、雙主複製及半同步複製、以及基於SSL的複製
- mysql資料庫的主從複製和主主複製實踐MySql資料庫
- MySQL5.7在滴滴雲主機上的主從複製MySql
- mysql主主複製(雙主複製)配置步驟MySql
- MySQL主從複製_複製過濾MySql
- MySQL 主主複製MySql
- MySQL叢集之 主從複製 主主複製 一主多從 多主一叢 實現方式MySql
- MySQL(二):主從複製結構、半同步複製、雙主複製結構、利用SSL實現安全的MySQL主從複製MySql
- 主從複製是啥或者主從複製的原理是什麼?
- MySQL主從複製之GTID複製MySql
- MySQL主從複製之半同步複製MySql
- MySQL主從複製之非同步複製MySql非同步
- mysql主從複製(一):一主多從MySql
- mysql主從複製+主備切換MySql
- Linux下Redis主從複製以及SSDB主主複製環境部署記錄LinuxRedis
- Redis 主從複製原理Redis
- MySQL主從複製原理MySql
- Redis 主從複製(Replication)Redis
- redis系列:主從複製Redis