溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

mysql 中replication的作用是什么

發(fā)布時(shí)間:2021-08-04 17:03:39 來(lái)源:億速云 閱讀:175 作者:Leah 欄目:數(shù)據(jù)庫(kù)

今天就跟大家聊聊有關(guān)mysql 中replication的作用是什么,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

1. master mysql 中修改/etc/my.cnf 在mysqld下添加如下兩行:
log-bin=/var/lib/mysql/mysql-bin.log
server-id=1
#binlog-do-db=DB1
#binlog-do-db=DB2     #如果備份多個(gè),重復(fù)設(shè)置這個(gè)選項(xiàng)即可
2.重啟,添加slave replication 用戶
GRANT REPLICATION SLAVE ON *.* TO  IDENTIFIED BY slave_password;
FLUSH PRIVILEGES;
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;
 
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 |      890 |              |                  |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
unlock tables;
記下 file名和binlog的位置.
4.在slave mysql上操作.
編輯從服務(wù)器的配置文件:/etc/my.cnf
[mysqld]
#sync data
server-id=2            #注意不能重復(fù)
master-host=192.168.100.10
master-user=slave
master-password=slave_password
master-port=3306
master-connect-retry=60
#replicate-do-db=DB1
#replicate-do-db=
5.重啟slave mysql .
stop slave;
CHANGE MASTER TO MASTER_HOST=192.168.100.13, MASTER_USER=slave, MASTER_PASSWORD=slave_password, MASTER_LOG_FILE=mysql-bin.000001, MASTER_LOG_POS=890;
start slave;
5.在master mysql上創(chuàng)建數(shù)據(jù)庫(kù)測(cè)試,從庫(kù)是否同步.或者show slave statusG 查看
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
兩個(gè)yes為同步.
補(bǔ)充:
在從服務(wù)器上使用show slave statusG
Slave_IO_Running,為No,
    則說(shuō)明IO_THREAD沒(méi)有啟動(dòng),請(qǐng)執(zhí)行start slave io_thread
    Slave_SQL_Running為No
    則復(fù)制出錯(cuò),查看Last_error字段排除錯(cuò)誤后執(zhí)行start slave sql_thread
    查看Slave_IO_State字段空 //復(fù)制沒(méi)有啟動(dòng)
    Connecting to master//沒(méi)有連接上master
    Waiting for master to send event//已經(jīng)連上
    主服務(wù)器上的相關(guān)命令:
    show master status
    show slave hosts
    show logs
    show binlog events
    purge logs to log_name
    purge logs before date
reset master(老版本flush master)
    set sql_log_bin=
    從服務(wù)器上的相關(guān)命令:
    slave start
    slave stop
    SLAVE STOP IO_THREAD //此線程把master段的日志寫到本地
    SLAVE start IO_THREAD
    SLAVE STOP SQL_THREAD //此線程把寫到本地的日志應(yīng)用于數(shù)據(jù)庫(kù)
    SLAVE start SQL_THREAD
    reset slave
    SET GLOBAL SQL_SLAVE_SKIP_COUNTER
    load data from master
show slave status(SUPER,REPLICATION CLIENT)
    CHANGE MASTER TO MASTER_HOST=, MASTER_PORT=,MASTER_USER=, MASTER_PASSWORD= //動(dòng)態(tài)改變master信息
    PURGE MASTER [before date] 刪除master端已同步過(guò)的日志

看完上述內(nèi)容,你們對(duì)mysql 中replication的作用是什么有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI