創新互聯建站專注于樊城企業網站建設,響應式網站,商城網站建設。樊城網站建設公司,為樊城等地區提供建站服務。全流程按需制作,專業設計,全程項目跟蹤,創新互聯建站專業和態度為您提供的服務
注意事項:
主庫全庫備份完查看該文件binlog pos標記位
文件名為:binlog_pos_innodb 記錄當時MySQL備份時主庫的標記為
環境說明:
兩臺安裝在CentOS7.4的MySQL5.7.22服務器:master 和 slave
Master服務器:
IP:192.168.80.51
Port:3306
Slave 服務器:
IP:192.168.80.52
Port:3306
配置步驟:
1、 修改master的my.cnf配置文件,開啟記錄日志并設置server-id。
2、 修改slave的my.cnf配置文件,開啟讀取二進制日志并設置server-id。
3、 在slave上啟動slave與master的連接。
4、 檢查是否配置成功與排錯。
1、 master 庫my.cnf配置文件,在[mysqld]下添加如下配置:
A SERVER:
[client]
user = pmostc
password = pmostc
port = 3306
socket = /tmp/mysql.sock
[mysqld]
user = mysql
port = 3306
socket = /tmp/mysql.sock
basedir = /workspace/app/mysql/
datadir = /workspace/data/mysql/
tmpdir = /tmp
pid-file = /workspace/data/mysql/mysql.pid
bind-address = 127.0.0.1
log-bin=mysql-bin
server-id=1
log-error=mysqld.log
replicate-ignore-table=database.table
log-slave-updates = 1
說明:
log-bin 配置的是開啟二進制日志,并將日志寫在配置的路徑上。記錄的日志將以master-bin.000001 的方式進行記錄。
log-bin-index 配置的是二進制日志記錄文件的目錄。該文件中每一行都是二進制日志文件的路徑。
server-id是該MySQL服務器的服務ID,用于區分在主從配置中的其他服務器。
配置成功后,重啟mysqld服務。
注意:如果不定義log-bin的文件名,則會以hostname主機名命名,一旦主機名修改,則會因為找不見二進制文件報錯。所以最好還是顯示指定文件名。
2、 slave 從my.cnf配置文件,在[mysqld]下添加如下配置:
[client]
user = pmostc
password = pmostc
port = 3306
socket = /tmp/mysql.sock
[mysqld]
user = root
port = 3306
socket = /tmp/mysql.sock
basedir = /workspace/app/mysql/
datadir = /workspace/data/mysql/
tmpdir = /tmp
pid-file = /workspace/data/mysql/mysql.pid
bind-address = 127.0.0.1
server_id = 1921688052
binlog_format=mixed
relay-log = relay-bin
relay-log-index = relay-bin.index
report-host=
report-port=22988
log-bin=mysql-bin
log-error=mysqld.log
replicate-ignore-table=database.table
log-slave-updates = 1
server-id和master意義一樣,用于區分不同的mysql服務器。
relay-log用以記錄收到的中繼二進制日志。relay-log-index用以保存收到的日志路徑索引。如果不顯示指定文件名,則以hostname值命名。
保存后可以重啟mysqld服務。
3、全量備份主數據庫
mysqldump -uroot -p123456 database > database.sql
4、在從庫恢復主庫全量備份數據
mysqldump -uroot -p123456 database < database.sql
恢復完數據庫并重啟mysql服務
5、 在slave上啟動slave與master的連接。
在slave上登錄到mysql,在mysql>:下進行操作。
3.1、mysql>stop slave; //停止slave。
配置標記為同步
mysql> CHANGE MASTER TO MASTER_HOST='192.168.80.51',
-> MASTER_USER='repl',
-> MASTER_PASSWORD='123456',
-> MASTER_LOG_FILE='mysql-bin.000001',
-> MASTER_LOG_POS=0;
3.3、mysql>start slave;
4、檢查是否配置成功與排錯
mysql>show slave status \G;
在打印出來的狀態下,查看以下兩個參數的值:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
如果這兩個參數的值都是yes,則運行正常,可以在master數據庫上添加一個數據庫或者添加一張表,檢查slave數據庫上是否存在。
如果 這兩個參數有任何一個不是 Yes,則說明存在問題。可以查看slave上的數據庫錯誤日志文件查看錯誤原因。
Slave_IO_State, Slave_IO_Running, 和Slave_SQL_Running表明slave還沒有開始復制過程。
常見的錯誤原因:
1、 server-id 一致。
2、 用戶權限不夠。需要的權限包括:
REPLICATION SLAVE,RELOAD,CREATE USER,SUPER。
GRANT REPLICATION SLAVE,RELOAD,CREATE USER,SUPER ON . TO {USER}@{IP_ADDR} WITH GRANT OPTION;
grant replication slave,replication client on . to slave@'192.168.80.52' identified by "123456";
當前題目:mysql5.7主從復制
網站鏈接:http://vcdvsql.cn/article16/pejogg.html
成都網站建設公司_創新互聯,為您提供企業建站、Google、網站制作、定制網站、網站導航、ChatGPT
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