99偷拍视频精品区一区二,口述久久久久久久久久久久,国产精品夫妇激情啪发布,成人永久免费网站在线观看,国产精品高清免费在线,青青草在线观看视频观看,久久久久久国产一区,天天婷婷久久18禁,日韩动漫av在线播放直播

初識MariaDB之5——主從復制原理及部署-創新互聯

一、原理簡介

目前創新互聯已為上千家的企業提供了網站建設、域名、網頁空間、網站托管、服務器托管、企業網站設計、上猶網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協力一起成長,共同發展。

當前主流的數據庫為了保證數據一致性,都采用支持事務類型的數據存儲引擎,如innodb等,當一個事務提交后先寫到事務日志中,在進行數據修改,并且將對數據產生任何影響的語句都記錄在二進制日志中,主從復制就是基于二進制日志實現的。

初識MariaDB之5——主從復制原理及部署初識MariaDB之5——主從復制原理及部署

主從同步的工作流程為:

1.主節點任何的數據修改在binlog寫入binlog中

2.從節點通過I/O thead線程發起請求

3.主節點通過I/O dump thread線程發送binlog中的內容

4.從節點通過I/O thead線程將主節點binlog中的內容寫入本地relaylog中

5.從節點通過sql thread線程將relaylog中的內容在本地replay

整個過程中需要注意的地方:

1.主節點必須開啟binlog,從節點必須開啟relay_log

2.每臺mysql服務器必須有唯一的server_id

3.為避免從服務器上進行寫操作,從服務器要開啟read-only選項,但該選項對super用戶無效,mysql5.7之后新增了一個super_read_only選項

4.binlog_format必須是row格式(binlog_do_db和binlog_ignore_db不支持statement格式)

二、操作步驟

本次實驗使用CentOS7.4系統,5.5.56-MariaDB,具體操作步驟如下:

1.主節點操作步驟

(1)啟動主節點的mysql服務,開啟binlog,server_id設置為10,binlog_format設置為row

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

skip_name_resolve=ON

log_bin=mysql-binlog

slow_query_log=ON

server-id=10

innodb_file_per_table=ON

binlog_format=ROW

(2)導入一個數據庫

[root@host3 ~]# mysql < hellodb.sql

(3)創建一個主從復制的賬號

MariaDB [mysql]> grant replication slave on *.* to 'bak'@'172.16.10.%' identified by 'bakpass';

MariaDB [mysql]> flush privileges;

(4)備份主節點數據庫,目的是讓從節點和此時的主節點保持一致,使用--master-data=2選項記錄并注銷此時主節點使用的bin_log日志及位置

[root@host3 ~]# mysqldump --single-transaction --databases hellodb --master-data=2 > a.sql

初識MariaDB之5——主從復制原理及部署初識MariaDB之5——主從復制原理及部署

(5)將備份復制到從節點,至此主節點操作完成

[root@host3 ~]# scp a.sql root@172.16.10.40:/tmp/

2.從節點操作步驟

(1)啟動從節點的mysql服務,啟動relaylog日志,更改serverid

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

skip_name_resolve=ON

relay_log=mysql-relaylog

relay_log_index=mysql-relaylog

read_only=ON

relay_log_purge=ON

slow_query_log=ON

server-id=20

innodb_file_per_table=ON

(2)恢復主節點備份的數據庫,確認主從數據庫數據一致

[root@host4 tmp]# mysql < a.sql

(3)指定主服務器及主服務器當前的binlog日志和position

MariaDB [hellodb]> change master to

  -> master_host='172.16.10.30',

  -> master_user='bak',

  -> master_password='bakpass',

  -> master_port=3306,

  -> master_log_file='mysql-binlog.000004',

  -> master_log_pos=7734,

  -> master_connect_retry=10;

(4)啟動從節點(可以指啟動指定線程類型,不指定為都啟動)

MariaDB [hellodb]> start slave [IO_THREAD | SQL_THREAD];

(5)查看從節點狀態(Slave_IO_Running和Slave_SQL_Running顯示Yes成功)

MariaDB [(none)]> show slave status \G

*************************** 1. row ***************************

Master_Log_File: mysql-binlog.000004

Read_Master_Log_Pos: 7734

Relay_Log_File: mysql-relaylog.000002

Relay_Log_Pos: 532

Relay_Master_Log_File: mysql-binlog.000004

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Exec_Master_Log_Pos: 7734

選項說明:

Read_Master_Log_Pos 讀取主節點binlog的position位置

Exec_Master_Log_Pos 執行主節點binlog的position位置

三、效果驗證

1.在主節點查看從節點

MariaDB [hellodb]> show slave hosts;

初識MariaDB之5——主從復制原理及部署初識MariaDB之5——主從復制原理及部署

2.主節點刪除一行數據,查看此時的position位置

MariaDB [hellodb]> delete from students where stuid=23;

初識MariaDB之5——主從復制原理及部署初識MariaDB之5——主從復制原理及部署

3.在從節點確認讀取與執行主節點binlog的position是否正常

初識MariaDB之5——主從復制原理及部署初識MariaDB之5——主從復制原理及部署

補充說明:

所謂雙主就是每個節點上都啟用binlog和relaylog,相互指向對方,同時建議開啟log_slave_updates=ON選項,讓同步做的所有操作在本地binlog日志中保存,此時server_id就變得非常重要,節點間就是通過server_id判斷該操作是否是自身結點產生,生產中不建議使用雙主模型,會造成數據不一致,此時只能放棄一個節點以另一個節點為準

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

標題名稱:初識MariaDB之5——主從復制原理及部署-創新互聯
網頁路徑:http://www.yijiale78.com/article42/dddhhc.html

成都網站建設公司_創新互聯,為您提供網站收錄、App設計域名注冊、商城網站、外貿網站建設、企業網站制作

廣告

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

外貿網站建設