企业主流MySQL高可用集群架构三部曲之PXC
前段时间,老张给大家介绍了企业中主流MySQL高可用集群架构三部曲中的前两部,有不了解的同学可以去访问我之前的博客内容。
第一部曲直通车>> 企业中MySQL主流高可用架构实战三部曲之MHA
第二部曲直通车>>企业中MySQL高可用集群架构三部曲之MM+keepalived
独家新课程上线>>MySQL体系结构深入剖析及实战DBA视频课程
不足之处总结:
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
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;
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 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 ]
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 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主流高可用集群架构三部曲就完结了!有欠妥的地方,请大家多多指教。
今后还会出更多好文章奉献给大家,技术只有在无限的分享中,得到进一步地升华!
让我们一起加油!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
MySQL DBA必备工具使用的6大锦囊妙计
老张我呢不仅是个金庸迷,还是个三国迷。就是喜欢看后期蜀国诸葛亮与魏国司马懿之间的斗智斗勇。各种锦囊妙计的使用,堪称经典。针对管理MySQL数据库这块,张老师也有很多妙计,今后一一给大家介绍。说回三国,我个人更倾向于蜀国可以统一,但事与愿违,很可惜,最终还是魏国司马炎统一了天下。有人把蜀国失败的原因归结于一个扶不起的刘婵,也有人把原因归结于天命,更有甚者说是"卧龙凤雏得其一"才可得天下,而刘备两人兼得了。现在听听很可笑,其实任何人的命运还都是掌握在自己手中的。 我们要学会尽人事知天命,努力去做好每一件事儿,不放过一个小小的细节。尤其是从事数据库这个领域,更要细致细心。曾经我的一位老师跟我说过,你要学会把你从事的工作,融入到自己的血液当中去。只有真正地爱上它,才能去用心去研究它! 每次老张写博之前,都喜欢说一些心灵鸡汤,不爱听的老铁们,也希望你们见谅!其实就是希望大家能够用心去做每一件事儿,不管在哪个行业,你早晚会成功。 老张的 MySQL 网络课程部分也在51CTO学院正式上线了,想学习的同学们可以去访问 有任何问题都可以及时跟老师沟通。 今儿给大家分享一篇,关于MySQL DBA必备工...
- 下一篇
Android Studio - 第四十八期 模块ViewPager+Fragment
最近一直在review撸撸的代码,发现了一种模块的写法,非常不错,独立出来,希望能帮到你~ 如果你遇到这样的页面,怎么办,不会把所有代码都写到一个页面中吧~,这样看你代码的人会骂死你的吧~我想~而且如果不同的版本要用不同的位置,大小也不一样,难道你要重新布局嘛~这都是开发中需要纠结的,下面就开始正题了,这是利用了以前讲过的多版本打版以及配置多Fragment加载巧妙的解决了复杂的页面逻辑,我数了数,首页代码不到一百行,厉害吧~哈哈哈哈~ 在写这样的页面之前给大家介绍一下怎么写一个页面模块代码。 demo1:单Activity页面多模块单版本 Demo1FragmentFactory: packagecom.example.p031_mokuaihua_viewpager_fragment.demo1.factorys; importandroid.support.v4.util.SparseArrayCompat; importcom.example.p031_mokuaihua_viewpager_fragment.R; importcom.example.p031_mo...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- MySQL8.0.19开启GTID主从同步CentOS8
- Mario游戏-低调大师作品
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题