master:
ip:192.168.3.109
作業系統:centos 7 64位
slave:
ip:192.168.3.104
作業系統:centos 7 64位
master機和slave機的相關配置
1、修改master機器中mysql配置檔案my.cnf,該檔案在/etc目錄下
在[mysqld]配置段添加如下字段
server-id=1
log-bin=mysql-bin
log-slave-updates=1
binlog-do-db=hsms #需要同步的資料庫,如果沒有本行表示同步所有的資料庫
binlog-ignore-db=mysql #被忽略的資料
在master機上為slave機添加一同步帳号
grant replication slave on *.* to dashi@'192.168.3.%' identified by 'XXXXXX';
flush privileges;
重新開機master機的mysql服務:service mysqld restart
用show master status 指令看日志情況
通過該指令獲得File和Position,在slave中有用 。
注:基準這裡的“mysql-bin.000006”和“704291”
2、修改slave機中mysql配置檔案
修改slave機器中mysql配置檔案my.cnf,該檔案在/etc目錄下
一鍵安裝的my.cnf目錄在/home/itsm/project/mysql-5.7.25/bin下
同樣在[mysqld]字段下添加如下内容
server-id=2
log-bin= mysql-bin
relay-log= mysql-relay-bin
read-only=1
log-slave-updates=1
replicate-do-db=hsms #要同步的資料庫,不寫本行表示同步所有資料庫
然後重新開機slave機的mysql:service mysqld restart
a.進入mysql
mysql –uroot –p100100
b.指定master主機(注意master_log_file 和master_log_pos 與從機的File和Position一緻)
change master to master_host='192.168.3.109',master_port=3306,master_user='dashi',master_password='XXXXXX',master_log_file='master-bin. 000006,master_log_pos=704291;
c.啟動slave
start slave;
d.運作SHOW SLAVE STATUS檢視輸出結果:
主要檢視Slave_IO_Running和Slave_SQL_Running 兩列是否都為YES
兩列都為yes 則說明主從同步成功。
設定主從表引擎。
從表隻讀,設定為MyISAM
主表隻寫,設定為InnoDB
注:mysql5.7預設為InnoDB,是以隻用修改從表引擎。
将從表預設的InnoDB設定為MyISAM,儲存即可