欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mysql中的多級(jí)復(fù)制方式

 更新時(shí)間:2024年04月11日 10:47:00   作者:時(shí)棧  
這篇文章主要介紹了Mysql中的多級(jí)復(fù)制方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Mysql的多級(jí)復(fù)制

有3臺(tái)Mysql服務(wù)器X、Y、Z,存在以下關(guān)系:

  • X、Y之間存在主從復(fù)制關(guān)系,X為主服務(wù)器,Y為從服務(wù)器。
  • Y、Z之間存在主從復(fù)制關(guān)系,Y為主服務(wù)器,Z為從服務(wù)器。

其中,Y既作為X的從服務(wù)器,又作為Z的主服務(wù)器。

X與Y的主從配置可以參考:

Mysql數(shù)據(jù)庫(kù)的主從同步配置

下面主要做Y和Z的同步配置:

(需要保證主從服務(wù)器版本的一致性,從服務(wù)器MySQL版本不能低于主服務(wù)器)

1.在主服務(wù)器中創(chuàng)建復(fù)制用戶

mysql> CREATE USER 'copy'@'%' IDENTIFIED BY 'copy123456';
mysql> GRANT REPLICATION SLAVE ON *.* TO 'copy'@'%';

2.修改主服務(wù)器中的配置文件

Ubuntu中的配置文件路徑為:
/etc/mysql/my.cnf
 
Windows中的默認(rèn)配置文件路徑為:
C:\ProgramData\MySQL\MySQL Server 8.0\my.ini

以下為修改示例:

[mysqld]
server-id=104538
#服務(wù)器id
 
log_slave_updates=1
#log_slave_updates設(shè)為ON,把在主服務(wù)器那里接收到的更新,記錄到自己的二進(jìn)制日志中
 
binlog-ignore-db=information_schema
binlog-ignore-db=mysql
binlog-ignore-db=sys
binlog-ignore-db=performance_schema
#設(shè)置忽略同步的數(shù)據(jù)庫(kù)(這里也可以設(shè)置需要同步的數(shù)據(jù)庫(kù)名)

3.修改完成后

重新啟動(dòng)主服務(wù)器Mysql服務(wù)器

這里具Ubuntu操作系統(tǒng)的例子,在命令行輸入:

service mysql restart

4.為主數(shù)據(jù)庫(kù)中的表加上讀鎖定以避免主數(shù)據(jù)庫(kù)的更改

(如果能保證在數(shù)據(jù)庫(kù)配置期間不對(duì)主數(shù)據(jù)庫(kù)進(jìn)行變更,可以跳過(guò)這一步)

在數(shù)據(jù)庫(kù)上加上讀鎖定。

mysql> FLUSH TABLES WITH READ LOCK;

所有配置完成之后,釋放鎖定(下面這條語(yǔ)句暫時(shí)不執(zhí)行,在主從同步配置完成之后再釋放)

mysql> UNLOCK TABLES;

5.使主從數(shù)據(jù)庫(kù)的數(shù)據(jù)保持一致

有很多種方法可以實(shí)現(xiàn)這一步。

(這里使用了Navicate for Mysql的“數(shù)據(jù)傳輸”功能)

6.獲取主服務(wù)器當(dāng)前的二進(jìn)制日志文件名和位置

在主服務(wù)器MySQL運(yùn)行以下命令:

SHOW MASTER STATUS;

7.在從服務(wù)器上設(shè)置源配置

CHANGE REPLICATION SOURCE TO
SOURCE_HOST='source_host_name',
SOURCE_USER='replication_user_name',
SOURCE_PASSWORD='replication_password',
SOURCE_LOG_FILE='recorded_log_file_name',#上圖的File
SOURCE_LOG_POS=recorded_log_position;#上圖的Position

MySQL 8.0.23之前的版本使用如下語(yǔ)句:

CHANGE MASTER TO
MASTER_HOST='source_host_name',
MASTER_USER='replication_user_name',
MASTER_PASSWORD='replication_password',
MASTER_LOG_FILE='recorded_log_file_name',
MASTER_LOG_POS=recorded_log_position;

8.在從服務(wù)器上啟動(dòng)主從同步

START SLAVE;

9.查看狀態(tài)

SHOW SLAVE STATUS;
 
#如果Slave_IO_State為:Waiting for source to send event
#且Slave_IO_Running和Slave_SQL_Running都為Yes
#則代表主從同步正在正常運(yùn)行

如果出現(xiàn)異?;蝈e(cuò)誤,可以查看錯(cuò)誤信息,再對(duì)應(yīng)解決:

可參考:

MySQL的錯(cuò)誤日志查看

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論