成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > MySQL之PXC集群搭建的方法步驟

MySQL之PXC集群搭建的方法步驟

熱門標(biāo)簽:北京金倫外呼系統(tǒng) 大豐地圖標(biāo)注app 400電話辦理服務(wù)價格最實惠 html地圖標(biāo)注并導(dǎo)航 催天下外呼系統(tǒng) 呂梁外呼系統(tǒng) 400電話變更申請 南太平洋地圖標(biāo)注 武漢電銷機(jī)器人電話

一、PXC 介紹

1.1 PXC 簡介

PXC 是一套 MySQL 高可用集群解決方案,與傳統(tǒng)的基于主從復(fù)制模式的集群架構(gòu)相比 PXC 最突出特點(diǎn)就是解決了詬病已久的數(shù)據(jù)復(fù)制延遲問題,基本上可以達(dá)到實時同步。而且節(jié)點(diǎn)與節(jié)點(diǎn)之間,他們相互的關(guān)系是對等的。PXC 最關(guān)注的是數(shù)據(jù)的一致性,對待事物的行為時,要么在所有節(jié)點(diǎn)上執(zhí)行,要么都不執(zhí)行,它的實現(xiàn)機(jī)制決定了它對待一致性的行為非常嚴(yán)格,這也能非常完美的保證 MySQL 集群的數(shù)據(jù)一致性;

1.2 PXC特性和優(yōu)點(diǎn)

  • 完全兼容 MySQL。
  • 同步復(fù)制,事務(wù)要么在所有節(jié)點(diǎn)提交或不提交。
  • 多主復(fù)制,可以在任意節(jié)點(diǎn)進(jìn)行寫操作。
  • 在從服務(wù)器上并行應(yīng)用事件,真正意義上的并行復(fù)制。
  • 節(jié)點(diǎn)自動配置,數(shù)據(jù)一致性,不再是異步復(fù)制。
  • 故障切換:因為支持多點(diǎn)寫入,所以在出現(xiàn)數(shù)據(jù)庫故障時可以很容易的進(jìn)行故障切換。
  • 自動節(jié)點(diǎn)克?。涸谛略龉?jié)點(diǎn)或停機(jī)維護(hù)時,增量數(shù)據(jù)或基礎(chǔ)數(shù)據(jù)不需要人工手動備份提供,galera cluster會自動拉取在線節(jié)點(diǎn)數(shù)據(jù),集群最終會變?yōu)橐恢拢?/li>

PXC最大的優(yōu)勢:強(qiáng)一致性、無同步延遲

1.3 PXC的局限和劣勢

  • 復(fù)制只支持InnoDB 引擎,其他存儲引擎的更改不復(fù)制
  • 寫入效率取決于節(jié)點(diǎn)中最慢的一臺

1.4 PXC與Replication的區(qū)別

Replication PXC
數(shù)據(jù)同步是單向的,master負(fù)責(zé)寫,然后異步復(fù)制給slave;如果slave寫入數(shù)據(jù),不會復(fù)制給master。 數(shù)據(jù)同步時雙向的,任何一個mysql節(jié)點(diǎn)寫入數(shù)據(jù),都會同步到集群中其它的節(jié)點(diǎn)。
異步復(fù)制,從和主無法保證數(shù)據(jù)的一致性 同步復(fù)制,事務(wù)在所有集群節(jié)點(diǎn)要么同時提交,要么同時不提交

1.5 PXC 常用端口

  • 3306:數(shù)據(jù)庫對外服務(wù)的端口號。
  • 4444:請求SST的端口。
  • 4567:組成員之間進(jìn)行溝通的一個端口號
  • 4568:用于傳輸IST。

名詞解釋:

  • SST(State Snapshot Transfer): 全量傳輸
  • IST(Incremental state Transfer):增量傳輸

二、實踐

2.1 搭建 PXC 集群

與 MySQL 不同的是 PXC 官方提供了 Docker 鏡像,所以我們可以很方便的搭建 PXC 集群。

1)下載 Docker 鏡像

docker pull percona/percona-xtradb-cluster:5.7

重命名鏡像名稱

docker tag percona/percona-xtradb-cluster:5.7 pxc:5.7

3)刪除原始鏡像

docker rmi percona/percona-xtradb-cluster:5.7

創(chuàng)建 Docker 網(wǎng)絡(luò),用于 PXC 集群獨(dú)立使用

docker network create pxc-network

創(chuàng)建數(shù)據(jù)卷用于之后掛載

docker volume create --name v1
docker volume create --name v2
docker volume create --name v3

注:PXC容器只支持?jǐn)?shù)據(jù)卷掛載方式,不支持目錄掛載

創(chuàng)建第一個節(jié)點(diǎn)

