您好,登錄后才能下訂單哦!
下面講講關于企業主流MySQL高可用集群架構應用工具PXC,文字的奧妙在于貼近主題相關。所以,閑話就不談了,我們直接看下文吧,相信看完企業主流MySQL高可用集群架構應用工具PXC這篇文章你一定會有所受益。
PXC 架構圖:
pxc就屬于一套近乎完美的MySQL高可用集群架構方案;
優點總結:
可以達到時時同步,無延遲現象發生
完全兼容MySQL
對于集群中新節點的加入,維護起來很簡單
數據的強一致性
不足之處總結:
只支持Innodb存儲引擎
存在多節點update更新問題,也就是寫放大問題
在線DDL語句,鎖表問題
sst針對新節點加入的傳輸代價過高的問題
實戰過程:
環境介紹:
192.168.56.100 node1 192.168.56.101 node2 192.168.56.102 node3
安裝之前的注意事項:
三臺機器的防火墻iptables都要關閉,三臺機器的server-id不能一樣。
PXC軟件包下載:
https://www.percona.com/downloads/Percona-XtraDB-Cluster-56/LATEST/
這里我下載的是:Percona-XtraDB-Cluster-5.6.21-rel70.1-25.8.938.Linux.x86_64.tar.gz
接下來三臺機器上都需要針對基礎軟件包進行安裝,使用yum安裝即可,解決依賴性。
perl-IO-Socket-SSL.noarch perl-DBD-MySQL.x86_64 perl-Time-HiRes openssl openssl-devel socat
在節點一(192.168.56.100)上執行操作:
先解壓軟件包并賦予權限
cd /usr/local/ tar -zxvf Percona-XtraDB-Cluster-5.6.21-rel70.1-25.8.938.Linux.x86_64.tar.gz ln -s Percona-XtraDB-Cluster-5.6.21-rel70.1-25.8.938.Linux.x86_64 mysql chown mysql:mysql -R mysql mkdir -p /data/mysql chown mysql:mysql -R /data/mysql
配置pxc的參數文件,這里就比普通的MySQL參數文件多如下幾點:
提及一點注意事項:這里binlog的格式必須row
#pxc default_storage_engine=Innodb innodb_autoinc_lock_mode=2 wsrep_cluster_name=pxc_zs ---------------集群的名字 wsrep_cluster_address=gcomm://192.168.56.100,192.168.56.101,192.168.56.102(集群中節點的IP) wsrep_node_address=192.168.56.100------當前機器的ip地址 wsrep_provider=/usr/local/mysql/lib/libgalera_smm.so wsrep_sst_method=xtrabackup-v2 (sst傳輸方法) wsrep_sst_auth=sst:zs (賬號權限)
初始化數據:
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql/ --defaults-file=/etc/my.cnf --user=mysql
啟動第一節點的服務:
cd /usr/local/mysql/support-files cp mysql.server /etc/init.d/mysql
[root@node1 support-files]# /etc/init.d/mysql bootstrap-pxc Bootstrapping PXC (Percona XtraDB Cluster)MySQL (Percona Xt[ OK ]ster) running (4740)
啟動成功之后,維護數據庫環境并創建用戶
mysql> delete from mysql.user where user!='root' or host!='localhost'; mysql> grant all privileges on *.* to 'zs'@'%' identified by 'zs'; mysql> grant all privileges on *.* to 'sst'@'localhost' identified by 'zs'; mysql> flush privileges;
在節點二(192.168.56.101)上執行操作:
cd /usr/local/ tar -zxvf Percona-XtraDB-Cluster-5.6.21-rel70.1-25.8.938.Linux.x86_64.tar.gz ln -s Percona-XtraDB-Cluster-5.6.21-rel70.1-25.8.938.Linux.x86_64 mysql chown mysql:mysql -R mysql mkdir -p /data/mysql chown mysql:mysql -R /data/mysql
編輯pxc的配置文件:
#pxc default_storage_engine=Innodb innodb_autoinc_lock_mode=2 wsrep_cluster_name=pxc_zs ---------------集群的名字 wsrep_cluster_address=gcomm://192.168.56.100,192.168.56.101,192.168.56.102(集群中節點的IP) wsrep_node_address=192.168.56.101------當前機器的ip地址 wsrep_provider=/usr/local/mysql/lib/libgalera_smm.so wsrep_sst_method=xtrabackup-v2 (sst傳輸方法) wsrep_sst_auth=sst:zs (賬號權限)
初始化數據:
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql/ --defaults-file=/etc/my.cnf --user=mysql
啟動第二個節點的服務:
cd /usr/local/mysql/support-files cp mysql.server /etc/init.d/mysql
[root@node2 mysql]# /etc/init.d/mysql start Starting MySQL (Percona XtraDB Cluster).. [ OK ]
在第三個節點(192.168.56.102)上面執行:
cd /usr/local/ tar -zxvf Percona-XtraDB-Cluster-5.6.21-rel70.1-25.8.938.Linux.x86_64.tar.gz ln -s Percona-XtraDB-Cluster-5.6.21-rel70.1-25.8.938.Linux.x86_64 mysql chown mysql:mysql -R mysql mkdir -p /data/mysql chown mysql:mysql -R /data/mysql
編輯pxc的配置文件:
#pxc default_storage_engine=Innodb innodb_autoinc_lock_mode=2 wsrep_cluster_name=pxc_zs ---------------集群的名字 wsrep_cluster_address=gcomm://192.168.56.100,192.168.56.101,192.168.56.102(集群中節點的IP) wsrep_node_address=192.168.56.102------當前機器的ip地址 wsrep_provider=/usr/local/mysql/lib/libgalera_smm.so wsrep_sst_method=xtrabackup-v2 (sst傳輸方法) wsrep_sst_auth=sst:zs (賬號權限)
初始化數據:
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql/ --defaults-file=/etc/my.cnf --user=mysql
啟動第三個節點的服務:
cd /usr/local/mysql/support-files cp mysql.server /etc/init.d/mysql
[root@node3 mysql]# /etc/init.d/mysql start Starting MySQL (Percona XtraDB Cluster).. [ OK ]
注:其他兩個節點同樣進行安裝與初始化的操作;
但啟動方式不是以/etc/init.d/mysql bootstrap-pxc,換成/etc/init.d/mysql start 這種方式
三個節點都已經啟動成功,這樣在任意一個節點上面,執行一條DML語句的操作,都會同步到另外兩個節點。
對于以上企業主流MySQL高可用集群架構應用工具PXC相關內容,大家還有什么不明白的地方嗎?或者想要了解更多相關,可以繼續關注我們的行業資訊板塊。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。