真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

基于centos6的mysql5.7.13主從部署(二)

基于centos6的MySQL5.7.13主從部署(二)

創(chuàng)新互聯(lián)是一家專注于網(wǎng)站設(shè)計制作、成都網(wǎng)站制作與策劃設(shè)計,永登網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:永登等地區(qū)。永登做網(wǎng)站價格咨詢:18982081108

一、部署主mysql
說明:mysql1是主機,mysql2是備機。

  1. 創(chuàng)建庫

    [root@mysql1 ~]# mysql -uroot -p123456

    mysql> create database shiyan;

    mysql> exit

    Bye

  2. 將mysql庫拷貝到shiyan庫中

    [root@mysql1 ~]# mysqldump -uroot -p123456 mysql > 234.sql

    [root@mysql1 ~]# mysql -uroot -p123456  shiyan < 234.sql

    基于centos6的mysql5.7.13主從部署(二)

  3. 查看是否拷貝成功

    [root@mysql1 ~]# mysql -uroot -p123456

    mysql> use shiyan;

    mysql> show tables;

    基于centos6的mysql5.7.13主從部署(二)

  4. 修改主my.cnf配置文件

    [root@mysql1 ~]# vim /etc/my.cnf

    修改內(nèi)容如下:

    21  server_id = 1   # 設(shè)置1為主,2為從,注意主從的id不要相同

    15 log_bin = mysql-bin   # 打開注釋,名字可以更改,但是必須和從庫配置相同名字

    16  binlog-ignore-db = mysql   # 不允許mysql庫同步

    17  binlog-do-db = shiyan     #允許shiyan庫同步

    保存,退出!

    基于centos6的mysql5.7.13主從部署(二)

  5. 說明:

    binlog-do-db=db1,db2 //類似白名單,將需要同步的庫添進去

    binlog-ignore-db=db3 //類似黑名單,將不需要同步的庫列出來

  6. 重啟mysqld服務(wù)

    [root@mysql1 ~]# /etc/init.d/mysqld restart

    [root@mysql1 ~]# ll /usr/local/mysql/data

    基于centos6的mysql5.7.13主從部署(二)

    基于centos6的mysql5.7.13主從部署(二)

    可以看到兩個以mysql-bin開頭的文件,這個就是它的log-bin!

  7. 做授權(quán)相關(guān)的,做主從一定要有一個專門傳輸mysql-bin(log-bin)的用戶

    [root@mysql1 ~]# mysql -uroot -p123456

    mysql> grant replication slave on *.* to 'repl'@'192.168.100.128' identified by '123456';

    基于centos6的mysql5.7.13主從部署(二)

    說明:

    上面命令的意思是:授權(quán)從機(slave)IP:192.168.100.128,能以賬戶repl,密碼123456遠程登入到主機復(fù)制的權(quán)限!

    授權(quán)(grant)格式:grant權(quán)限(select查詢、insert插入、update更新、delete刪除)on數(shù)據(jù)庫對象(表、鏈) to用戶

  8. 刷新權(quán)限

    [root@mysql1 ~]# mysql -u root -p123456

    mysql> flush privileges;

  9. 表的讀鎖死

    mysql> flush tables with read lock;

    說明:為了防止在操作過程中數(shù)據(jù)更新,導(dǎo)致數(shù)據(jù)不一致,所以需要先刷新數(shù)據(jù)并鎖定數(shù)據(jù)庫:flush tables with read lock。

  10. 讀一個數(shù)據(jù)

    mysql> show master status;

    基于centos6的mysql5.7.13主從部署(二)

  11. 登入數(shù)據(jù)庫驗證(在從機上)

    [root@mysql2 ~]# mysql -urepl -h292.168.100.129 -p123456