docker run -di --name=pn1 --net=pxc-network -p 9000:3306 -v v1:/var/lib/mysql --privileged -e MYSQL_ROOT_PASSWORD=123456 -e CLUSTER_NAME=cluster1 -e XTRABACKUP_PASSWORD=123456  pxc:5.7 

因為后續(xù)節(jié)點(diǎn)的添加需要關(guān)聯(lián)到第一個節(jié)點(diǎn),所以需要等待數(shù)據(jù)庫啟動完成。通過 docker logs pn1 查看日志,如果出現(xiàn)下面的輸出,證明啟動成功:

2019-09-04T06:27:30.085880Z 0 [Note] InnoDB: Buffer pool(s) load completed at 190904  6:27:30

注:CLUSTER_NAME 名稱不要用關(guān)鍵字PXC,否則無法啟動。

加入第二個節(jié)點(diǎn)

docker run -di --name=pn2 --net=pxc-network -p 9001:3306 -v v2:/var/lib/mysql --privileged -e MYSQL_ROOT_PASSWORD=123456  -e CLUSTER_NAME=cluster1 -e XTRABACKUP_PASSWORD=123456 -e CLUSTER_JOIN=pn1 pxc:5.7  

需要注意是第二個節(jié)點(diǎn)開始需要增加 e CLUSTER_JOIN=pn1 參數(shù),表示與 pn1 節(jié)點(diǎn)同步,否則 pn1 容器會自動關(guān)閉。

當(dāng) PXC集群中存在兩個節(jié)點(diǎn)以上之后就沒有主節(jié)點(diǎn)的概念了。集群中最后一個退出的節(jié)點(diǎn)就會變?yōu)橹鞴?jié)點(diǎn),在 /var/lib/mysql/grastate.dat 文件中屬性 safe_to_bootstrap 的值 會從 0 被設(shè)置為 1 表示該節(jié)點(diǎn)是主節(jié)點(diǎn)。

8)加入第三個節(jié)點(diǎn)

docker run -di --name=pn3 --net=pxc-network -p 9002:3306 -v v3:/var/lib/mysql --privileged -e MYSQL_ROOT_PASSWORD=123456  -e CLUSTER_NAME=cluster1 -e XTRABACKUP_PASSWORD=123456 -e CLUSTER_JOIN=pn2 pxc:5.7  

可以看到我們這次我們 CLUSTER_JOIN 的是 pn2 容器,可以證明我們剛剛說的 當(dāng) PXC 集群存在兩個節(jié)點(diǎn)以上之后就沒有主節(jié)點(diǎn)的概念了 這個說法是正確的。

9)進(jìn)入 pn1 節(jié)點(diǎn)

docker exec -it pn1 /usr/bin/mysql -uroot -p123456

查看狀態(tài)

