首頁 > 軟體

Redis主從複製分步講解使用

2022-09-26 14:06:12

主伺服器(master)啟用二進位制紀錄檔 選擇一個唯一的server-id 建立具有複製許可權的使用者

從伺服器(slave)啟用中繼紀錄檔, 選擇一個唯一的server-id 連線至主伺服器,並開始複製

主庫ip:192.168.235.130 埠:3306 從庫ip:192.168.235.139 埠:3306

主庫設定

(1)設定server-id值並開啟binlog引數

[mysqld]
log_bin = mysql-bin
server_id = 130

重啟資料庫

(2)建立同步賬號

creat user 'rep1'@'192.168.10.139' identified with mysql_native_password by 'Test@1234'#設定賬戶密碼
grant replication slave on *.* to 'rep1'@'192.168.235.139';
grant replication slave on *.* to 'rep1'@'192.168.235.139';
show grants for 'rep1'@'192.168.235.139';

(3)鎖表設定唯讀

為後面備份準備,注意生產環境要提前申請停機時間;

mysql> flush tables with read lock;

提示:如果超過設定時間不操作會自動解鎖。

mysql> show variables like '%timeout%';

測試鎖表後是否可以建立資料庫

4)檢視主庫狀態 檢視主庫狀態,即當前紀錄檔檔名和二進位制紀錄檔偏移量

mysql> show master status;

記住file和position,方便slave後續連線。

(5)備份資料庫資料

mysqldump -uroot -p -A -B |gzip > mysql_bak.$(date +%F).sql.gz

(6)解鎖

mysql> unlock tables;

(7)主庫備份資料上傳到從庫

scp /server/backup/mysql_bak.2022-09-22.sql.gz 192.168.235.139:/root/hh

從庫上設定

(1)設定server-id值並關閉binlog引數

#log_bin = /data/mysql/data/mysql-bin

server_id = 139

重啟資料庫

(2)還原從主庫備份資料

cd /server/backup/
gzip -d mysql_bak.2022-09-22.sql.gz
mysql -uroot -p < mysql_bak.2022-09-22.sql

檢查還原:

mysql -uroot -p -e 'show databases;'

(3)設定從主庫同步

mysql> change master to
    -> master_host='192.168.235.130',
    -> master_port=3306,
    -> master_user='rep1',
    -> master_password='Test@1234',
    -> master_log_file='mysql-bin.000006',
    -> master_log_pos=157;

(4)啟動從庫同步開關

mysql> start slave;

檢查狀態:

mysql> show slave statusG

主備複製功能達成。

下面進行測試:

在192.168.235.130(主)上執行:

create databses data; 新建資料庫

從虛擬機器器上也建好了data檔案,實現了Mysql的主從複製。

到此這篇關於Redis主從複製分步講解使用的文章就介紹到這了,更多相關Redis主從複製內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com