資料庫的主從複製
阿新 • • 發佈:2020-07-02
先讓兩臺伺服器互通
確定兩臺都是有安裝mysql的
實際環境可以讓主機的防火牆給埠3306放行,這裡 就直接關閉防火牆了
輸入密碼進入mysql 並向伺服器中授權一個從資料庫使用者給從機,然後重新整理一下資料庫的狀態
` mysql -uroot -p123.com`
授權
`grant replication slave on *.*to'slvZ'@'192.168.2.%' identified by'123.com';`
修改配置檔案
`vim /etc/my.cnf` `` log-bin=master-bin log-slave-update=true # binary logging format - mixed recommended binlog_format=mixed # required unique id between 1 and 2^32 - 1 # defaults to 1 if master-host is not set # but will not function as a master if omitted server-id = 11 ``
重啟服務
`systemctl restart mysqld`
進入mysql
`` mysql> show master status; +-------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +-------------------+----------+--------------+------------------+ | master-bin.000001 | 107 | | | +-------------------+----------+--------------+------------------+ 1 row in set (0.00 sec) ``
需要記住這裡的編碼
去到從機修改配置檔案
``
vim /etc/my.cnf
server-id = 22
``
重啟資料庫
`systemctl restart mysqld`
進入資料庫
`` mysql> slave stop; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> change master to master_host='192.168.2.9',master_user='slvZ',master_password='123.com',master_log_file='master-bin.000001',master_log_pos=107; Query OK, 0 rows affected (0.01 sec) mysql> start slave; Query OK, 0 rows affected (0.00 sec) mysql> show slave status\G #主要是看著兩行 Slave_IO_Running: Yes Slave_SQL_Running: Yes ``
之後測試一下主建立 從檢視就好了