這篇文章為大家帶來了關於redis的相關知識,其中主要介紹了關於主從複製的相關內容,Redis因為其高性能和易用性在我們後端的服務中發揮了巨大的作用,而且很多重要功能的實作都會依賴redis,下面一起來看一下,希望對大家有幫助。
推薦學習:Redis視訊教學
主伺服器(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)建立同步帳號
(3)鎖定表設定只讀# #為後面備份準備,注意生產環境要提前申請停機時間;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';#nslave. * to 'rep1'@'192.168.235.139';
show grants for 'rep1'@'192.168.235.139';
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 status\G###主備複製功能達成。 ######下面進行測試:######在192.168.235.130(主)上執行:#########create databses data; ###新資料庫####### #########從虛擬機器上也建立了data文件,實現了Mysql的主從複製。 ###############推薦學習:###Redis影片教學#######
以上是Redis主從複製逐步講解使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!