mysql> show status like 'wsrep%';
+----------------------------------+-------------------------------------------------+
| Variable_name                    | Value                                           |
+----------------------------------+-------------------------------------------------+
| wsrep_local_state_uuid           | 068dd5e8-cedd-11e9-904d-466e75bd8fe1            |
| wsrep_protocol_version           | 9                                               |
| wsrep_last_applied               | 16                                              |
| wsrep_last_committed             | 16                                              |
| wsrep_replicated                 | 0                                               |
| wsrep_replicated_bytes           | 0                                               |
| wsrep_repl_keys                  | 0                                               |
| wsrep_repl_keys_bytes            | 0                                               |
| wsrep_repl_data_bytes            | 0                                               |
| wsrep_repl_other_bytes           | 0                                               |
| wsrep_received                   | 10                                              |
| wsrep_received_bytes             | 800                                             |
| wsrep_local_commits              | 0                                               |
| wsrep_local_cert_failures        | 0                                               |
| wsrep_local_replays              | 0                                               |
| wsrep_local_send_queue           | 0                                               |
| wsrep_local_send_queue_max       | 1                                               |
| wsrep_local_send_queue_min       | 0                                               |
| wsrep_local_send_queue_avg       | 0.000000                                        |
| wsrep_local_recv_queue           | 0                                               |
| wsrep_local_recv_queue_max       | 2                                               |
| wsrep_local_recv_queue_min       | 0                                               |
| wsrep_local_recv_queue_avg       | 0.100000                                        |
| wsrep_local_cached_downto        | 0                                               |
| wsrep_flow_control_paused_ns     | 0                                               |
| wsrep_flow_control_paused        | 0.000000                                        |
| wsrep_flow_control_sent          | 0                                               |
| wsrep_flow_control_recv          | 0                                               |
| wsrep_flow_control_interval      | [ 173, 173 ]                                    |
| wsrep_flow_control_interval_low  | 173                                             |
| wsrep_flow_control_interval_high | 173                                             |
| wsrep_flow_control_status        | OFF                                             |
| wsrep_cert_deps_distance         | 0.000000                                        |
| wsrep_apply_oooe                 | 0.000000                                        |
| wsrep_apply_oool                 | 0.000000                                        |
| wsrep_apply_window               | 0.000000                                        |
| wsrep_commit_oooe                | 0.000000                                        |
| wsrep_commit_oool                | 0.000000                                        |
| wsrep_commit_window              | 0.000000                                        |
| wsrep_local_state                | 4                                               |
| wsrep_local_state_comment        | Synced                                          |
| wsrep_cert_index_size            | 0                                               |
| wsrep_cert_bucket_count          | 22                                              |
| wsrep_gcache_pool_size           | 1592                                            |
| wsrep_causal_reads               | 0                                               |
| wsrep_cert_interval              | 0.000000                                        |
| wsrep_open_transactions          | 0                                               |
| wsrep_open_connections           | 0                                               |
| wsrep_ist_receive_status         |                                                 |
| wsrep_ist_receive_seqno_start    | 0                                               |
| wsrep_ist_receive_seqno_current  | 0                                               |
| wsrep_ist_receive_seqno_end      | 0                                               |
| wsrep_incoming_addresses         | 172.19.0.2:3306,172.19.0.3:3306,172.19.0.4:3306|
| wsrep_cluster_weight             | 3                                               |
| wsrep_desync_count               | 0                                               |
| wsrep_evs_delayed                |                                                 |
| wsrep_evs_evict_list             |                                                 |
| wsrep_evs_repl_latency           | 0/0/0/0/0                                       |
| wsrep_evs_state                  | OPERATIONAL                                     |
| wsrep_gcomm_uuid                 | 11ed51e2-cedd-11e9-b362-af453a7ac074            |
| wsrep_cluster_conf_id            | 3                                               |
| wsrep_cluster_size               | 3                                               |
| wsrep_cluster_state_uuid         | 068dd5e8-cedd-11e9-904d-466e75bd8fe1            |
| wsrep_cluster_status             | Primary                                         |
| wsrep_connected                  | ON                                              |
| wsrep_local_bf_aborts            | 0                                               |
| wsrep_local_index                | 0                                               |
| wsrep_provider_name              | Galera                                          |
| wsrep_provider_vendor            | Codership Oy info@codership.com>               |
| wsrep_provider_version           | 3.37(rff05089)                                  |
| wsrep_ready                      | ON                                              |
+----------------------------------+-------------------------------------------------+
71 rows in set (0.06 sec)

可以看到 wsrep_incoming_addresses 的值就是我們?nèi)齻€容器的IP地址

| wsrep_incoming_addresses         | 172.19.0.2:3306,172.19.0.3:3306,172.19.0.4:3306 |

集群完整性檢查:

屬性 含義
wsrep_cluster_state_uuid 在集群所有節(jié)點(diǎn)的值應(yīng)該是相同的,有不同值的節(jié)點(diǎn),說明其沒有連接入集群.
wsrep_cluster_conf_id 正常情況下所有節(jié)點(diǎn)上該值是一樣的.如果值不同,說明該節(jié)點(diǎn)被臨時”分區(qū)”了.當(dāng)節(jié)點(diǎn)之間網(wǎng)絡(luò)連接恢復(fù) 的時候應(yīng)該會恢復(fù)一樣的值.
wsrep_cluster_size 如果這個值跟預(yù)期的節(jié)點(diǎn)數(shù)一致,則所有的集群節(jié)點(diǎn)已經(jīng)連接.
wsrep_cluster_status 集群組成的狀態(tài).如果不為”Primary”,說明出現(xiàn)”分區(qū)”或是”split-brain”腦裂狀況.

節(jié)點(diǎn)狀態(tài)檢查:

屬性 含義
wsrep_ready 該值為 ON,則說明可以接受 SQL 負(fù)載.如果為 Off,則需要檢查 wsrep_connected
wsrep_connected 如果該值為 Off,且 wsrep_ready 的值也為 Off,則說明該節(jié)點(diǎn)沒有連接到集群.(可能是 wsrep_cluster_address 或 wsrep_cluster_name 等配置錯造成的.具體錯誤需要查看錯誤日志)
wsrep_local_state_comment 如果 wsrep_connected 為 On,但 wsrep_ready 為 OFF,則可以從該項查看原因

復(fù)制健康檢查:

屬性 含義
wsrep_flow_control_paused 表示復(fù)制停止了多長時間.即表明集群因為 Slave 延遲而慢的程度.值為 0~1,越靠近 0 越好,值為 1 表示 復(fù)制完全停止.可優(yōu)化 wsrep_slave_threads 的值來改善
wsrep_cert_deps_distance 有多少事務(wù)可以并行應(yīng)用處理.wsrep_slave_threads 設(shè)置的值不應(yīng)該高出該值太多
wsrep_flow_control_sent 表示該節(jié)點(diǎn)已經(jīng)停止復(fù)制了多少次
*wsrep_local_recv_queue_avg 表示 slave 事務(wù)隊列的平均長度.slave 瓶頸的預(yù)兆. 最慢的節(jié)點(diǎn)的 wsrep_flow_control_sent 和 wsrep_local_recv_queue_avg 這兩個值最高.這兩個值較低的話,相對更好

