基于centos6的MySQL5.7.13主從部署(二)
創(chuàng)新互聯(lián)是一家專(zhuān)注于網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作與策劃設(shè)計(jì),永登網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:永登等地區(qū)。永登做網(wǎng)站價(jià)格咨詢(xún):18982081108
一、部署主mysql
說(shuō)明:mysql1是主機(jī),mysql2是備機(jī)。
創(chuàng)建庫(kù)
[root@mysql1 ~]# mysql -uroot -p123456
mysql> create database shiyan;
mysql> exit
Bye
將mysql庫(kù)拷貝到shiyan庫(kù)中
[root@mysql1 ~]# mysqldump -uroot -p123456 mysql > 234.sql
[root@mysql1 ~]# mysql -uroot -p123456 shiyan < 234.sql
查看是否拷貝成功
[root@mysql1 ~]# mysql -uroot -p123456
mysql> use shiyan;
mysql> show tables;
修改主my.cnf配置文件
[root@mysql1 ~]# vim /etc/my.cnf
修改內(nèi)容如下:
21 server_id = 1 # 設(shè)置1為主,2為從,注意主從的id不要相同
15 log_bin = mysql-bin # 打開(kāi)注釋?zhuān)挚梢愿模潜仨毢蛷膸?kù)配置相同名字
16 binlog-ignore-db = mysql # 不允許mysql庫(kù)同步
17 binlog-do-db = shiyan #允許shiyan庫(kù)同步
保存,退出!
說(shuō)明:
binlog-do-db=db1,db2 //類(lèi)似白名單,將需要同步的庫(kù)添進(jìn)去
binlog-ignore-db=db3 //類(lèi)似黑名單,將不需要同步的庫(kù)列出來(lái)
重啟mysqld服務(wù)
[root@mysql1 ~]# /etc/init.d/mysqld restart
[root@mysql1 ~]# ll /usr/local/mysql/data
可以看到兩個(gè)以mysql-bin開(kāi)頭的文件,這個(gè)就是它的log-bin!
做授權(quán)相關(guān)的,做主從一定要有一個(gè)專(zhuān)門(mén)傳輸mysql-bin(log-bin)的用戶
[root@mysql1 ~]# mysql -uroot -p123456
mysql> grant replication slave on *.* to 'repl'@'192.168.100.128' identified by '123456';
說(shuō)明:
上面命令的意思是:授權(quán)從機(jī)(slave)IP:192.168.100.128,能以賬戶repl,密碼123456遠(yuǎn)程登入到主機(jī)復(fù)制的權(quán)限!
授權(quán)(grant)格式:grant權(quán)限(select查詢(xún)、insert插入、update更新、delete刪除)on數(shù)據(jù)庫(kù)對(duì)象(表、鏈) to用戶
刷新權(quán)限
[root@mysql1 ~]# mysql -u root -p123456
mysql> flush privileges;
表的讀鎖死
mysql> flush tables with read lock;
說(shuō)明:為了防止在操作過(guò)程中數(shù)據(jù)更新,導(dǎo)致數(shù)據(jù)不一致,所以需要先刷新數(shù)據(jù)并鎖定數(shù)據(jù)庫(kù):flush tables with read lock。
讀一個(gè)數(shù)據(jù)
mysql> show master status;
登入數(shù)據(jù)庫(kù)驗(yàn)證(在從機(jī)上)
[root@mysql2 ~]# mysql -urepl -h292.168.100.129 -p123456
二、部署從mysql2
編輯從mysql2配置文件
[root@mysql2 ~]# vim /etc/my.cnf
修改內(nèi)容如下:
21 server_id = 2 # 設(shè)置1為主,2為從,注意主從的id不要相同
15 log_bin = mysql-bin # 打開(kāi)注釋?zhuān)挚梢愿模潜仨毢蛷膸?kù)配置相同名字
16 binlog-ignore-db = mysql # 不允許mysql庫(kù)同步
17 binlog-do-db = shiyan #允許shiyan庫(kù)同步
保存,退出!
說(shuō)明:
binlog-do-db=db1,db2 //類(lèi)似白名單,將需要同步的庫(kù)添進(jìn)去
binlog-ignore-db=db3 //類(lèi)似黑名單,將不需要同步的庫(kù)列出來(lái)
重啟mysql服務(wù)
[root@mysql2 ~]# /etc/init.d/mysqld restart
[root@mysql2 ~]# ll /usr/local/mysql/data
在mysql2中創(chuàng)建shiyan庫(kù)
[root@mysql2 ~]# mysql -uroot -p123456
mysql> create database shiyan;
Query OK, 1 row affected (0.01 sec)
將主庫(kù)備份的234.sql文件導(dǎo)入到從庫(kù)中的shiyan庫(kù)中
[root@mysql1 ~]# scp 234.sql root@192.168.100.128:/root/
報(bào)錯(cuò):
解決方法:
[root@mysql1 ~]# yum install openssh-clients -y
說(shuō)明:openssh-clients包在主從服務(wù)器上都要安裝!
[root@mysql2 ~]# mysql -uroot -p123456 shiyan < 234.sql
查看下shiyan庫(kù)
mysql> use shiyan;
mysql> show databases shiyan;
停止(從)mysql2
[root@mysql2 ~]# mysql -uroot -p123456
mysql> stop slave;
Query OK, 0 rows affected, 1 warning (0.00 sec)
指定主庫(kù)信息(非常重要的一步)在從庫(kù)上操作!
mysql> change master to master_host='192.168.100.129',master_port=3306,master_user='repl',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=603;
說(shuō)明:
這里的master_host為主庫(kù)的ip地址,特別注意語(yǔ)法,數(shù)字不用加單引號(hào)!
master_log_file:就是在主庫(kù)中通過(guò)show master status;查看出來(lái)的file部分;
master_log_pos:為主庫(kù)中查看出來(lái)的position部分。
啟動(dòng)(從)mysql2,在mysql2上操作!
mysql> start slave;
檢測(cè)同步是否成功
說(shuō)明:在mysql2上操作
mysql> show slave status\G;
注意:Slave_IO_Running和Slave_SQL_Running必須都是yes!
至此,兩臺(tái)數(shù)據(jù)庫(kù)服務(wù)器已經(jīng)是同步狀態(tài),下一步就要進(jìn)行同步測(cè)試!
擴(kuò)展:
如果在mysql2做同步檢查時(shí)出現(xiàn)如下錯(cuò)誤:
可以看到Slave_IO_Running:NO
解決方法:
先查看mysql錯(cuò)誤日志
[root@mysql2 ~]# cd /usr/local/mysql/data
[root@mysql2 data]# cat mysqld.err
原因分析:
mysql5.7(5.6也有)的復(fù)制引入了uuid的概念,各個(gè)復(fù)制結(jié)構(gòu)中的server_uuid得保證不一樣,但是查看到直接copy data文件夾后server_uuid是相同的,show variables like '%server_uuid%';
解決方法:
找到data文件夾下的auto.cnf文件,修改里面的uuid值,保證各個(gè)db的uuid不一樣,重啟db即可!
名稱(chēng)欄目:基于centos6的mysql5.7.13主從部署(二)
URL標(biāo)題:http://chinadenli.net/article16/gshjgg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動(dòng)態(tài)網(wǎng)站、品牌網(wǎng)站制作、域名注冊(cè)、網(wǎng)站收錄、外貿(mào)建站、軟件開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)