已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
mysql 復(fù)制 等于 oracle 邏輯standbymySQL的復(fù)制至少需要兩個(gè)MySQL服務(wù),這些MySQL服務(wù)可以分布在不同的服務(wù)器上,也可以在一臺(tái)服務(wù)器上啟動(dòng)多個(gè)服務(wù)。復(fù)制配置的步驟比較簡單,下面進(jìn)行詳細(xì)介紹:(1)確保主從服務(wù)器上安裝了相同版本的數(shù)據(jù)庫。因?yàn)閺?fù)制的功能在持續(xù)的改進(jìn)中,所以在可能的情況下推薦安裝最新的穩(wěn)定版本。(2)在主服務(wù)器上,設(shè)置一個(gè)復(fù)制使用的賬戶,并授予REPLICATION SLAVE權(quán)限。這里創(chuàng)建一個(gè)復(fù)制用戶rep1,可以從IP為01的主機(jī)進(jìn)行連接:mysql GRANT REPLICATION SLAVE ON *.* TO repl01 IDENTIFIED BY 1234test;Query OK, 0 rows affected (0.00 sec)(3)修改主數(shù)據(jù)庫服務(wù)器的配置文件f,開啟BINLOG,并設(shè)置server-id的值。這兩個(gè)參數(shù)的修改需要重新啟動(dòng)數(shù)據(jù)庫服務(wù)才可以生效。Mf中修改:mysqldlog-bin = /home/mysql/log/mysql-bin.logserver-id = 1(4)在主服務(wù)器上,設(shè)置讀鎖定有效,這個(gè)操作是為了確保沒有數(shù)據(jù)庫操作,以便獲得一個(gè)一致性的快照:mysql flush tables with read lock;Query OK, 0 rows affected (0.00 sec)(5)然后得到主服務(wù)器上當(dāng)前的二進(jìn)制日志名和偏移量值。這個(gè)操作的目的是為了在從數(shù)據(jù)庫啟動(dòng)以后,從這個(gè)點(diǎn)開始進(jìn)行數(shù)據(jù)的恢復(fù)。mysql show master status;+-+-+-+-+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |+-+-+-+-+| mysql-bin.000039 | 102 | | |+-+-+-+-+1row in set (0.00 sec)(6)現(xiàn)在主數(shù)據(jù)庫服務(wù)器已經(jīng)停止了更新操作,需要生成主數(shù)據(jù)庫的備份,備份的方式有很多種,可以直接在操作系統(tǒng)下cp全部的數(shù)據(jù)文件到從數(shù)據(jù)庫服務(wù)器上,也可以通過mysqldump導(dǎo)出數(shù)據(jù)或者使用ibbackup工具進(jìn)行數(shù)據(jù)庫的備份,這些備份操作的步驟已經(jīng)在第27章中有詳細(xì)介紹,這里就不再一一說明。如果主數(shù)據(jù)庫的服務(wù)可以停止,那么直接cp數(shù)據(jù)文件應(yīng)該是最快的生成快照的方法:mysqldb3 db$ tar -cvf data.tar datadata/data/test1/data/test1/db.opt(7)主數(shù)據(jù)庫的備份完畢后,主數(shù)據(jù)庫可以恢復(fù)寫操作,剩下的操作只需要在從服務(wù)器上執(zhí)行:mysql unlock tables;Query OK, 0 rows affected (0.00 sec)(8)將主數(shù)據(jù)庫的一致性備份恢復(fù)到從數(shù)據(jù)庫上。如果是使用.tar打包的文件包,只需要解開到相應(yīng)的目錄即可。(9)修改從數(shù)據(jù)庫的配置文件f,增加server-id參數(shù)。注意server-id的值必須是唯一的,不能和主數(shù)據(jù)庫的配置相同,如果有多個(gè)從數(shù)據(jù)庫服務(wù)器,每個(gè)從數(shù)據(jù)庫服務(wù)器必須有自己唯一的server-id值。f中修改:mysqldserver-id = 2(10)在從服務(wù)器上,使用-skip-slave-start選項(xiàng)啟動(dòng)從數(shù)據(jù)庫,這樣不會(huì)立即啟動(dòng)從數(shù)據(jù)庫服務(wù)上的復(fù)制進(jìn)程,方便我們對(duì)從數(shù)據(jù)庫的服務(wù)進(jìn)行進(jìn)一步的配置:mysqlmaster1 mysql_home$ ./bin/mysqld_safe -skip-slave-start &1 8768mysqlmaster1 mysql_home$ Starting mysqld daemon with databases from /home/mysql/sysdb/data(11)對(duì)從數(shù)據(jù)庫服務(wù)器做相應(yīng)設(shè)置,指定復(fù)制使用的用戶,主數(shù)據(jù)庫服務(wù)器的IP、端口以及開始執(zhí)行復(fù)制的日志文件和位置等,具體語法如下:mysql CHANGE MASTER TO- MASTER_HOST=master_host_name,- MASTER_PORT=port,- MASTER_USER=replication_user_name,- MASTER_PASSWORD=replication_password,- MASTER_LOG_FILE=recorded_log_file_name,- MASTER_LOG_POS=recorded_log_position;例如:CHANGE MASTER TOMASTER_HOST, MASTER_PORT=3306,MASTER_USER=rep,MASTER_PASSWORD=1234test,MASTER_LOG_FILE=bj16-bin.001,MASTER_LOG_POS=58943;Query OK, 0 rows affected (0.10 sec)(12)在從服務(wù)器上,啟動(dòng)slave線程:mysql start slave;Query OK, 0 rows affected (0.00 sec)(13)這時(shí)slave上執(zhí)行show processlist命令將顯示類似如下進(jìn)程:mysql show processlist G* 1. row * Id: 1 User: root Host: localhost db: NULLCommand: Query Time: 0 State: NULL Info: show processlist * 2. row * Id: 2 User: system user Host: db: NULLCommand: Connect Time: 68 State: Waiting for master to send event Info: NULL* 3. row * Id: 3 User: system user Host: db: NULLCommand: Connect Time: 168 State: Has read all relay log; waiting for the slave I/O thread to update it Info: NULL3 rows in set (0.00 sec)這表明slave已經(jīng)連接上master,并開始接受并執(zhí)行日志。(14)也可以測試復(fù)制服務(wù)的正確性,在主數(shù)據(jù)庫上執(zhí)行一個(gè)更新操作,觀察是否在從數(shù)據(jù)庫上同步。在主數(shù)據(jù)庫上test數(shù)據(jù)庫創(chuàng)建一個(gè)測試表,插入數(shù)據(jù):mysql use testDatabase changedmysql show tables;Empty set (0.00 sec)mysql create table repl_test (id int);Query OK, 0 rows affected (0.03 sec)mysql insert into repl_test values(1),(2),(3),(4),(5);Query OK, 5 rows affected (0.00 sec)Records: 5 Duplicates: 0 Warnings: 0(15)在從數(shù)據(jù)庫上檢查新表是否被創(chuàng)建,數(shù)據(jù)是否同步:mysql use testDatabase changedmysql show tables;+-+| Tables_in_test |+-+| repl_test |+-+1 row in set (0.00 sec)mysql select * from repl_test;+-+| id |+-+| 1 | 2 | 3 | 4 | 5 |+-+5 rows in set (0.00 sec)可以看到數(shù)據(jù)可以正確同步到從數(shù)據(jù)庫上,復(fù)制服務(wù)配置成功完成。試驗(yàn)截圖:1. 確保mysql版本一樣2. 在主服務(wù)器上,設(shè)置一個(gè)復(fù)制使用的賬戶,并授予REPLICATION SLAVE權(quán)限3.server-id主從要不一樣修改主數(shù)據(jù)庫服務(wù)器的配置文件f,開啟BINLOG,并設(shè)置server-id的值。這兩個(gè)參數(shù)的修改需要重新啟動(dòng)數(shù)據(jù)庫服務(wù)才可以生效。Mf中修改:mysqldlog-bin = /home/mysql/log/mysql-bin.logserver-id = 14. 在主服務(wù)器上,設(shè)置讀鎖定有效,這個(gè)操作是為了確保沒有數(shù)據(jù)庫操作,以便獲得一個(gè)一致性的快照:mysql flush tables with read lock;Query OK, 0 rows affected (0.00 sec)5. 然后得到主服務(wù)器上當(dāng)前的二進(jìn)制日志名和偏移量值。這個(gè)操作的目的是為了在從數(shù)據(jù)庫啟動(dòng)以后,從這個(gè)點(diǎn)開始進(jìn)行數(shù)據(jù)的恢復(fù)。mysql show master status;6. 現(xiàn)在主數(shù)據(jù)庫服務(wù)器已經(jīng)停止了更新操作,需要生成主數(shù)據(jù)庫的備份,備份的方式有很多種,可以直接在操作系統(tǒng)下cp全部的數(shù)據(jù)文件到從數(shù)據(jù)庫服務(wù)器上,也可以通過mysqldump導(dǎo)出數(shù)據(jù)或者使用ibbackup工具進(jìn)行數(shù)據(jù)庫的備份,這些備份操作的步驟已經(jīng)在第27章中有詳細(xì)介紹,這里就不再一一說明。如果主數(shù)據(jù)庫的服務(wù)可以停止,那么直接cp數(shù)據(jù)文件應(yīng)該是最快的生成快照的方法:mysqldb3 db$ tar -cvf data.tar datadata/data/test1/data/test1/db.opt7. 主數(shù)據(jù)庫的備份完畢后,主數(shù)據(jù)庫可以恢復(fù)寫操作,剩下的操作只需要在從服務(wù)器上執(zhí)行:mysql unlock tables;Query OK, 0 rows affected (0.00 sec)8.從數(shù)據(jù)庫,查看數(shù)據(jù)文件位置拷貝過去解壓9.修改從數(shù)據(jù)庫server_id 并且重啟數(shù)據(jù)庫查看server_id10. 對(duì)從數(shù)據(jù)庫服務(wù)器做相應(yīng)設(shè)置,指定復(fù)制使用的用戶,主數(shù)據(jù)庫服務(wù)器的IP、端口以及開始執(zhí)行復(fù)制的日志文件和位置等,具體語法如下:mysql CHANGE MASTER TO- MASTER_HOST=master_host_name,- MASTER_PORT=port,- MASTER_USER=replication_user_name,- MASTER_PASSWORD=replication_password,- MASTER_LOG_FILE=recorded_log_file_name,- MASTER_LOG_POS=recorded_log_position;例如:CHANGE MASTER TOMASTER_HOST, MASTER_PORT=3306,MASTER_USER=rep,MASTER_PASSWORD=1234test,M
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 美食家常菜課程設(shè)計(jì)
- 2025年讀書的演講稿范文(2篇)
- 二零二五年度農(nóng)業(yè)技術(shù)出口許可協(xié)議3篇
- 醫(yī)務(wù)人員職業(yè)安全保護(hù)制度范文(2篇)
- 2025年度線上線下銷售合同規(guī)范化管理實(shí)施細(xì)則(2025版)
- 融合課程設(shè)計(jì)案例
- 單臂吊的安全技術(shù)操作規(guī)程(2篇)
- 二零二五年度智能家居系統(tǒng)智能語音交互服務(wù)合同3篇
- 牛肉拉面課程設(shè)計(jì)理念
- 2025年滬教版四年級(jí)語文下冊(cè)階段測試試卷含答案
- 8.臺(tái)球助教速成培訓(xùn)手冊(cè)0.9萬字
- 無縫鋼管焊接作業(yè)指導(dǎo)書(1)
- 零缺陷與質(zhì)量成本
- 網(wǎng)吧企業(yè)章程范本
- 安徽省書法家協(xié)會(huì)會(huì)員登記表
- 阿特拉斯基本擰緊技術(shù)ppt課件
- 五格數(shù)理解釋及吉兇對(duì)照
- 婚姻狀況聲明書
- 新課程理念下的班主任工作藝術(shù)
- 領(lǐng)導(dǎo)激勵(lì)藝術(shù)教材
- 水泥罐抗傾覆驗(yàn)算7頁
評(píng)論
0/150
提交評(píng)論