溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL主從復制環(huán)境中如何添加新數(shù)據(jù)庫

發(fā)布時間:2021-07-26 10:45:57 來源:億速云 閱讀:105 作者:Leah 欄目:數(shù)據(jù)庫

這篇文章將為大家詳細講解有關MySQL主從復制環(huán)境中如何添加新數(shù)據(jù)庫,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

主從復制基本步驟

首先,我們列舉一下主從復制的基本步驟,(MySQL主從首先需要在各自服務器配置好)。

(1)復制數(shù)據(jù)庫

mysqldump --master-data --single-transaction -R --databases [db_name] | gzip -9 - | pv > all-db-with-master-data.sql.gz

注意:innodb用 –single-transaction, myisam需要用 –lock-all-tables。

(2)復制,導入數(shù)據(jù)

pv < all-db-with-master-data.sql.gz | zcat | mysql

(3)啟動slave數(shù)據(jù)庫

slave start

注意:切換到主的語句已經在導出的sql語句里面了,注意查看下面的代碼片段。

change master to master_log_file=&rsquo;(binlog  name in relay_master_log_file)&rsquo;, master_log_pos=(exec_master_log_pos  number)

那么,在現(xiàn)有的主從復制結構中,如何增加一個新的數(shù)據(jù)庫進去?我們繼續(xù)往下看。

添加數(shù)據(jù)庫

比如我們要增加一個數(shù)據(jù)庫在master服務器上,比如,名為newdb的數(shù)據(jù)庫。具體操作如下:

(1)從服務上,停掉slave數(shù)據(jù)庫。

stop slave;

(2)主服務器上,導出新數(shù)據(jù)庫

mysqldump --master-data --single-transaction -R --databases newdb > newdb.sql

(3)修改主服務器my.cnf文件

主服務器上,修改my.cnf文件,添加新庫到binlog-do-db參數(shù),重啟mysql。

(4)查找當前的日志文件以及位置

在導出的newdb.sql里面查找當前的日志文件以及位置(change master to &hellip;)

然后讓slave服務器執(zhí)行到這個位置。

start slave until MASTER_LOG_FILE="mysql-bin.000001", MASTER_LOG_POS=1222220;

其中MASTER_LOG_FILE以及MASTER_LOG_POS在導出的數(shù)據(jù)庫newdb.sql頂部位置查找。

(5)導入新庫到從服務器上

mysql < newdb.sql

(6)啟動從服務器

start slave

關于MySQL主從復制環(huán)境中如何添加新數(shù)據(jù)庫就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

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

AI