本文介紹的是Mysql的主從備份配置
環(huán)境介紹
系統(tǒng):centOS 7 64位
master: 10.10.40.20
slave: 10.10.40.63
兩臺機器都已裝好mysql昌抠,并創(chuàng)建好了數(shù)據(jù)庫
master 配置
1. 登錄mysql
mysql -uroot -p
2. 新建備份賬號并授權(quán)
mysql>GRANT REPLICATION SLAVE ON *.* TO 'repl'@'10.10.40.%' IDENTIFIED BY 'mysql';
mysql>FLUSH PRIVILEGES;
3. 修改mysql配置
vim /etc/my.cnf
server-id = 2 #服務器唯一標識,直接使用IP末尾
log_bin = master-bin #啟動二進制日志
log_bin_index = master-bin.index
binlog_do_db = newcsxy #指定記錄二進制日志的數(shù)據(jù)庫
binlog_ignore_db= mysql #指定不記錄二進制日志的數(shù)據(jù)庫
4. 重啟服務
service mysqld restart
5. 登錄mysql查看master狀態(tài)
mysql -u root -p
mysql>show master status;
slave配置
1. 修改mysql配置
vim /etc/my.cnf
server-id = 127
relay-log = slave-relay-bin
relay-log-index = slave-relay-bin.index
2. 重啟mysql服務
service mysqld restart
3. 登錄mysql,連接master
mysql>change master to master_host='10.10.40.20',
master_port=3306,master_user='repl',
master_password='mysql',
master_log_file='master-bin.000001',master_log_pos=154;
NOTE:
master_host:master的IP
master_port:master的端口
master_user:步驟一中創(chuàng)建的復制賬號
master_password:復制賬號的密碼
master_log_file和master_log_pos:對應步驟一最后查看的master狀態(tài)值
4. 啟動slave同步
mysql>start slave;
5. 查看slave狀態(tài)
mysql>show slave status\G;
slave_io_running和slave_sql_running都為yes魁袜,就說明配置成功了
問題
- MySQL錯誤處理--1146錯誤
解決辦法:
在從服務器上設置忽略該錯,在my.cnf文件中添加
slave-skip-errors = 1146
漆撞,
如果少量的這種錯誤券躁,直接在mysql client里面設置set global sql_slave_skip_counter=1
;