1. 程式人生 > 實用技巧 >搭建PXC叢集

搭建PXC叢集

PXC叢集介紹

  Percona XtraDB Cluster是業界主流的MySQL叢集方案

  PXC叢集的資料同步具有強一直性的特點

  PXC叢集只支援InnoDB引擎

資料庫也能執行在Docker中

  MySQL放在容器中執行會不會有效能損耗?

    因為Docker是輕量級的虛擬機器,Docker既沒有虛擬硬體,也安裝獨立的作業系統,只是給Docker繫結上了CPU和記憶體,Docker內部再去劃分每個容器佔有多少硬體資源,Docker直接使用宿主機的Linux核心與作業系統進行互動,所以容器IO的效能是不會有損失的

  資料儲存到容器中,如果容器崩潰,如何提取資料?

  因為容器是可讀寫,資料庫存部署在容器中,那麼資料也就存在中容器中,宿主機無發訪問容器內部的檔案,如果容器故障,沒有辦法從容器中提取出來

  但是可以對容器做目錄對映或者掛載資料卷,把容器裡面MySQL的資料目錄對映到宿主機的資料夾下面,即便容器崩潰了,宿主機上存放著資料庫的資料

開啟防火牆埠

  開啟2388、7946和4789埠,重啟Docker服務

firewall-cmd --zone=public --add-port=2377/tcp --permanent
firewall-cmd --zone=public --add-port=7946/tcp --permanent
firewall-cmd --zone=public --add-port=7946/udp --permanent
firewall-cmd --zone=public
--add-port=4789/tcp --permanent firewall-cmd --zone=public --add-port=4789/udp --permanent firewall-cmd --reload

下載PXC映象

docker pull percona/percona-xtradb-cluster
docker tag percona/percona-xtradb-cluster pxc #映象改名
docker rmi percona/percona-xtradb-cluster #將原映象刪掉,就只剩下pxc映象了

PXC的主節點容器

  第一個啟動的PXC節點是主節點,它要初始化PXC叢集

  PXC啟動之後,就沒有主節點的角色

  PXC叢集中任何節點都是可以讀寫資料