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 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