檢測慢網(wǎng)絡(luò)問題:

屬性 含義
wsrep_local_send_queue_avg 網(wǎng)絡(luò)瓶頸的預(yù)兆.如果這個值比較高的話,可能存在網(wǎng)絡(luò)瓶頸

沖突或死鎖的數(shù)目:

屬性 含義
wsrep_last_committed 最后提交的事務(wù)數(shù)目
wsrep_local_cert_failures 和 wsrep_local_bf_aborts 回滾,檢測到的沖突數(shù)目

2.2 集群同步驗證

在節(jié)點(diǎn)一上創(chuàng)建數(shù)據(jù)庫 test

mysql> create database test;
Query OK, 1 row affected (0.02 sec)

節(jié)點(diǎn)二上查看:

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| test               |
+--------------------+
5 rows in set (0.00 sec)

在節(jié)點(diǎn)二上創(chuàng)建表

mysql> use test;
Database changed
mysql> create table sys_user(id int ,name varchar(30));
Query OK, 0 rows affected (0.11 sec)

4)在節(jié)點(diǎn)三上查看表結(jié)構(gòu)

mysql> use test;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| sys_user       |
+----------------+
1 row in set (0.00 sec)

在節(jié)點(diǎn)三上插入數(shù)據(jù)

mysql> insert into sys_user values(1,'a');
ERROR 1105 (HY000): Percona-XtraDB-Cluster prohibits use of DML command on a table (test.sys_user) without an explicit primary key with pxc_strict_mode = ENFORCING or MASTER

看到?jīng)]有顯示的主鍵就無法插入數(shù)據(jù),我們修改下表結(jié)構(gòu):

alter table sys_user add primary key (id);

插入數(shù)據(jù):

mysql> insert into sys_user values(1,'a');
Query OK, 1 row affected (0.05 sec)

6)在節(jié)點(diǎn)一查看表數(shù)據(jù)

mysql> select * from sys_user;
+----+------+
| id | name |
+----+------+
|  1 | a    |
+----+------+
1 row in set (0.00 sec)

可以看到三個節(jié)點(diǎn)數(shù)據(jù)正常同步,并且都可讀可寫。

2.3 新增數(shù)據(jù)庫節(jié)點(diǎn)操作

當(dāng)數(shù)據(jù)庫不夠用時,我們通常需要增加數(shù)據(jù)庫節(jié)點(diǎn)來分擔(dān)壓力,我們來演示一下新增節(jié)點(diǎn)的操作。

創(chuàng)建數(shù)據(jù)卷

docker volume create --name v4

2)新增容器

docker run -di --name=pn4 --net=pxc-network -p 9003:3306 -v v4:/var/lib/mysql --privileged -e MYSQL_ROOT_PASSWORD=123456  -e CLUSTER_NAME=cluster1 -e XTRABACKUP_PASSWORD=123456 -e CLUSTER_JOIN=pn3 pxc:5.7 

要注意的是,這次 CLUSTER_JOIN 連的是 pn3。

進(jìn)入節(jié)點(diǎn)4查看數(shù)據(jù)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| test               |
+--------------------+
5 rows in set (0.00 sec)
mysql> use test;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| sys_user       |
+----------------+
1 row in set (0.00 sec)
mysql> select * from sys_user;
+----+------+
| id | name |
+----+------+
|  1 | a    |
+----+------+
1 row in set (0.00 sec)

可以看到之前的數(shù)據(jù)也自動同步過來了。

2.4 宕機(jī)操作

將節(jié)點(diǎn)pn4容器關(guān)閉,造成宕機(jī)現(xiàn)象

docker stop pn4

在節(jié)點(diǎn) pn2 上做查看集群狀態(tài)

mysql> show status like 'wsrep%';
......
| wsrep_local_state                | 4                                               |
| wsrep_local_state_comment        | Synced                                          |
| wsrep_cert_index_size            | 3                                               |
......
| wsrep_incoming_addresses         | 172.19.0.4:3306,172.19.0.3:3306,172.19.0.2:3306 |

可以看到集群應(yīng)該有4個節(jié)點(diǎn),但是現(xiàn)在只有3個正常連接。

3)在節(jié)點(diǎn) pn2 上做修改操作

mysql> update sys_user set name='b' where id=1; 
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

將節(jié)點(diǎn) pn4 容器啟動

[root@VM_0_15_centos ~]# docker start pn4

進(jìn)入容器 pn4 查看修改操作是否同步

docker exec -it pn4 /usr/bin/mysql -uroot -p123456
mysql> use test;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select * from sys_user;
+----+------+
| id | name |
+----+------+
|  1 | b    |
+----+------+
1 row in set (0.00 sec)

