1. 程式人生 > 資料庫 >使用docker快速部署mysql pxc叢集

使用docker快速部署mysql pxc叢集

文章目錄

環境準備

節點名稱ip地址
node1192.168.130.20
node2192.168.130.19
node2192.168.130.21

/etc/hosts(node1、node2、node3)

192.168.130.20  hello001
192.168.130.19  hello002
192.168.130.21  hello003

配置

建立資料目錄(node1、node2、node3)

mkdir -p /root/mysql-cluster/data && chmod 777 /root/mysql-cluster/data

pxc節點預設監聽埠:

3306:資料庫對外服務的埠號

4444:請求SST,在新節點加入時起作用
4567:組成員之間溝通的埠
4568:傳輸IST,節點下線,重啟加入時起作用

啟動

node1

docker rm -f mysql-pxc-node1

docker run -d --network=host --name=mysql-pxc-node1 \
-e MYSQL_ROOT_PASSWORD=hello \
-e CLUSTER_NAME=helloPXC \
-e XTRABACKUP_PASSWORD=hello123456 \
-e TZ=Asia/Shanghai \
-v /root/mysql-cluster/data:/var/lib/mysql \
percona/percona-xtradb-cluster:5.7.31

node2

docker rm -f mysql-pxc-node2

docker run -d --network=host --name=mysql-pxc-node2 \
-e MYSQL_ROOT_PASSWORD=hello \
-e CLUSTER_NAME=helloPXC \
-e CLUSTER_JOIN=192.168.130.20 \
-e XTRABACKUP_PASSWORD=hello123456 \
-e TZ=Asia/Shanghai \
-v /root/mysql-cluster/data:/var/lib/mysql \
percona/percona-xtradb-cluster:5.7.31

node3

docker rm -f mysql-pxc-node3

docker run -d --network=host --name=mysql-pxc-node3 \
-e MYSQL_ROOT_PASSWORD=hello \
-e CLUSTER_NAME=helloPXC \
-e CLUSTER_JOIN=192.168.130.20 \
-e XTRABACKUP_PASSWORD=hello123456 \
-e TZ=Asia/Shanghai \
-v /root/mysql-cluster/data:/var/lib/mysql \
percona/percona-xtradb-cluster:5.7.31

檢視叢集狀態

docker exec -it mysql-pxc-node1 /usr/bin/mysql -uroot -phello

mysql> show status like 'wsrep%';
....
wsrep_incoming_addresses 
...

wsrep_incoming_addresses節點地址是否都已經加入