主頁(yè) > 知識(shí)庫(kù) > Mysql主從數(shù)據(jù)庫(kù)(Master/Slave)同步配置與常見(jiàn)錯(cuò)誤

Mysql主從數(shù)據(jù)庫(kù)(Master/Slave)同步配置與常見(jiàn)錯(cuò)誤

熱門(mén)標(biāo)簽:溫州瑞安400電話怎么申請(qǐng) 百度地圖標(biāo)注后不顯示 昆明電信400電話辦理 電銷(xiāo)機(jī)器人 行業(yè) 電銷(xiāo)機(jī)器人各個(gè)細(xì)節(jié)介紹 俄國(guó)地圖標(biāo)注app 南昌高頻外呼系統(tǒng)哪家公司做的好 電話機(jī)器人市場(chǎng)趨勢(shì) 淄博400電話申請(qǐng)

隨著訪問(wèn)量的增加,對(duì)于一些比較耗時(shí)的數(shù)據(jù)庫(kù)讀取操作,一般采用將寫(xiě)入與讀取操作分開(kāi)來(lái)緩解數(shù)據(jù)庫(kù)的壓力,數(shù)據(jù)庫(kù)引擎一般采用Master/Slave架構(gòu)。實(shí)現(xiàn)mysql服務(wù)器的主從配置,可以實(shí)現(xiàn)讀寫(xiě)分離,另外在主數(shù)據(jù)庫(kù)崩潰后可以從備用數(shù)據(jù)庫(kù)中恢復(fù)數(shù)據(jù)以不至于網(wǎng)站中斷訪問(wèn)。下面簡(jiǎn)單說(shuō)下mysql主從服務(wù)器配置的過(guò)程。

首先需要在同一個(gè)局域網(wǎng)內(nèi)的兩臺(tái)機(jī)器(當(dāng)然也可以用一臺(tái)機(jī)器虛擬兩臺(tái)機(jī)器出來(lái)),都安裝上mysql服務(wù)。

主機(jī)A: 192.168.1.100

從機(jī)B: 192.168.1.101

可以有多臺(tái)從機(jī)。

1、先登錄主機(jī) A,執(zhí)行如下命令賦予從機(jī)權(quán)限,如果有多臺(tái)叢機(jī),就執(zhí)行多次:

mysql>GRANT REPLICATION SLAVE ON *.* TO 'backup'@'192.168.1.101' IDENTIFIED BY '123456';

2、 打開(kāi)主機(jī)A的my.cnf,輸入如下配置參數(shù):

server-id = 1 #主機(jī)標(biāo)示,整數(shù)
log_bin = /var/log/mysql/mysql-bin.log #確保此文件可寫(xiě)
read-only =0 #主機(jī),讀寫(xiě)都可以
binlog-do-db =test #需要備份數(shù)據(jù),多個(gè)寫(xiě)多行
binlog-ignore-db =mysql #不需要備份的數(shù)據(jù)庫(kù),多個(gè)寫(xiě)多行

3、打開(kāi)從機(jī)B的my.cnf,輸入如下配置參數(shù):

server-id = 2
log_bin = /var/log/mysql/mysql-bin.log
master-host =192.168.1.100
master-user =backup
master-pass =123456
master-port =3306
master-connect-retry=60 #如果從服務(wù)器發(fā)現(xiàn)主服務(wù)器斷掉,重新連接的時(shí)間差(秒)
replicate-do-db =test #只復(fù)制某個(gè)庫(kù)
replicate-ignore-db=mysql #不復(fù)制某個(gè)庫(kù)

4、同步數(shù)據(jù)庫(kù)

進(jìn)過(guò)以上的配置,分別重啟主機(jī)A和從機(jī)B,即可自動(dòng)實(shí)現(xiàn)同步。

5、驗(yàn)證

在主機(jī)A中,mysql>show master status\G;

能看到大致這些內(nèi)容

File: mysql-bin.000001
Position: 1374
Binlog_Do_DB: test
Binlog_Ignore_DB: mysql

在從機(jī)B中,mysql>show slave status\G;

顯示內(nèi)容如下圖所示:

可以看到Slave_IO_State項(xiàng)為Waiting for master to send event且紅圈中兩項(xiàng)皆為Yes,那么基本上可以確定是配置成功了

另外可以在主機(jī)A中,做一些INSERT, UPDATE, DELETE 操作,看看主機(jī)B中,是否已經(jīng)被修改。

常見(jiàn)錯(cuò)誤

1、master發(fā)生故障,經(jīng)修復(fù)后啟動(dòng)后,slave無(wú)法與master同步

報(bào)錯(cuò):Got fatal error 1236 from master when reading data from binary log

原因:master重啟后,mysql的binlog會(huì)重新生成,相應(yīng)的記錄位置會(huì)改變

解決方法:

-master:

mysql > flush logs;
mysql > show master status;

記錄下File和Position值

-slave:

mysql > stop slave;
mysql > CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000049',MASTER_LOG_POS=1359;
mysql > start slave;
mysql > show slave status\G;

2、slave發(fā)生故障,設(shè)置正確,但是無(wú)法初始化

報(bào)錯(cuò):ERROR 1201 (HY000): Could not initialize master

解決方法:

-master:

mysql > flush logs;
mysql > show master status;

記錄下File和Position值

-slave:

mysql > reset slave;
mysql > change master to master_host='192.168.10.100',master_user='test',master_password='123456',master_log_file='mysql-bin.000004',master_log_pos=106;
mysql > start slave;
mysql > show slave status\G;

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

您可能感興趣的文章:
  • mysql同步問(wèn)題之Slave延遲很大優(yōu)化方法
  • 解決MySQL中的Slave延遲問(wèn)題的基本教程
  • MySQL中slave監(jiān)控的延遲情況分析
  • mysql 主從數(shù)據(jù)不一致,提示: Slave_SQL_Running: No 的解決方法
  • 記一次MySQL Slave庫(kù)恢復(fù)實(shí)戰(zhàn)記錄
  • MySQL中slave_exec_mode參數(shù)詳解
  • MySQL5.6 數(shù)據(jù)庫(kù)主從同步安裝與配置詳解(Master/Slave)
  • MySQL Slave 觸發(fā) oom-killer解決方法
  • MySQL slave 延遲一列 外鍵檢查和自增加鎖

標(biāo)簽:洛陽(yáng) 吐魯番 安徽 拉薩 嘉峪關(guān) 甘南 葫蘆島

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Mysql主從數(shù)據(jù)庫(kù)(Master/Slave)同步配置與常見(jiàn)錯(cuò)誤》,本文關(guān)鍵詞  Mysql,主從,數(shù)據(jù)庫(kù),Master,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Mysql主從數(shù)據(jù)庫(kù)(Master/Slave)同步配置與常見(jiàn)錯(cuò)誤》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于Mysql主從數(shù)據(jù)庫(kù)(Master/Slave)同步配置與常見(jiàn)錯(cuò)誤的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章