Mariadb galera 群集
环境: CentOS 7 x64 * 3
IP : 192.168.0.100
IP : 192.168.0.101
IP : 192.168.0.102
配置mariadb YUM 源
http://yum.mariadb.org/10.0.15/rhel7-amd64/rpms/
分别下载软件 MariaDB-Galera-10.0.15
wget http://mirrors.neusoft.edu.cn/mariadb/mariadb-galera-10.0.15/source/mariadb-galera-10.0.15.tar.gz
vi /etc/yum.repos.d/mariadb.repo
-----------------------------------------------------------------------------
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.0.15/centos7-amd64/
enabled = 1
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
------------------------------------------------------------------------------
yum makecache
yum -y install galera MariaDB-client socat cmake lsof perl-DBD-MySQL perl-Digest-MD5 perl-Time-HiRes rsync libev zlib-devel
rpm -ivh percona-xtrabackup-2.2.8-5059.el7.x86_64.rpm
/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql
mkdir -p /opt/local/mysql/data
mkdir -p /opt/local/mysql/binlog
mkdir -p /opt/local/mysql/logs
mkdir -p /opt/local/mysql/relaylog
mkdir -p /var/lib/mysql
mkdir -p /opt/local/mysql/wsrep
tar zxvf mariadb-galera-10.0.15.tar.gz
cd mariadb-10.0.15
cmake -DCMAKE_INSTALL_PREFIX="/opt/local/mysql" -DDEFAULT_CHARSET=utf8 -DMYSQL_DATADIR="/opt/local/mysql/data/" -DCMAKE_INSTALL_PREFIX="/opt/local/mysql" -DINSTALL_PLUGINDIR=plugin -DWITH_INNOBASE_STORAGE_ENGINE=1 -DDEFAULT_COLLATION=utf8_general_ci -DENABLE_DEBUG_SYNC=0 -DENABLED_LOCAL_INFILE=1 -DENABLED_PROFILING=1 -DWITH_ZLIB=system -DWITH_EXTRA_CHARSETS=none -DMYSQL_MAINTAINER_MODE=OFF -DEXTRA_CHARSETS=all -DWITH_FAST_MUTEXES=ON -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1
make -j `cat /proc/cpuinfo | grep processor| wc -l`
make install
chmod +w /opt/local/mysql
chown -R mysql:mysql /opt/local/mysql
chmod +w /var/lib/mysql
chown -R mysql:mysql /var/lib/mysql
cp /opt/software/my.cnf /opt/local/mysql/my.cnf
./scripts/mysql_install_db --defaults-file=/opt/local/mysql/my.cnf --basedir=/opt/local/mysql --datadir=/opt/local/mysql/data --user=mysql
cp ./support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
echo 'basedir=/opt/local/mysql/' >> /etc/init.d/mysqld
echo 'datadir=/opt/local/mysql/data' >>/etc/init.d/mysqld
service mysqld start
ln -s /opt/local/mysql/lib/mysql /usr/lib/mysql
ln -s /opt/local/mysql/include/mysql /usr/include/mysql
ln -s /opt/local/mysql/bin/mysql /usr/bin/mysql
ln -s /opt/local/mysql/bin/mysqldump /usr/bin/mysqldump
ln -s /opt/local/mysql/bin/myisamchk /usr/bin/myisamchk
ln -s /opt/local/mysql/bin/mysqld_safe /usr/bin/mysqld_safe
ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
/opt/local/mysql/bin/mysqladmin -u root password 'rldb123'
chkconfig mysqld on
/opt/local/mysql/bin/mysql_secure_installation #mysql 安全加固
# 登陆数据库,授权用于集群同步的用户和密码
/opt/local/mysql/bin/mysql -uroot -p
GRANT ALL PRIVILEGES ON *.* TO 'sst'@'localhost' IDENTIFIED BY 'rldb123';
GRANT ALL PRIVILEGES ON *.* TO 'sst'@'同步ip' IDENTIFIED BY 'rldb123';
FLUSH PRIVILEGES;
# 配置wsrep.cnf文件
cp /opt/local/mysql/support-files/wsrep.cnf /opt/local/mysql/wsrep
vi /opt/local/mysql/wsrep/wsrep.cnf
修改如下
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://"
wsrep_sst_auth=sst:rldb123
wsrep_sst_method=xtrabackup
wsrep_node_address=192.168.0.100
# 注意:
# "gcomm://" 是特殊的地址,仅仅是Galera cluster初始化启动时候使用。
# 如果集群启动以后,我们关闭了第一个节点,那么再次启动的时候必须先修改,"gcomm://"为其他节点的集群地址,
例如 wsrep_cluster_address="gcomm://192.168.0.101:4567"
vi /opt/local/mysql/my.cnf
在[client] 下面 增加
!includedir /opt/local/mysql/wsrep
配置完成以后,重启mysqld
service mysqld restart
netstat -tulpn |grep -e 4567 -e 3306
登录mysql 查看 global 的 status
/opt/local/mysql/bin/mysql -uroot -p
show global status like '%state%';
+-------------------------------------------+--------------------------------------+
| Variable_name | Value |
+-------------------------------------------+--------------------------------------+
| Performance_schema_statement_classes_lost | 0 |
| wsrep_local_state_uuid | b74966e2-a20a-11e4-96f1-c6bffca5b0ea |
| wsrep_local_state | 4 |
| wsrep_local_state_comment | Synced |
| wsrep_cluster_state_uuid | b74966e2-a20a-11e4-96f1-c6bffca5b0ea |
+-------------------------------------------+--------------------------------------+
接下来就是 其他节点的添加! 步骤大概相同
构造新节点的操作步骤如下:
1.安装MariaDB和Galera library
2.wsrep_cluster_address的配置不一样:
wsrep_cluster_address="gcomm://Node-A-IP,Node-B-IP" # 这里指向是指上一层的集群地址
3.重起MariaDB
所有节点配置完成以后,更改节点1的 wsrep_cluster_address="gcomm://" 为其他IP
并 加入 仲裁人
"仲裁人"节点上没有数据,它在集群中的作用就是在集群发生分裂时进行仲裁,集群中可以有多个"仲裁人"节点。
"仲裁人"节点加入集群的方法如下:
garbd -a gcomm://192.168.0.100:4567 -g my_wsrep_cluster -d
# 注释:参数说明: -d:以daemon模式运行 -a:集群地址 -g: 集群名称
测试集群是否配置好参数:登陆数据库:查看如下几个参数:
SHOW VARIABLES LIKE 'wsrep_cluster_address';
# 这个查看wsrep的相关参数
show status like 'wsrep%';
-----------------------------------------------------------------------------------------
配置相同,出现无法启动同步的时候,通常都是因为权限问题。
所有节点都执行授权.
chmod +w /opt/local/mysql
chown -R mysql:mysql /opt/local/mysql
然后再启动同步..
启动完成以后,再次执行授权命令..
通常是因为 data 目录下面的 ib_logfile0 ib_logfile1 ib_logfile2 为root 权限 所以不能同步,导致的。
------------------------------------------------------------------------------------------
Mariadb galera 群集的更多相关文章
- mariadb galera群集故障记录
负责galera上执行删除语句 delete from t1 where group_id= and group_id=; 执行后,群集破坏,除了主节点存活,其他俩个节点全都停掉. 查看galera的 ...
- Mariadb Galera Cluster 群集 安装部署
#Mariadb Galera Cluster 群集 安装部署 openstack pike 部署 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html # ...
- 从 MySQL+MMM 到 MariaDB+Galera Cluster : 一个高可用性系统改造
很少有事情比推出高可用性(HA)系统之后便经常看到的系统崩溃更糟糕.对于我们这个Rails运行机的团队来说,这个失效的HA系统是MySQL多主复制管理器(MMM). 我们已经找寻MMM的替代品有一段时 ...
- Linux下MySQL/MariaDB Galera集群搭建过程
MariaDB介绍 MariaDB是开源社区维护的一个MySQL分支,由MySQL的创始人Michael Widenius主导开发,采用GPL授权许可证. MariaDB的目的是完全兼容MySQL,包 ...
- MariaDB Galera Cluster部署手册
MariaDB Galera Cluster部署手册 galara保证双主数据库的同步及一致性 1.环境准备 基于新部署.最小化安装centos6.5 1> yum install opens ...
- MariaDB Galera Cluster 10.1 只支持 LINUX ?!
MariaDB Galera Cluster (MariaDB 10.1) 当前只支持:LINUX ! 参考: https://mariadb.com/kb/en/mariadb/getting-s ...
- 【原】基于 HAproxy 1.6.3 Keeplived 在 Centos 7 中实现mysql mariadb galera cluster 集群分发读写 —— 上篇
前言 有一段时间没有写blogs,乘着周末开始整理下haproxy + keeplived 实现 mysql mariadb galera cluster 集群访问环境的搭建工作. 本文集中讲hapr ...
- 迁移到MariaDB galera
迁移到MariaDB galera [已注销] [已注销] -- :: [安装] ====== https://downloads.mariadb.org/mariadb/repositories/ ...
- MariaDB Galera Cluster 部署(如何快速部署 MariaDB 集群)
MariaDB Galera Cluster 部署(如何快速部署 MariaDB 集群) OneAPM蓝海讯通7月3日 发布 推荐 4 推荐 收藏 14 收藏,1.1k 浏览 MariaDB 作为 ...
随机推荐
- Bookmark
http://stackoverflow.com/https://www.baidu.com/?tn=06074089_27_pghttp://apistore.baidu.com/http://to ...
- Python Django Learning Notes..
The first time I came across django was last month.. Since then I was considering it as the better c ...
- selenium RC
http://blog.sina.com.cn/s/blog_68cb48770100v9c7.html http://www.cnblogs.com/hyddd/archive/2009/05/24 ...
- cocos2d-js 帧序列动画
1.resource.js var res = { playerWalk_plist:"res/playerWalk.plist", playerWalk_png:"re ...
- thinkPHP16---伪静态
url伪静态通常是为了 满足更好的SEO效果,thinkPHP支持伪静态url设置,可以通过设置URL_HTML_SUFFIX的参数 随意在URL的最后添加你想要的静态后缀,而不会影响当前操作的正常执 ...
- Codeforces 691B s-palindrome
水题. #pragma comment(linker, "/STACK:1024000000,1024000000") #include<cstdio> #includ ...
- Windows API 之 ReadProcessMemory
ReadProcessMemory: BOOL WINAPI ReadProcessMemory( _In_ HANDLE hProcess, _In_ LPCVOID lpBaseAddress, ...
- java导出和读取excel数据
使用的是poi的jar包 下载地址http://poi.apache.org/download.html 主要是把jar包导入,直接新建一个列子测试一下就明白了.使用起来还是比较方便的,代码里面的原理 ...
- webapp之路--meta标签format-detection、apple-mobile-web-app-capable
1. format-detection翻译成中文的意思是“格式检测”,顾名思义,它是用来检测html里的一些格式的,那关于meta的format-detection属性主要是有以下几个设置: meta ...
- STL笔记之【map之移除元素】
//---------------------------------------------------------// 移除map中满足条件的元素//----------------------- ...