二、部署從mysql2

  1. 編輯從mysql2配置文件

    [root@mysql2 ~]# vim /etc/my.cnf

    修改內(nèi)容如下:

    21  server_id = 2   # 設(shè)置1為主,2為從,注意主從的id不要相同

    15 log_bin = mysql-bin   # 打開注釋,名字可以更改,但是必須和從庫配置相同名字

    16  binlog-ignore-db = mysql   # 不允許mysql庫同步

    17  binlog-do-db = shiyan     #允許shiyan庫同步

    保存,退出!

    基于centos6的mysql5.7.13主從部署(二)

  2. 說明:

    binlog-do-db=db1,db2 //類似白名單,將需要同步的庫添進去

    binlog-ignore-db=db3 //類似黑名單,將不需要同步的庫列出來

  3. 重啟mysql服務(wù)

    [root@mysql2 ~]# /etc/init.d/mysqld restart

    [root@mysql2 ~]# ll /usr/local/mysql/data

    基于centos6的mysql5.7.13主從部署(二)

  4. 在mysql2中創(chuàng)建shiyan庫

    [root@mysql2 ~]# mysql -uroot -p123456

    mysql> create database shiyan;

    Query OK, 1 row affected (0.01 sec)

    基于centos6的mysql5.7.13主從部署(二)

  5. 將主庫備份的234.sql文件導(dǎo)入到從庫中的shiyan庫中

    [root@mysql1 ~]# scp 234.sql root@192.168.100.128:/root/

    報錯:

    基于centos6的mysql5.7.13主從部署(二)

    解決方法:

    [root@mysql1 ~]# yum install openssh-clients -y

    說明:openssh-clients包在主從服務(wù)器上都要安裝!

    [root@mysql2 ~]# mysql -uroot -p123456 shiyan < 234.sql

    基于centos6的mysql5.7.13主從部署(二)

  6. 查看下shiyan庫

    mysql> use shiyan;

    mysql> show databases shiyan;

    基于centos6的mysql5.7.13主從部署(二)

  7. 停止(從)mysql2

    [root@mysql2 ~]# mysql -uroot -p123456

    mysql> stop slave;

    Query OK, 0 rows affected, 1 warning (0.00 sec)

  8. 指定主庫信息(非常重要的一步)在從庫上操作!

    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;

    基于centos6的mysql5.7.13主從部署(二)基于centos6的mysql5.7.13主從部署(二)

    說明:

    這里的master_host為主庫的ip地址,特別注意語法,數(shù)字不用加單引號!

    master_log_file:就是在主庫中通過show master status;查看出來的file部分;

    master_log_pos:為主庫中查看出來的position部分。

  9. 啟動(從)mysql2,在mysql2上操作!

    mysql> start slave;

  10. 檢測同步是否成功

    說明:在mysql2上操作

    mysql> show slave status\G;

    基于centos6的mysql5.7.13主從部署(二)

    注意:Slave_IO_Running和Slave_SQL_Running必須都是yes!

至此,兩臺數(shù)據(jù)庫服務(wù)器已經(jīng)是同步狀態(tài),下一步就要進行同步測試!

擴展:

如果在mysql2做同步檢查時出現(xiàn)如下錯誤:

基于centos6的mysql5.7.13主從部署(二)

可以看到Slave_IO_Running:NO

解決方法:

先查看mysql錯誤日志

[root@mysql2 ~]# cd /usr/local/mysql/data

[root@mysql2 data]# cat mysqld.err

基于centos6的mysql5.7.13主從部署(二)

原因分析:

mysql5.7(5.6也有)的復(fù)制引入了uuid的概念,各個復(fù)制結(jié)構(gòu)中的server_uuid得保證不一樣,但是查看到直接copy  data文件夾后server_uuid是相同的,show variables like '%server_uuid%';

解決方法:

找到data文件夾下的auto.cnf文件,修改里面的uuid值,保證各個db的uuid不一樣,重啟db即可!


當(dāng)前題目:基于centos6的mysql5.7.13主從部署(二)
分享路徑:http://weahome.cn/article/gshjgg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部