mysql5.7.19版本的主從復制問題分享-創(chuàng)新互聯(lián)

今天學習構建mysql 5.7.19版本的MySQL的主從復制

目前創(chuàng)新互聯(lián)已為近千家的企業(yè)提供了網(wǎng)站建設、域名、網(wǎng)站空間、網(wǎng)站改版維護、企業(yè)網(wǎng)站設計、西峽網(wǎng)站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

碰到了一些坑,特定分享下:

  1. mysql的主從服務器是通過克隆虛擬機完成,導致uuids一樣,需要修改auto.cnf文件

  2. 在slave上想通過在/etc/my.cnf里添加連接master的配置,總是導致啟動mysqld服務失敗,看錯誤日志,說不支持的選項。原因是5.7.19里已經(jīng)淘汰了在配置文件里加這種配置的方法了。

下面是部分筆記,特分享下。

mysql> show variables like "%binlog%";

| binlog_format              | ROW

====

如何讓程序能同時讀取主和從服務器上的數(shù)據(jù):

1.直接在程序里寫死,那個業(yè)務訪問那臺MySQL服務器ip,定死。 ---》很傻、維護起來非常麻煩,需要開發(fā)的協(xié)助。

不同的業(yè)務,不同的服務器

a ----》MYSQL(A)

B ---->MYSQL(B)

2.相同的業(yè)務,不同的服務器。使用域名解析來達到讀寫分離。 ---》比較簡單,只要修改下域名對應的ip

寫 ----》主

wdb.abc.com --->132.1.1.5 主

讀 -----》主、從

可以使用負載均衡域名解析

rdb.abc.com --->132.1.1.1 從

rdb.abc.com --->132.1.1.2 從

rdb.abc.com --->132.1.1.3 從

rdb.abc.com --->132.1.1.4 從

rdb.abc.com --->132.1.1.5 主

3.使用中間件來實現(xiàn)讀寫分離。oneproxy---》杭州平民軟件---》王廣友

中間件里有個配置文件,會寫明讀往那些服務器,寫往那臺服務器。

開源:mycat

=====

主從復制-----》為讀寫分離做鋪墊。---》提升性能的作用。

=====

MySQL replication 復制

  master  slave

  write read

=====

克隆 clone

1.先關閉計算機

=====

主從復制的前提條件:

2臺MySQL服務器的數(shù)據(jù)是一樣的。

=====

將master和slave的ip地址配置好,不要一樣,同時修改主機名為mysql_master 、mysql_slave

mysql> grant replication slave on *.* to 'backup'@'192.168.0.139' identified by '123456';

mysql> CREATE USER 'repl'@'%.mydomain.com' IDENTIFIED BY 'slavepass';

mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%.mydomain.com';

====

/etc/my.cnf

server-id=2

log-bin

master-host=192.168.0.137

master-user=backup

master-password=123456

master-port=3306

目前不可行,總是報錯

mysql 官方給的解釋:

Obsolete Replication Slave Options 廢棄的主從復制的選項

The following options are removed in MySQL 5.5. If you attempt to start mysqld with any of these

options in MySQL 5.5, the server aborts with an unknown variable error. To set the replication

parameters formerly associated with these options, you must use the CHANGE MASTER TO ...

statement (see Section 13.4.2.1, “CHANGE MASTER TO Syntax”).

The options affected are shown in this list:

? --master-host

? --master-user

? --master-password

? --master-port

? --master-connect-retry

? --master-ssl

? --master-ssl-ca

? --master-ssl-capath

? --master-ssl-cert

? --master-ssl-cipher

? --master-ssl-key

===

在從服務器的數(shù)據(jù)庫里輸入命令:

mysql> change master to master_host='192.168.0.137', master_user='backup', master_password='123456', master_port=3306;

mysql> START SLAVE;

Query OK, 0 rows affected (0.00 sec)

mysql>

       Slave_IO_Running: No  IO線程啟動不起來

      Slave_SQL_Running: Yes

出錯信息:

        Last_IO_Error: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work

 原因是MySQL的server UUID一樣

[root@mysql-slave mysql]# pwd

/var/lib/mysql   ---》存放在此目錄下

[root@mysql-slave mysql]#

[root@mysql-slave mysql]# vim auto.cnf  修改此文件里的uuid

[auto]

server-uuid=7fce030c-9f7b-11e7-b09f-000c29e2a2e4

[root@mysql-slave mysql]# service mysqld restart

Redirecting to /bin/systemctl restart mysqld.service

[root@mysql-slave mysql]#

       Slave_IO_Running: Yes

      Slave_SQL_Running: Yes

====

不要在slave里寫數(shù)據(jù),會導致SQL thread線程不工作,如果已經(jīng)寫了,建議刪除,重新啟動下slave 進程

mysql> start slave;

===

relay-log.info ---》記錄上次從主服務器的binlog日志里什么位置,下次去復制下載主的binlog日志的時候,知道從哪里開始。

master.info --->連接主服務器使用的(主的ip和連接使用的用戶和密碼)

mysql-slave-relay-bin.000006 記錄中繼日志被重新執(zhí)行的時候的二進制日志

====

1.主從服務器之間復制數(shù)據(jù)的時候,有延遲嗎?是否有數(shù)據(jù)丟失的現(xiàn)象發(fā)生?

主從服務器存放在一個機房好,還是2個機房好?

2.如何減少延遲?如何避免數(shù)據(jù)丟失?

3.半同步復制是什么?

4.主服務器down機了,從服務器如何頂替主服務器工作?

5.主服務器又恢復了,又可以充當什么角色?主還是從?

6.了解mycat和oneproxy中間件程序,實現(xiàn)讀寫分離

===

聯(lián)系方式:695811769@qq.com

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

本文題目:mysql5.7.19版本的主從復制問題分享-創(chuàng)新互聯(lián)
文章來源:http://muchs.cn/article0/dddjio.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供電子商務、App開發(fā)、營銷型網(wǎng)站建設小程序開發(fā)、網(wǎng)站收錄虛擬主機

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名