在CentOS7上配置MySQL5.7主從備份

  • 上一篇講了在CentOS7使用yum在線安裝MySQL5.7,接下來開始配置MySQL的主從備份.

環境

  • CentOS7,MySQL5.7
  • 兩臺機器,master爲192.168.226.130,slave爲192.168.226.131

配置主MySQL

  • 首先,登錄MySQL,創建一個同步賬號,用於從服務器訪問主服務器
create user 'repl'@'%' identified by '密碼';

可能會遇到提示密碼過於簡單的問題,可以去上一篇文章看解決辦法

  • 授予該賬號REPLICATION SLAVE權限
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
  • 配置主從同步,要在主服務器開啓二進制日誌,也就是binlog,並配置要同步或不同步哪些數據庫.這需要修改my.cnf配置文件
vim /etc/my.cnf
  • 在其中依照實際情況添加或修改如下內容:
#此參數表示啓用binlog並指定日誌文件路徑
log_bin=master-bin
#此參數指定二進制索引文件路徑
log_bin_index=master-bin.index
#配置服務器的唯一標識,和其他服務器的唯一標識必須不同,從服務器通過該標識找到主服務器
server-id=4
#指定範圍日期內的binlog日誌,過期的日誌會被清除
expire-logs-days=7
#配置不記錄binlog日誌的數據庫,沒有binlog日誌的數據庫則不會被同步
binlog_ignore_db=mysql
#配置記錄binlog日誌的數據庫,有binlog日誌的數據庫會被同步
binlog_do_db=lidbjs0308
#這些數據庫都是mysql系統數據庫
binlog_ignore_db=information_schema
binlog_ignore_db=performation_schema
binlog_ignore_db=sys
  • 配置完成後,重啓mysql服務
service mysqld restart

登錄mysql,查看master狀態
在這裏插入圖片描述
記錄下File和Position這兩個值,一會會用到

配置從MySQL

  • 修改從數據庫的my.cnf
#服務器唯一標識
server-id = 2
#啓動中繼日誌服務並設置地址,中繼日誌就是存儲主庫過來的binlog日誌
relay-log = slave-relay-bin
#中繼日誌二進制文件索引地址
relay-log-index = slave-relay-bin.index
  • 重啓mysql服務,然後登陸從服務器的mysql,配置主服務器相關設置
change master to master_host='192.168.226.130', master_port=3306, master_user='repl', 
master_password='密碼', master_log_file='master-bin.000003', master_log_pos=154;
  • 然後啓動SLAVE
start slave;
  • 查看主從狀態
show slave status\G

在這裏插入圖片描述
Slave_IO_Running和Slave_SQL_Running都爲Yes,表示成功,測試一波;

  • 在主數據庫同步的數據庫裏創建一張表
create table test(
	name varvhar(20),
	age int(3)
);

此時查看從數據庫,已經有這張表了;在主庫中向表裏插入數據

insert into test(name,age) values('大黃',30);

查看從數據庫
在這裏插入圖片描述

  • 至此,簡單的CentOS7配置MySQL5.7主從備份完工了,想要實際使用,還需要做很多配置優化,後續會繼續研究的
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章