使用之前,確定主伺服器和從伺服器的資料一樣,要不然在同步過程會出問題
一、主伺服器
1.首先要開啟bin-log,8.0是預設開啟的
//檢視是否已經開啟的方法
show variables = "log_bin";
2.在伺服器配置檔案設定server-id
server-id可以随便設定,但不能和從伺服器相同
[mysqld]
server-id=254
3.建立一個資料庫賬号,供從伺服器使用
//建立使用者
create user slave identified by "a123456";
//給該使用者授replication slave權限
grant replication slave on *.* to slave;
4.重新開機mysql
二、從伺服器
1.在配置檔案設定一個server-id
2.查詢主伺服器的bin-log狀态
3.執行sql語句
CHANGE MASTER TO
MASTER_HOST = '47.107.117.80',
MASTER_USER = 'slave',
MASTER_PASSWORD = '密碼',
MASTER_PORT = 3306,
MASTER_LOG_FILE='binlog.000016',
MASTER_LOG_POS=338;
4.重新開機mysql
維護常用操作
show slave status \G//從伺服器使用,用于檢視同步狀态
show slave hosts//主伺服器使用,用于檢視有哪些從伺服器
show master status//檢視bin-log狀态
show binary logs//檢視bin-log檔案清單
stop slave //停止同步
start slave //啟動
show master logs //檢視bin-log檔案清單
[mysqld]
#在從伺服器設定。指定隻同步某個資料庫,如有多個,可以重複設定。不設則同步全部
replicate-do-db=zzz
#在從伺服器設定。指定隻同步某個資料庫的某個表,如有多個,可以重複設定。不設則同步全部
replicate-do-table=db.tb