最全 Mysql 主從複製實戰演練

下面演示的主從案例皆以mysql5.7.30版本爲主,親測有效

1)首先準備兩臺服務器:

主服務器:192.168.124.38

從服務器:192.168.124.39

2)在主服務器上創建我們演示的數據庫

mysql -uroot -p -e"create database mycat_db"

3)將提前準備好的數據庫文件導入到我們的數據庫中

mysql -uroot -p mycat_db < mycat_db.sql  

4)開啓我們主從的配置,找到mysql的配置文件

vim /etc/my.cnf

開啓主從配置,(這裏主庫和從庫都需要配置一下,主庫:server-id=1;從庫:server-id=2)

log-bin=mysql-bin
server-id=1

5)備份我們的數據庫

 mysqldump --master-data=2 --single-transaction --routines --triggers --events -uroot -p mycat_db > bak_mycat_db.sql

 6)將我們的備份sql遠程傳到我們的從數據庫節點的root目錄下

scp bak_mycat_db.sql [email protected]:/root

7)從服務器上創建我們的數據庫

mysql -uroot -p -e"create database order_db"

8)導入我們之前主庫備份下來的數據

mysql -uroot -p order_db < bak_mycat_db.sql

9)回到主庫,我們創建一個用來主從同步複製的賬號

create user 'im_repl'@'192.168.124.%' identified by '123456';

10)對我們創建的賬號進行授權

grant replication slave on *.* to 'im_repl'@'192.168.124.%';

11)在從庫上創建我們主從同步的鏈路

change master to MASTER_HOST="192.168.124.38",
MASTER_USER ="im_repl",
MASTER_PASSWORD ="123456",
MASTER_LOG_FILE ="mysql-bin.000001",
MASTER_LOG_POS =625;

我們可以使用命令在主庫查看上面配置的MASTER_LOG_FILE ="mysql-bin.000001",MASTER_LOG_POS =625;的位置

show master status

12)查看我們創建的鏈路

 show slave status \G

13)因爲我們主從庫的名字現在是不一樣的,所以需要添加一個鏈路的過濾

change replication filter replicate_rewrite_db=((mycat_db,order_db));

這樣我們就可以將主庫mycat_db的數據同步到從庫order_db上了

再次查看我們的鏈路狀態

 show slave status \G

14)啓動我們的主從複製的從庫鏈路

start slave;

再次查看我們的從節點

 show slave status \G

【Slave_IO_Running】沒有啓動成功

其實下面也提示了錯誤的信息

意思是我們兩臺主從服務器的UUIDs是相同的,出現這種情況也是因爲本地在安裝mysql的時候,安裝好一臺系統之後,直接將整個操作系統又克隆了一份,避免了第二次的安裝,所以纔會重複,這才導致

15)解決

既然相同那麼我們找到從服務器的做一下修改就可以了

cd /var/lib/mysql

vim auto.cnf

 隨意更改一下這個id

重啓一下mysql

service mysqld restart 

再次查看我們主節點的 日誌位置:

show master status \G

 修改我們從節點:

change master to MASTER_LOG_FILE ="mysql-bin.000004",MASTER_LOG_POS =468;

因爲我們的兩個庫名不同,需要再次創建 一下鏈路過濾

change replication filter replicate_rewrite_db=((mycat_db,order_db));

 然後啓動我們的slave節點

start slave;

啓動成功 

 

16)校驗

分別用客戶端來連接兩個數據庫

修改主庫表中的任意一條數據,從庫直接刷新一下便可以看到數據已經同步過來了

 

至此我們的主從數據庫的配置成功 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章