没有合适的资源?快使用搜索试试~ 我知道了~
首页Percona Cluster部署指南:MariaDB Galera一致性与挑战
Mairadb集群结合Percona Cluster和MySQL for Galera是一种高可用性解决方案,它基于同步复制策略,确保数据一致性。相比于异步复制,同步复制在延迟控制方面表现优秀,但同时也存在一些挑战。首先,Percona Cluster对InnoDB表的依赖性较强,需要每个InnoDB表都有自增主键,这是在初次部署时需要注意的一个限制。其次,节点间的数据不一致可能源于新加入或脱离节点的操作,这可能导致客户端体验问题,需要通过脚本控制集群状态并确保Haproxy能够继续分发数据。 集群内部的写操作遵循自增ID递增模式,例如在三节点集群中,可能形成如369这样的序列。为了应对可能的数据丢失或节点故障,作者建议每个节点都进行长期的日志备份,即使某节点离线也能通过日志恢复和对比来处理数据一致性问题。使用Toad for MySQL进行数据对比,可以有效地定位和修复不一致。 在搭建过程中,作者提到使用MariaDB集群、Haproxy和Keepalived,强调了不同sysbench版本(5.0和4.2)在相同环境下的性能差异,这表明在选择和配置工具时需要考虑兼容性和性能优化。具体的安装步骤包括在一台配备双核Xeon E5-2680 CPU,内存1922464kB的服务器环境中安装MariaDB集群,并监控内存使用情况,如MemTotal和MemFree,以确保系统资源的有效管理。 Mairadb Percona Cluster MySQL for Galera集群虽然稳定,但运维过程中需要密切关注其特性,合理配置和管理,以应对可能出现的问题,确保业务连续性和数据一致性。
资源详情
资源推荐
资源由 www.eimhe.com 美河学习在线收集分享
no-auto-rehash
[myisamchk]
key_buffer_size = 8M
sort_buffer_size = 8M
[mysqlhotcopy]
interactive-timeout
HH
顺序启动数据库
Node2 和 node3 上(node1 不需要)
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
Node1: /usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/my1.cnf --wsrep-new-cluster
Node2:service mysqld restart
Node3:serivce mysqld restart
测试在任意一台创建删除数据均会同步
6.mysql5.6.24 与 mariadb mariadb10.0.17 单实例压力测试
注意 mariadb10.0.17 相当于 mysql 的 5.5 版本
sysbench-0.5-2.el6_.x86_64.rpm
CREATE TABLE test.`sbtest` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`k` int(10) unsigned NOT NULL DEFAULT '0',
`c` char(120) NOT NULL DEFAULT '',
`pad` char(60) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
KEY `k` (`k`)
) ENGINE=InnoDB;
create table test.sbtest1 select * from test.sbtest; create table test.sbtest2 select * from
test.sbtest;create table test.sbtest3 select * from test.sbtest;create table test.sbtest4 select *
from test.sbtest;create table test.sbtest5 select * from test.sbtest;create table test.sbtest6
select * from test.sbtest;create table test.sbtest7 select * from test.sbtest;create table
test.sbtest8 select * from test.sbtest;create table test.sbtest9 select * from test.sbtest;create
table test.sbtest10 select * from test.sbtest;
create database sbtest;create table sbtest.sbtest select * from test.sbtest;create table
sbtest.sbtest1 select * from test.sbtest;create table sbtest.sbtest2 select * from
test.sbtest;create table sbtest.sbtest3 select * from test.sbtest;create table sbtest.sbtest4 select
资源由 www.eimhe.com 美河学习在线收集分享
* from test.sbtest;create table sbtest.sbtest5 select * from test.sbtest;create table
sbtest.sbtest6 select * from test.sbtest;create table sbtest.sbtest7 select * from
test.sbtest;create table sbtest.sbtest8 select * from test.sbtest;create table sbtest.sbtest9 select
* from test.sbtest;create table sbtest.sbtest10 select * from test.sbtest;
安装 sysbench
[root@zyz_dba_test02~]#wget
http://www.percona.com/redir/downloads/Percona-XtraDB-Cluster/5.5.37-25.10/RPM/rhel6/x86_
64/Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm
[root@zyz_dba_test02~]#yum -y install
Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm
[root@zyz_dba_test02 ~]# rpm -ivh sysbench-0.5-2.el6_.x86_64.rpm
Preparing... ########################################### [100%]
1:sysbench ########################################### [100%]
至此安装完毕
sysbench --test=/usr/share/doc/sysbench/tests/db/select.lua --mysql-table-engine=innodb
--oltp-table-size=1000000 --max-requests=0 --max-time=60 --num-threads=100
--oltp-tables-count=10 --report-interval=1 --mysql-host=10.21.3.108 --mysql-port=3306
--mysql-user=root --mysql-password=123 --mysql-db=test run
测试下并发 800 的情况下的 QPS 读
CPU 已经使用 load 43.19
剩余39页未读,继续阅读
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功