亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

在Docker上快速配置PerconaXtraDBCluster集群

標簽:
MySQL


在Docker上快速配置PerconaXtraDBCluster集群

 

创建Docker内部网络

# Docker创建内部网络 Create network 

 $ docker network create pxc-network 

 

创建多个PXC节点

# 初始化第一个节点 Init First node:  

$ docker run -d \

  -e MYSQL_ROOT_PASSWORD=root \

  -e CLUSTER_NAME=cluster1 \

  -p 3315:3306 \

  --name=node1 \

  --net=pxc-network \

  percona/percona-xtradb-cluster:5.7


#  加入第二个节点 Join the second node:

 docker run -d \

  -e MYSQL_ROOT_PASSWORD=root \ 

  -e CLUSTER_NAME=cluster1 \

  -e CLUSTER_JOIN=node1 \

  -p 3316:3306 \

  --name=node2 \

  --net=pxc-network \

  percona/percona-xtradb-cluster:5.7


#  加入第三个节点 Join the third node:

$ docker run -d \

  -e MYSQL_ROOT_PASSWORD=root \

  -e CLUSTER_NAME=cluster1 \

  -e CLUSTER_JOIN=node1 \

  -p 3317:3306 \

  --name=node3 \

  --net=pxc-network \

  percona/percona-xtradb-cluster:5.7


PS:PerconaXtraDBCluster最少要求三个节点,后续的节点可以不用再加入,但是如果您想用更多节点提供高负载,高吞吐量,就可以加入,注意如果集群中有一半的机器挂了,整个集群就挂了,比如此次配置连接了3个节点,如果关闭2个,这个集群就挂了,必须同时在线一半以上,如果此次你配置了6个节点,你关闭3个节点,整个集群就挂了,必须有4个节点在线,PXC集群才能正常运行,PXC集群最好是奇数个节点。


#  加入第四个节点 Join the forth node 

$ docker run -d \

  -e MYSQL_ROOT_PASSWORD=root \

  -e CLUSTER_NAME=cluster1 \

  -e CLUSTER_JOIN=node1 \

  -p 3318:3306 \

  --name=node4 \

  --net=pxc-network \

  percona/percona-xtradb-cluster:5.7


# 加入第五个节点 Join the fifth node

$ docker run -d \

  -e MYSQL_ROOT_PASSWORD=root \

  -e CLUSTER_NAME=cluster1 \

  -e CLUSTER_JOIN=node1 \

  -p 3319:3306 \

  --name=node5 \

  --net=pxc-network \

  percona/percona-xtradb-cluster:5.7


# 加入第六个节点 Join the 6th node

 $ docker run -d \

  -e MYSQL_ROOT_PASSWORD=root \

  -e CLUSTER_NAME=cluster1 \

  -e CLUSTER_JOIN=node1 \

  -p 3320:3306 \

  --name=node6 \

  --net=pxc-network \

  percona/percona-xtradb-cluster:5.7

 


进入MySQL客户端创建用户

示例,进入节点1 :


$ sudo docker exec -it node1 /usr/bin/mysql -uroot -proot

mysql: [Warning] Using a password on the command line interface can be insecure.

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 12

Server version: 5.7.19-17-57-log Percona XtraDB Cluster (GPL), Release rel17,

Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql@node1>

create user 'perconausr'@'%' identified by '123456';

grant all privileges on *.* to 'perconausr'@'%' ;

flush privileges; 


在图形化客户端登录

# 使用Docker PS 命令查看各个节点3306端口暴露到宿主机的端口

MacdeMacBook-Pro:~ mac$ docker ps

CONTAINER ID        IMAGE                                COMMAND                  CREATED             STATUS              PORTS                                                   NAMES

d6ae0fca296b        percona/percona-xtradb-cluster:5.7   "/entrypoint.sh "        5 seconds ago       Up 3 seconds        4567-4568/tcp, 0.0.0.0:3320->3306/tcp                   node6

4681b9047f91        percona/percona-xtradb-cluster:5.7   "/entrypoint.sh "        44 seconds ago      Up 42 seconds       4567-4568/tcp, 0.0.0.0:3319->3306/tcp                   node5

de9eec930dc2        percona/percona-xtradb-cluster:5.7   "/entrypoint.sh "        9 minutes ago       Up 9 minutes        4567-4568/tcp, 0.0.0.0:3318->3306/tcp                   node4

9fd0d786c1fb        percona/percona-xtradb-cluster:5.7   "/entrypoint.sh "        About an hour ago   Up About an hour    4567-4568/tcp, 0.0.0.0:3317->3306/tcp                   node3

692de88f91f4        percona/percona-xtradb-cluster:5.7   "/entrypoint.sh "        About an hour ago   Up About an hour    4567-4568/tcp, 0.0.0.0:3316->3306/tcp                   node2

50398c3bf454        percona/percona-xtradb-cluster:5.7   "/entrypoint.sh "        About an hour ago   Up About an hour    4567-4568/tcp, 0.0.0.0:3315->3306/tcp                   node1

通过上述信息得知,可以通过127.0.0.1:3320,127.0.0.1:3319,127.0.0.1:3318,127.0.0.1:3317,127.0.0.1:3316,127.0.0.1:3315这几个URL登录到不同的MYSQL节点,在任意一个节点上增删改查,都会同步到其他节点。

https://img1.sycdn.imooc.com//5c1cf3a20001a3b410700554.jpg

點擊查看更多內容
3人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
軟件工程師
手記
粉絲
8
獲贊與收藏
58

關注作者,訂閱最新文章

閱讀免費教程

感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消