MariaDB,Galera多主集群安装
记录下MariaDB,Galera多主集群的安装与配置
环境配置
192.168.0.184 | centos-mysql |
---|---|
192.168.0.186 | centos-master |
192.168.0.187 | centos-minion1 |
三台均用阿里云镜像站,配置一个Mariadb 镜像如下
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repowget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repovi /etc/yum.repos.d/MariaDB.repo[mariadb]name = MariaDBbaseurl = http://mirrors.ustc.edu.cn/mariadb/yum/10.1/centos7-amd64gpgkey=http://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDBgpgcheck=1
升级所有包
yum upgrade -y #不改变软件设置和系统设置,系统版本升级,内核不改变
安裝Mariadb
yum install -y MariaDB MariaDB-server MariaDB-shared MariaDBb-common galera rsync
启动服务 修改密码
[root@localhost ~]# systemctl start mariadb[root@localhost ~]# /usr/bin/mysqladmin -u root password 'root'
关闭防火墙
[root@localhost ~]# systemctl stop firewalld.service[root@localhost ~]# systemctl disable firewalld.service
配置域名解析
vim /etc/hosts192.168.0.184 centos-mysql192.168.0.186 centos-master192.168.0.187 centos-minion1
加大文件描述符
vi /etc/security/limits.confsoft nofile 65536hard nofile 65536vi /etc/sysctl.conffs.file-max=655350 net.ipv4.ip_local_port_range = 1025 65000 net.ipv4.tcp_tw_recycle = 1 sysctl -p
安装percona-xtrabackup
tar -xvf percona-xtrabackup-2.4.6-Linux-x86_64.tar.gz [root@centos-mysql opt]# cd percona-xtrabackup-2.4.6-Linux-x86_64/bin/[root@centos-mysql bin]# cp -a * /usr/bin/
修改server.cnf
#节点ip[root@centos-master ~]# cat /etc/my.cnf.d/server.cnf [server][mysqld][galera]wsrep_on=ONwsrep_provider=/usr/lib64/galera/libgalera_smm.so #galera的库文件的地址wsrep_cluster_address="gcomm://192.168.0.184,192.168.0.186,192.168.0.187"#各节点的ipwsrep_node_name=centos-master #节点主机名 wsrep_node_address=192.168.0.186#节点ipbinlog_format=row #二进制日志设置为行模式 row (安全性最高,性能最低)default_storage_engine=InnoDB #使用的默认引擎 innoDB 支持事务innodb_autoinc_lock_mode=2 #2为性能最好 [embedded][mariadb][mariadb-10.1]
启动服务
sudo -u mysql /usr/sbin/mysqld --wsrep-new-cluster &> /tmp/wsrep_new_cluster.log &tail -f /tmp/wsrep_new_cluster.log # 如果出现 ready for connections, 表示启动成功#只需要任意一台机子启动 这条命令
其余使用这个
systemctl start mariadb
在任意数据库服务器执行以下命令验证 MariaDB Galera Cluster$ mysql -uroot -p -e "show status like 'wsrep_cluster_size'#这里应该显示集群里有3个节点$ mysql -uroot -p -e "show status like 'wsrep_connected' #这里应该显示ON$ mysql -uroot -p -e "show status like 'wsrep_incoming_addresses' #这里应该显示3个ip$ mysql -uroot -p -e "show status like 'wsrep_local_state_comment'#这里显示节点的同步状态
注意事项
- 如果三台服务都关闭了,需要更改配置文件才能起来
- 会以master关闭前数据为主 再启动的master
[root@centos-master ~]# more /var/lib/mysql/grastate.datGALERA saved stateversion: 2.1uuid:9b049efe-682f-11ea-bc1f-96ff892d587dseqno:-1safe_to_bootstrap: 0#把safe_to_bootstrap改为1 就可以启动了
作者: meethong
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。
作者:meethong
来源链接:https://www.cnblogs.com/meethong/p/12795965.html
版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。
2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。