为了账号安全,请及时绑定邮箱和手机立即绑定

2018-08-09 mariadb galera cluster

标签:
SQL Server
sudo apt-get install software-properties-common 
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943dbsudo add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mirrors.neusoft.edu.cn/mariadb/repo/10.1/ubuntu trusty main'sudo apt-get update
sudo apt-get install mariadb-server

galera cluster setup

创建单点 cluster

可以通过以下命令新创建一个 galera cluster 集群

mysqld --wsrep-new-cluster

通过 mysql 命令来查看当前集群的状态:

show status like 'wsrep_%';

显示集群的 wsrep_cluster_size = 0, wsrep_cluster_status = DISCONNECTED,表明node并未加入到 cluster 中。这是因为,需要在修改 mariadb 配置,来开启 wsrep

[galera]# Mandatory settingswsrep_on=ON
wsrep_provider=/usr/lib/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://10.240.140.2,10.240.140.3"binlog_format=row#default_storage_engine=InnoDB#innodb_autoinc_lock_mode=2

修改后重启,查看状态

MariaDB [(none)]> show status like 'wsrep_%';
+------------------------------+--------------------------------------+| Variable_name                | Value                                |
+------------------------------+--------------------------------------+
| wsrep_apply_oooe             | 0.000000                             || wsrep_apply_oool             | 0.000000                             |
| wsrep_apply_window           | 0.000000                             || wsrep_causal_reads           | 0                                    |
| wsrep_cert_deps_distance     | 0.000000                             || wsrep_cert_index_size        | 0                                    |
| wsrep_cert_interval          | 0.000000                             || wsrep_cluster_conf_id        | 5                                    |
| wsrep_cluster_size           | 1                                    || wsrep_cluster_state_uuid     | 11204c5f-9ba9-11e8-a8dc-2acc1cebe53a |
| wsrep_cluster_status         | Primary                              || wsrep_commit_oooe            | 0.000000                             |
| wsrep_commit_oool            | 0.000000                             || wsrep_commit_window          | 0.000000                             |
| wsrep_connected              | ON                                   || wsrep_desync_count           | 0                                    |
...

添加 node

和上述类似,需要修改 mariadb 配置

[galera]# Mandatory settingswsrep_on=ON
wsrep_provider=/usr/lib/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://10.240.140.2,10.240.140.3"binlog_format=row#default_storage_engine=InnoDB#innodb_autoinc_lock_mode=2

再将该新节点加入到现有的 cluster 中

mysqld --wsrep_cluster_address=gcomm://10.240.140.2

重启 node,添加成功后,输入命令查看:

MariaDB [(none)]> show status like 'wsrep_%';
+------------------------------+---------------------------------------+| Variable_name                | Value                                 |
+------------------------------+---------------------------------------+
| wsrep_apply_oooe             | 0.000000                              || wsrep_apply_oool             | 0.000000                              |
| wsrep_apply_window           | 0.000000                              || wsrep_causal_reads           | 0                                     |
| wsrep_cert_deps_distance     | 0.000000                              || wsrep_cert_index_size        | 0                                     |
| wsrep_cert_interval          | 0.000000                              || wsrep_cluster_conf_id        | 2                                     |
| wsrep_cluster_size           | 2                                     || wsrep_cluster_state_uuid     | 846ec2c8-9bb5-11e8-95c5-12bbe81db3ef  |
| wsrep_cluster_status         | Primary                               || wsrep_commit_oooe            | 0.000000                              |
| wsrep_commit_oool            | 0.000000                              || wsrep_commit_window          | 0.000000                              |
| wsrep_connected              | ON                                    || wsrep_desync_count           | 0                                     |
...

注意到 wsrep_cluster_size = 2 表明该 cluster 中当前有 2 个节点。可以通过相同的方式添加新节点保证 2n+1(n=1, 2, 3...) 个节点

测试

通过在任一 node 上进行数据库操作,观察其他 node 的同步情况。如果同步成功,表明创建mariadb galera cluster 成功。



作者:tomatostranger
链接:https://www.jianshu.com/p/7fab1dd117c9


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

举报

0/150
提交
取消