Centos7下配置MariaDB二進制熱備份進行主從複製

腦圖


先從主數據庫dump數據到從庫完成數據的備份mysql

在主庫中建立一個熱備帳號,而且受權replication slave權限:sql

grant replication slave on *.* to "slave"@"192.168.3.206" identified by "admin"


flush privileges;

修改主庫的配置文件,並添加以下的配置。數據庫

sudo vim /etc/my.cnf
server-id=2 //此處的server id是惟一的,主從庫不能同樣
log-bin=bin-log //二進制日誌的文件名
binlog-do-db=databasename //你要備份的數據庫
binlog-ignore-db =mysql //不須要備份的數據庫

重啓mariaDBvim

systemctl restart mariadb

在主庫中查看主從狀態ide

show slave status\G;
File: bin-log.000003  //注意

    Position: 10646       //此處File以及Position的數據會用於從庫的配置

    Binlog_Do_DB:databasename

    Binlog_Ignore_DB:mysql

    1 row in set (0.00 sec)

更改從庫配置,添加如下測試

server-id=3//此處的server id是惟一的,主從庫不能同樣
log-bin=bin-log //二進制日誌的文件名
replicate-do-db=databasename //你要備份的數據庫
replicate-ignore-db=mysql,information_schema,performance_schema

重啓mariadbspa

systemctl restart mariadb

登錄從庫MariDB,先中止掉slave3d

stop slave;

更改熱備配置rest

Change master to master_host="192.168.3.205",master_port=3306, master_user="backups",master_password="admin",master_log_file="bin-log.000003",master_log_pos=19879;

master_host="主庫的IP地址"
master_port=數據庫端口
master_user="你所建立的用於熱備的帳號"
master_password="熱備帳號的密碼"
"master_log_file"和"master_log_pos"須要與主庫show master statusG;顯示的數據一致。日誌


而後開啓slave。

start slave;

查看一下狀態

show slave status\G;
Slave_IO_Running: Yes

    Slave_SQL_Running: Yes

此處兩項若是顯示爲Yes,那麼基本上是成功了,在主庫創建一個表,而後查看從庫是否也同步創建,便可測試是否成功。


P.S.儲存sql的時候必須包含數據,僅儲存結構會致使兩個庫的數據不一致致使錯誤。

相關文章
相關標籤/搜索