配置mysql主從複製
環境:redhat 7.3 系統 兩臺主機 一臺master 一臺slave
一、主從複製的步驟
一、搭建時間NTP服務器,同步時間
1)創建時間同步環境,在主節點上搭建時間同步服務器
時間同步在此再也不重複,可翻閱上次文檔。
二、防火牆開放列外,或者直接關閉
三、安裝mysql此步驟再也不講解。
四、置mysql主服務器(MASTER)
1)修改/etc/my.cnf配置文件
server-id = 11 //mysql數據的惟一標示(不能重複)
log-slave-updates=true //容許連級複製 (增長)
log-bin=master-bin //二進制文件名(修改)
og-bin=mysql-bin
五、重啓mysql
六、在主服務器中192.168.95.11中建立一個192.168.95.12主機中能夠登陸的MySQL用戶
mysql>GRANT REPLICATION SLAVE ON . TO ‘mysql12’@’192.168.95.12’ IDENTIFIED BY ‘mysql12’;
mysql>FLUSH PRIVILEGES;
七、 查看主服務192.168.95.11MySQL服務器二進制文件名與位置
mysql>SHOW MASTER STATUS;
八、配置從服務器
在/etc/my.cnf中修改如下內容
[root@centos3 ~]# vim /etc/my.cnf
server-id = 22 //不能與其餘實例重複
log-bin=mysql-bin //二進制日誌文件名 修改
relay-log=relay-log-bin //複製過來的二進制文件名,增長
relay-log-index=slave-relay-bin.index //中繼日誌存放的文件名稱,增長
九、編輯完配置 文件須要重啓
十、告知二進制文件名與位置(在從服務器配置)
在192.168.95.12中執行
mysql>CHANGE MASTER mysql
MASTER_HOST=’192.168.95.11’,
MASTER_USER=’atm’>
MASTER_PASSWORD=’mysql12’,
MASTER_LOG_FILE=’mysql-bin.000048’,
MASTER_LOG_POS=432;
十一、
1)start slave;從服務器啓動同步
2)查看slave狀態,確保如下兩個值爲YES
在此過程會出現錯誤
總結兩個小錯誤是我在配置中遇到的
問題一:sql
解決辦法:刪除從數據庫的auto.cnf 文件,重啓數據庫便可。
問題二:
報錯信息; Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Could not find first log file name in binary log index file'
解決辦法:
能夠在從服務器執行如下命令
stop slave;
reset slave;
start slave;
問題三:
必定要開啓二進制日誌
在my.cnf文件內增長
log-bin=mysql-bin
查看是否開啓二進制文件
show variables like 'log_bin';
十二、測試主從數據庫是否可用
在主數據庫建立數據庫
create databases it;
show databases;查看主從數據庫是否已有
大功告成!!!數據庫