可以看到節(jié)點(diǎn)正常加入集群,并且數(shù)據(jù)也同步了。

pn4 是以指定主節(jié)點(diǎn)形式進(jìn)入 PXC 集群創(chuàng)建的容器,那么 pn1直接以自身為主節(jié)點(diǎn)啟動的容器會怎么樣呢?我們來演示一下:

關(guān)閉 pn1 節(jié)點(diǎn)

docker stop pn1

在 pn2 節(jié)點(diǎn)上插入一條數(shù)據(jù)

mysql> insert into sys_user values('2','c');
Query OK, 1 row affected (0.01 sec)

啟動 pn1節(jié)點(diǎn)

docker start pn1

等待一分鐘,查看容器啟動列表

docker ps -a

發(fā)現(xiàn) pn1 節(jié)點(diǎn)并沒有啟動

CONTAINER ID        IMAGE    ......   STATUS                           NAMES
fa123563e787        pxc:5.7  ......   Exited (1) About a minute ago    pn1               

查看下錯誤日志:

docker logs pn1

異常信息如下:

2019-09-04T07:21:56.412918Z 0 [ERROR] WSREP: It may not be safe to bootstrap the cluster from this node. It was not the last one to leave the cluster and may not contain all the updates. To force cluster bootstrap with this node, edit the grastate.dat file manually and set safe_to_bootstrap to 1 .
2019-09-04T07:21:56.412922Z 0 [ERROR] WSREP: Provider/Node (gcomm://) failed to establish connection with cluster (reason: 7)
2019-09-04T07:21:56.412929Z 0 [ERROR] Aborting

翻譯成中文:

2019-09-04T07:21:56.412918Z 0 [錯誤] WSREP:從此節(jié)點(diǎn)引導(dǎo)群集可能不安全。 它不是離開群集的最后一個,可能不包含所有更新。 要使用此節(jié)點(diǎn)強(qiáng)制群集引導(dǎo),請手動編輯grastate.dat文件并將safe_to_bootstrap設(shè)置為1。
2019-09-04T07:21:56.412922Z 0 [錯誤] WSREP:提供者/節(jié)點(diǎn)(gcomm://)無法與群集建立連接(原因:7)
2019-09-04T07:21:56.412929Z 0 [錯誤]中止

錯誤提示很明顯了,因為 pn1 節(jié)點(diǎn)不是最后一個離開集群的不能再以主節(jié)點(diǎn)的形式啟動了,如果要以主節(jié)點(diǎn)的形式啟動必須調(diào)整 grastate.dat文件中的 safe_to_bootstrap 參數(shù)為 1。

但是要注意的是因為集群中其他節(jié)點(diǎn)并沒有關(guān)閉,這樣啟動的容器跟之前的集群就沒有關(guān)系了數(shù)據(jù)也不會同步,我們來驗證下看看:

查看數(shù)據(jù)卷存放的路徑

docker volume inspect v1
[
    {
        "CreatedAt": "2019-09-05T09:22:22+08:00",
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/v1/_data",
        "Name": "v1",
        "Options": {},
        "Scope": "local"
    }
]

進(jìn)入數(shù)據(jù)卷目錄,查看是否存在 grastate.dat文件

[root@VM_0_15_centos ~]# cd /var/lib/docker/volumes/v1/_data
[root@VM_0_15_centos _data]# ll
total 323444
-rw-r----- 1 1001 1001        56 Sep  5 08:34 auto.cnf
-rw------- 1 1001 1001      1680 Sep  5 08:34 ca-key.pem
-rw-r--r-- 1 1001 1001      1120 Sep  5 08:34 ca.pem
-rw-r--r-- 1 1001 1001      1120 Sep  5 08:34 client-cert.pem
-rw------- 1 1001 1001      1676 Sep  5 08:34 client-key.pem
-rw-r----- 1 1001 1001         2 Sep  5 08:34 fa123563e787.pid
-rw-r----- 1 1001 1001 134219048 Sep  5 09:22 galera.cache
-rw-r----- 1 1001 1001       113 Sep  5 09:21 grastate.dat
-rw-r----- 1 1001 1001      1300 Sep  5 08:34 ib_buffer_pool
-rw-r----- 1 1001 1001  79691776 Sep  5 09:15 ibdata1
-rw-r----- 1 1001 1001  50331648 Sep  5 09:15 ib_logfile0
-rw-r----- 1 1001 1001  50331648 Sep  5 08:34 ib_logfile1
-rw-r----- 1 1001 1001  12582912 Sep  5 08:38 ibtmp1
-rw-r----- 1 1001 1001     34751 Sep  5 08:38 innobackup.backup.log
drwxr-x--- 2 1001 1001      4096 Sep  5 08:34 mysql
drwxr-x--- 2 1001 1001      4096 Sep  5 08:34 performance_schema
-rw------- 1 1001 1001      1676 Sep  5 08:34 private_key.pem
-rw-r--r-- 1 1001 1001       452 Sep  5 08:34 public_key.pem
-rw-r--r-- 1 1001 1001      1120 Sep  5 08:34 server-cert.pem
-rw------- 1 1001 1001      1676 Sep  5 08:34 server-key.pem
drwxr-x--- 2 1001 1001     12288 Sep  5 08:34 sys
drwxr-x--- 2 1001 1001      4096 Sep  5 09:07 test
-rw-r--r-- 1 1001 1001       143 Sep  5 09:22 version_info
-rw-r----- 1 1001 1001   3932160 Sep  5 09:15 xb_doublewrite

編輯文件

vim grastate.dat

將 safe_to_bootstrap 參數(shù)值修改為1,保存退出

# GALERA saved state
version: 2.1
uuid:    068dd5e8-cedd-11e9-904d-466e75bd8fe1
seqno:   20
safe_to_bootstrap: 1

重啟 pn1 容器

docker start pn1

進(jìn)入容器,查看數(shù)據(jù)

docker exec -it pn1 /usr/bin/mysql -uroot -p123456
mysql> use test;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select * from sys_user;
+----+------+
| id | name |
+----+------+
|  1 | b    |
+----+------+
1 row in set (0.01 sec)

發(fā)現(xiàn)數(shù)據(jù)并沒有同步,那么要怎么將 pn1 節(jié)點(diǎn)加入到集群中呢?

我們可以直接將 pn1 容器刪除,以加入節(jié)點(diǎn)的形式重新創(chuàng)建容器,并且因為我們之前已經(jīng)將容器的數(shù)據(jù)掛載到數(shù)據(jù)卷了,所以數(shù)據(jù)也不會存在丟失的風(fēng)險,我們來操作下:

刪除 pn1容器

docker stop pn1
docker rm pn1

以從節(jié)點(diǎn)方式加入集群

docker run -di --name=pn1 --net=pxc-network -p 9000:3306 -v v1:/var/lib/mysql --privileged -e MYSQL_ROOT_PASSWORD=123456  -e CLUSTER_NAME=cluster1 -e XTRABACKUP_PASSWORD=123456 -e CLUSTER_JOIN=pn2 pxc:5.7  

等待容器初始化完畢

3)進(jìn)入容器,查看數(shù)據(jù)是否同步

docker exec -it pn1 /usr/bin/mysql -uroot -p123456
mysql> use test;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select * from sys_user;
+----+------+
| id | name |
+----+------+
|  1 | b    |
|  2 | c    |
+----+------+
2 rows in set (0.00 sec)

發(fā)現(xiàn)數(shù)據(jù)已經(jīng)同步了。

到此這篇關(guān)于MySQL之PXC集群搭建的方法步驟的文章就介紹到這了,更多相關(guān)MySQL PXC集群搭建 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • MySQL之高可用集群部署及故障切換實現(xiàn)
  • MySQL5.7 集群配置的步驟
  • Docker部署Mysql集群的實現(xiàn)
  • 集群rpm安裝MySQL步驟詳解
  • 詳解mysql集群:一主多從架構(gòu)實現(xiàn)
  • 使用Docker部署MySQL 5.7&8.0主從集群的方法步驟
  • mysql的集群模式 galera-cluster部署詳解
  • docker 搭建Mysql集群的方法示例
  • MySQL Cluster集群的初級部署教程
  • 如何搭建 MySQL 高可用高性能集群

標(biāo)簽:麗水 西寧 迪慶 南充 徐州 無錫 自貢 龍巖

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《MySQL之PXC集群搭建的方法步驟》,本文關(guān)鍵詞  MySQL,之,PXC,集群,搭建,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《MySQL之PXC集群搭建的方法步驟》相關(guān)的同類信息!
  • 本頁收集關(guān)于MySQL之PXC集群搭建的方法步驟的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    国产电影一区二区三区爱妃记| 99国产精品一区二区三区| 久久久精品在线视频| 999在线免费视频| 久久久噜噜噜久噜久久| 国产黄在线观看| 一区二区三区精密机械公司| 91成品视频入口| hd100%videos日本| 99久免费精品视频在线观78| 制服丝袜专区在线| 免费视频一区二区| 精品视频在线免费观看| 国产精品电影一区二区| 国产成人精品一区二区三区福利| 91精彩刺激对白露脸偷拍| 亚洲码无人客一区二区三区| 亚洲欧美日韩国产中文在线| 成人性生交大片免费观看网站| www.久久视频| 亚洲一二三不卡| 欧美福利在线播放| 国产xxxxxx久色视频在| 亚洲欧洲精品一区二区三区波多野1战4| 成人免费视频caoporn| 一级毛片免费高清中文字幕久久网| 亚洲日产av中文字幕| 亚洲特级黄色片| japanese在线视频| 男人操女人免费网站| 久久无码人妻精品一区二区三区| 好吊色一区二区| 精品freesex老太交| 中文字幕国产在线观看| 国内精品免费一区二区三区| 日韩午夜电影网| 在线观看操人| 免费影院在线观看一区| 久久这里只有精品18| 欧美一区日韩一区| 波多野一区二区| 99热这里只有精品首页| 97免费公开视频| 少妇bbw搡bbbb搡bbbb| 黄色高清视频在线观看| 私拍精品福利视频在线一区| 欧美人与z0zoxxxx视频| 欧美精品资源| 久久久香蕉视频| 国产三级电影在线| 成人有码在线播放| 日本在线免费观看一区| 久久国产精品免费看| 欧美日韩 一区二区三区| 欧美mv日韩mv国产| 99精品视频在线播放观看| 日本一区二区在线免费观看| 亚州av在线播放| 1069视频| 国内精品久久国产| 久草在线资源福利| 日韩高清精品免费观看| 电影网一区二区| 欧洲一级黄色片| 99精品在线免费观看| 亚洲视频免费一区| 一本久久知道综合久久| 久久综合久久久| 久久久久狠狠高潮亚洲精品| 国产一区二区三区三区在线观看| 最近中文字幕大全中文字幕免费| 天天综合亚洲| 国产伦精品一区二区三区四区免费| 天天操天天干天天操天天干| 一区二区xxx| 在线xxxx| 91久热免费在线视频| www.日本少妇| 91精品国产高潮对白| 欧美激情视频一区二区三区在线播放| 黄色片大全在线观看| 欧洲精品在线播放| 国产资源在线看| 日日噜噜夜夜狠狠久久丁香五月| 精品视频在线播放一区二区三区| 国产精品久久久久久久久久精爆| 美女久久精品| 迷人的保姆韩国| 免费在线观看视频一区| 免费aⅴ网站| 中文字幕人成高清视频| 亚洲加勒比久久88色综合| 综合综合综合综合综合网| 污污网站在线看| 天天干天天色天天干| 五月天综合婷婷| 久草在线免费资源站| 18深夜视频在线观看| 国产亚洲视频中文字幕视频| 久久精品国产一区二区三区日韩| 美女网站在线免费欧美精品| 无码国模国产在线观看| 精品无码人妻一区二区三| www.久久久久久| 欧美丰满片xxx777| 一区二区三区 在线观看视| 免费高清在线观看免费| 亚洲成人精品视频| 日本1区2区| 亚洲a一区二区| 国产情侣呻吟对白高潮| 一级aaa毛片| 欧美高清成人| 中日韩免费毛片| 羞羞视频在线免费国产| 4480yy私人影院高清不卡| 精品国产在天天线2019| 亚洲最大的成人av| 国产免费一区二区三区在线观看| 麻豆精品视频| 91成人精品| 亚洲欧美综合久久久久久v动漫| 国产精品资源网站| 欧美xxxx性xxxxx高清| 亚洲欧美一区二区三区在线| 欲求不满中文字幕| 国产蜜臀一区二区打屁股调教| 一区二区三区日韩视频| 欧美韩日精品| 中文字幕人成一区| 91精品国产九九九久久久亚洲| 波多结衣在线观看| 视频免费裸体网站| 亚洲欧美日本在线观看| 国产麻豆9l精品三级站| 亚洲第一色在线| 欧美中文字幕一区二区三区| 欧美一级黑人aaaaaaa做受| 小说区图片区图片区另类灬| 国产一级大片免费看| www免费网站在线观看| 久久精品视频网站| 欧美性xxxxxbbbbbb精品| 亚洲国产另类久久久精品极度| 婷婷av一区二区三区| 黄网站在线观看| 亚洲一区av在线播放| 欧美精选一区二区| www.99久久热国产日韩欧美.com| 欧洲一区二区日韩在线视频观看免费| 精品久久久久久亚洲综合网站| 国产乱人伦精品一区二区在线观看| 亚洲精品国产精品乱码不卡| 好吊色欧美一区二区三区视频| 美女啪啪无遮挡免费久久网站| 国产欧美日韩亚洲精品| 超碰97在线免费| 色拍拍在线精品视频8848| 日韩成人视屏| 久久99精品久久久久久水蜜桃| 日本久久亚洲电影| 青青草原综合久久大伊人精品优势| 免费黄色网址在线观看| 国产精品99久久久久久人| 九九视频直播综合网| 波多野结衣在线观看视频| 国产一级aa大片毛片| 国产不卡精品一区二区三区| 黄色漫画在线免费看| 在线观看的日韩av| 欧美亚洲日本一区二区三区| 成人v精品蜜桃久久一区| 久久九九国产精品| 69免费视频| 国产精品羞羞答答xxdd| 自拍偷拍亚洲视频| 亚洲一级网站| 精品国产91久久久久久浪潮蜜月| 日韩在线视频一区二区三区| 97欧美在线视频| 91在线观看入口| 成人一区在线看| 国产亚洲精品一区二区| 色婷婷精品久久二区二区蜜臂av| 中文字幕黄色片| 国内性生活视频| 欧亚一区二区| 菠萝蜜视频在线观看入口| 午夜精品在线免费观看| 国产成人一级片| 亚洲制服国产| 欧美日韩视频一区二区三区| 日本午夜免费一区二区| 国产91精品入| 99亚偷拍自图区亚洲| 一本色道久久综合无码人妻| 欧美日韩国产另类不卡| 中文资源在线播放| 国产一级片免费视频| 亚洲另类欧美自拍| 尤物视频在线观看免费| 欧美黄色aaaa| 免费看污黄网站在线观看| 51av在线| 亚洲精品三级| 欧美精品黑人性xxxx| 日本高清不卡在线观看| 国产乱子轮精品视频| 色综合久久久久无码专区| 裸体在线国模精品偷拍| 精品国产福利视频| 欧美精品亚洲精品| 日本人妻一区二区三区| 自拍视频在线| 亚洲大片一区二区三区| 99精品视频在线免费播放| 99热在线免费| 久久久精品视频在线观看| 国产一级免费在线观看| 日本私人网站在线观看| av网站一区| 一级黄色av片| 可以在线看的av| 国产69精品久久99不卡| 色悠悠久久久久| 日韩欧美第一区| 色视频成人在线观看免| 精品一区二区三区免费看| 黑人巨大精品欧美黑白配亚洲| 日韩成人在线网站| 色老头一区二区三区在线观看| 色综合久久精品亚洲国产| 九义人在线观看完整免费版电视剧| 亚洲一区二区视频在线播放| yy6080久久伦理一区二区| 色哟哟在线观看视频| 国产中文字幕二区| 国产h视频在线观看| 亚洲美女视频在线免费观看| 中文字幕精品在线观看| 国产精品偷伦免费视频观看的| 91精品久久久久久久久久久| 日本中文不卡| 亚洲卡通动漫在线| 欧美一级二级三级| 欧美视频三区| 国产高清精品二区| 亚洲免费成人在线| 免费在线观看的电影网站| 免费看污黄网站在线观看| 久久精品国语| 久草一区二区| 国产女主播在线写真| 奇米影视亚洲狠狠色| 日韩精品视频一区二区| 日韩在线免费视频观看| 人人妻人人添人人爽欧美一区| 成人免费观看www在线| 国产在线高清理伦片a| 51蜜桃传媒精品一区二区| 91精品福利| 欧美国产日韩在线播放| 欧美性猛交xxx乱大交3蜜桃| 日本高清免费在线视频| 五月天激情综合| 欧美三区视频| 偷偷色噜狠狠狠狠的777米奇| 久久久777精品电影网影网| 欧美先锋影音| 综合欧美视频一区二区三区| 91精品在线免费视频| 91精品黄色片免费大全| 午夜国产精品视频免费体验区| 国产精品美女视频免费观看软件| 91中文字幕在线视频| 免费福利片在线观看| 亚洲图片小说综合| 伊人久久噜噜噜躁狠狠躁| 91精品国产黑色瑜伽裤| 日韩成人伦理电影在线观看| 精品国精品国产自在久国产应用| 精品无码人妻少妇久久久久久| 日韩欧美国产中文字幕| 男女猛烈无遮挡| 色婷婷亚洲十月十月色天| 久久久久国产视频| 996这里只有精品| 亚洲免费av片| 亚洲国产一区二区三区网站| 国产精品一区二区人妻喷水| 波多野结衣在线观看一区| 久久亚洲精品视频| 九九久久精品视频| 懂色av粉嫩av蜜乳av| 国产黄色在线播放| 欧美精品久久一区| 欧美片第一页| 成人情视频高清免费观看电影| 日本免费久久高清视频| 欧美成人黄色小视频| 在线看片国产福利你懂的| www操com| 国产性色一区二区| 国产成人久久精品77777综合| 欧美猛男做受videos| 蜜臀av一区二区在线免费观看| 日本福利视频导航| 欧美xxxx性xxxxx高清| 影音先锋5566资源站| 欧美区日韩区| 精品福利樱桃av导航| 精品国产一区二区三区四区精华| 久久黄色免费看| av免费在线免费| 精品毛片在线观看| 精品av久久707| 亚洲精品7777xxxx青睐| 国产三级小视频| 精品97人妻无码中文永久在线| 亚洲成人免费视频| 国产又粗又猛又爽又黄91精品| 99香蕉久久| 无码人妻一区二区三区线| 粉嫩一区二区三区在线观看| 国产福利一区二区在线精品| 成人区人妻精品一区二| 精品成人一区二区三区| 欧美激情视频给我|