1. 程式人生 > >CentOS7下Mysql5.7主從資料庫配置

CentOS7下Mysql5.7主從資料庫配置

本文配置主從使用的作業系統是Centos7,資料庫版本是mysql5.7。

準備好兩臺安裝有mysql的機器(mysql安裝教程連結

主資料庫配置

每個從資料庫會使用一個MySQL賬號來連線主資料庫,所以我們要在主資料庫裡建立一個賬號,並且該賬號要授予 REPLICATION SLAVE 許可權

建立一個同步賬號

create user 'repl'@'%' identified by 'repl_Pass1';

授予REPLICATION SLAVE許可權:

GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';

要配置主資料庫,必須要啟用二進位制日誌,並且建立一個唯一的Server ID,開啟mysql的配置檔案並編輯(位置/etc/my.cnf),增加如下內容

log_bin=master-bin
log_bin_index = master-bin.index
server-id=4
expire-logs-days=7
binlog_ignore_db=mysql
binlog_ignore_db=information_schema
binlog_ignore_db=performation_schema
binlog_ignore_db=sys
binlog_do_db=mybatis
log_bin=master-bin 啟動MySQL二進位制日誌
log_bin_index = master-bin.index
server-id=4  伺服器唯一標識
expire-logs-days=7 二進位制日誌的有效期
binlog_ignore_db=mysql 不需要同步的資料庫
binlog_ignore_db=information_schema
binlog_ignore_db=performation_schema
binlog_ignore_db=sys
binlog_do_db=mybatis 需要同步的資料庫名字

重啟mysql服務,檢視主伺服器狀態:

show master status;

注意將方框裡的兩個值記錄下來,後面在配置從資料庫的時候用到。

 從資料庫配置

同樣編輯配置檔案my.cnf,插入如下內容

server-id = 2
relay-log = slave-relay-bin
relay-log-index = slave-relay-bin.index

重啟mysql服務,在slave伺服器中登陸mysql,連線master主伺服器資料庫(引數根據實際填寫)

change master to master_host='192.168.134.10', master_port=
3306, master_user='repl', master_password='repl_Pass1', master_log_file='master-bin.000001', master_log_pos=2237;

啟動slave

start slave;

測試主從是否配置成功

主從同步的前提必須是兩個資料庫都存在,本案例中我們需要建好兩個名為mybatis的資料庫

主庫建立一個表

發現從庫也建立了相同的表,然後發現主庫的增刪改操作都會自動同步。