久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Mysql搭建主從復制的方法

132次閱讀
沒有評論

共計 3231 個字符,預計需要花費 9 分鐘才能閱讀完成。

自動寫代碼機器人,免費開通

本篇內容主要講解“Mysql 搭建主從復制的方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓丸趣 TV 小編來帶大家學習“Mysql 搭建主從復制的方法”吧!

主庫:192.168.1.1

從庫:192.168.1.2

數據文件存放位置:/data/datafile

待同步數據庫:repdb

一. 設置 MASTER

1. 修改 my.cnf

# vi /etc/my.cnf

server-id = 1

log-bin

binlog-ignore-db=mysql

2. 賦予 SLAVE 權限帳號, 允許用戶在 SLAVE 上 LOAD TABLE 和 LOAD DATA

mysql GRANT FILE,SELECT,REPLICATION SLAVE ON *.* TO user_rep@192.168.1.2 IDENTIFIED BY rep123

3. 鎖主庫表

mysql FLUSH TABLES WITH READ LOCK;

4. 顯示主庫信息

記錄 File 和 Position, 從庫設置將會用到

mysql SHOW MASTER STATUS G;

*************************** 1. row ***************************

File: mysql-bin.000030

Position: 391156558

Binlog_Do_DB:

Binlog_Ignore_DB:

5. 另開一個終端, 打包主庫

/data/datafile/ # tar cvf repdb.tar repdb

二. 設置 SLAVE

1. 傳輸拿到主庫包, 解包

/data/datafile/ # scp 192.168.1.1:/data/datafile/repdb.tar .

/data/datafile # tar xvf repdb.tar

2. 解鎖主庫表

mysql UNLOCK TABLES;

3. 查看修改 repdb 文件夾權限

/data/datafile # chown mysql:mysql repdb -R

4. 修改 my.cnf

# vi /etc/my.cnf

#slave

server-id=2

master-host=192.168.1.1

master-user=user_rep

master-password=rep123

master-port=3306

replicate-do-db=repdb

5. 驗證連接 MASTER

# mysql -h292.168.1.1 -uuser_rep -prep123

mysql show grants;

+——————————————————————————+
| Grants for user_rep@192.168.1.2 |
+——————————————————————————+
| GRANT SELECT, FILE, REPLICATION SLAVE ON *.* TO user_rep@192.168.1.2 IDENTIFIED BY
PASSWORD *9FF2C222F44C7BBA5CC7E3BE8573AA4E1776278C |
+——————————————————————————+

6. 本地登錄 mysql

設置連接 MASTER MASTER_LOG_FILE 為主庫的 File

MASTER_LOG_POS 為主庫的 Position

mysql CHANGE MASTER TO

MASTER_HOST= 192.168.1.1 ,

MASTER_USER= user_rep ,

MASTER_PASSWORD= rep123 ,

MASTER_LOG_FILE= mysql-bin.000030 ,

MASTER_LOG_POS=391156558;

7. 啟動 SLAVE 服務

mysql slave start;

8. 本地登錄 mysql, 查看 SLAVE 狀態

mysql SHOW SLAVE STATUS G;

*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.1.1
Master_User: user_rep
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: binlog.000001
Read_Master_Log_Pos: 98
Relay_Log_File: relay.000003
Relay_Log_Pos: 232
Relay_Master_Log_File: binlog.000001
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 98
Relay_Log_Space: 232
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 0

Slave_IO_Running 和 Slave_SQL_Running 兩列的值都為 Yes , 表明 Slave 的 I/O 和 SQL 線程都在正常運行.

到此主從庫搭建成功. [@more@]

從庫 SLAVE 啟動問題

由于一些錯誤操作導致 CHANGE MASTER 和 SLAVE 服務無法啟動, 系統報錯如下:

Could not initialize master info structure; more error messages can be found in the MySQL error log.

無法初始化 master info 結構;MySQL 錯誤日志記錄了更詳細的錯誤信息.

解決方法:

1. 查看 MySQL 錯誤日志, 查看原因.

如: 同步的上一個 Position 是多少.

很多情況下無法啟動服務是由于 mysql 識別的同步始終停留在上一個 Position 上.

2. 查看 master.info 和 relay-log.info

master.info 記錄 MASTER 相關信息

14
mysql-bin.000030
391156558
192.168.1.1
user_rep
rep123
3306
60
0

relay-log.info 記錄當前同步日志信息

235
mysql-bin.000030
391156558

3. 停止 myslq 服務, 刪除 master.info 和 relay-log.info

# service mysql stop

/data/datafile/ # rm master.info

/data/datafile/ # rm relay-log.info

4. 啟動 mysql 服務

# service mysql start

5. 重新 CHANGE MASTER, 重新啟動 SLAVE 服務.

問題應該就可以解決了.

到此,相信大家對“Mysql 搭建主從復制的方法”有了更深的了解,不妨來實際操作一番吧!這里是丸趣 TV 網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向 AI 問一下細節

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-12-04發表,共計3231字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 民勤县| 莱阳市| 图片| 康保县| 沈丘县| 云浮市| 綦江县| 普安县| 万年县| 彭泽县| 志丹县| 香格里拉县| 丰城市| 灌云县| 勐海县| 青田县| 彭山县| 东丰县| 大冶市| 临泽县| 北票市| 孟州市| 余庆县| 贵南县| 廊坊市| 浦江县| 林甸县| 龙山县| 郧西县| 封丘县| 衡山县| 普兰县| 丹凤县| 清涧县| 平塘县| 改则县| 长宁县| 漳州市| 西乌| 郁南县| 甘德县|