MariaDB Cluster install with CentOS7

系统环境:CentOS7  64位

MariaDB版本:MariaDB-Galera-server5.5

主机规划:

192.168.0.233    client233

192.168.0.234    client234

192.168.0.235    client235

三台主机安装之前,必须先设置selinux 、hostname 和  iptables; 如下:

(1)selinux=Disabled

(2)systemctl stop  iptables

systemctl disables iptables

iptables  -F

service iptables save

(3)vi /etc/hosts

192.168.0.233    client233

192.168.0.234    client234

192.168.0.235    client235

(4)reboot

  1. mariadb的64位yum源

    vi /etc/yum.repo.d/mariadb.repo

    [mariadb]
    name = MariaDB
    baseurl = http://yum.mariadb.org/5.5/centos7-amd64/
    enabled = 1
    gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
    gpgcheck=1

yum makecache

2. 开始安装

yum install MariaDB-Galera-server MariaDB-client galera

安装完后,查看/etc/my.cnf.d/下的文件是否为如下:

mariadb-client.conf

server.conf

tokudb.conf

3. 在三台主机上初始化mariadb,并且创建集群账户。

All  nodes:

          初始化如下:
          mysql_secure_installation  #提示创建密码,root是否远程登录,删除test数据库。
          service mysql start
          授权账户如下:
          mysql  -p
          GRANT ALL PRIVILEGES ON *.* TO ‘cluster‘@‘%‘ IDENTIFIED BY ‘xxx456‘ WITH GRANT OPTION;
          flush privileges;
          quit
          然后停止All Nodes的数据。
          service mysql stop【All Nodes】
          
4.建立集群:Setup Cluster Configuration on Client233   
    vi /etc/my.cnf.d/server.conf 在【mariadb】模块中添加:
     [mariadb]
      query_cache_size=0
      binlog_format=ROW
      default_storage_engine=innodb
      innodb_autoinc_lock_mode=2
      wsrep_provider=/usr/lib64/galera/libgalera_smm.so
      wsrep_cluster_address=gcomm://192.168.0.234,192.168.0.235
      wsrep_cluster_name=‘cluster‘
      wsrep_node_address=‘192.168.0.233‘
      wsrep_node_name=‘client233‘
      wsrep_sst_method=rsync
      wsrep_sst_auth=cluster:xxx456 
      保存退出后,执行
      /etc/init.d/mysql bootstrap
      结果报如下
      [ERROR] WSREP: gcs/src/gcs_core.c:gcs_core_open():202: Failed to open backend connection: -13 (Permission denied)
      错误,最后查了半天资料,原来还是防火墙的原因。于是:
      iptables  -F
      或者
      iptables -A INPUT -i eth0 -p tcp --dport 3306 -j ACCEPT
      iptables -A INPUT -i eth0 -p tcp --dport 4567 -j ACCEPT
      最后再重新:
      /etc/init.d/mysql bootstrap

5. 建立集群:Setup Cluster Configuration on Client234,只有三处和上面不同
     [mariadb]
      query_cache_size=0
      binlog_format=ROW
      default_storage_engine=innodb
      innodb_autoinc_lock_mode=2
      wsrep_provider=/usr/lib64/galera/libgalera_smm.so
      wsrep_cluster_address=gcomm://192.168.0.233,192.168.0.235
      wsrep_cluster_name=‘cluster‘
      wsrep_node_address=‘192.168.0.234‘
      wsrep_node_name=‘client234‘
      wsrep_sst_method=rsync
      wsrep_sst_auth=cluster:xxx456 
      
      然后:
      iptables  -F
      或者
      iptables -A INPUT -i eth0 -p tcp --dport 3306 -j ACCEPT
      iptables -A INPUT -i eth0 -p tcp --dport 4567 -j ACCEPT
      最后,
      /etc/init.d/mysql start
      
6. 建立集群:Setup Cluster Configuration on Client235,同样只有三处和上面不同
       
      [mariadb]
      query_cache_size=0
      binlog_format=ROW
      default_storage_engine=innodb
      innodb_autoinc_lock_mode=2
      wsrep_provider=/usr/lib64/galera/libgalera_smm.so
      wsrep_cluster_address=gcomm://192.168.0.233,192.168.0.234
      wsrep_cluster_name=‘cluster‘
      wsrep_node_address=‘192.168.0.235‘
      wsrep_node_name=‘client235‘
      wsrep_sst_method=rsync
      wsrep_sst_auth=cluster:xxx456 
      
      然后:
      iptables  -F
      或者
      iptables -A INPUT -i eth0 -p tcp --dport 3306 -j ACCEPT
      iptables -A INPUT -i eth0 -p tcp --dport 4567 -j ACCEPT
      最后,
      /etc/init.d/mysql start
 
 
7. 测试。Testing。。。。。。
时间: 2024-11-10 07:57:49

MariaDB Cluster install with CentOS7的相关文章

Mariadb Cluster+Haproxy+keepalived 集群的详细安装与配置

要点概括 1.关闭iptables 或者设置常用端口为accept(关闭省事) 2.修改/etc/hosts ,设置RSA互信,避免在传文件需要密码 3.使用mariadb或者其他版本的DB带有WSREP功能 4.修改配置文件,在原来初始化的基础上加上WSREP的参数 5.启动第一个节点 6.在第一节点设置其他2节点的连接用户名和密码和配置文件设置一致 7.初始化启动其他节点 8.集群负载均衡和单点故障使用haproxy+keepalived 9.Haproxy+cluster状态检测 10.h

MariaDB.yum install

yum源配置,MariaDB官网链接 # MariaDB 10.2 CentOS repository list - created 2018-02-02 16:03 UTC # http://downloads.mariadb.org/mariadb/repositories/ [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.2/centos7-ppc64 gpgkey=https://yum.mariadb.org/R

Oracle12c install on CentOS7

SIT Test DB server: [[email protected] ~]# uname -r 3.10.0-693.21.1.el7.x86_64 [[email protected] db_1]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [[email protected] PSSDBbak]# df -h Filesystem Size Used Avail Use% Mounted on /dev/

vbox install on centos7

1,cd /etc/yum.repos.d 2,wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo3,yum --enablerepo rpmforge install dkms4,yum groupinstall "Development Tools"5,yum install kernel-devel6,yum install VirtualBox-3.27,usermod -G vboxu

mariadb cluster主从

1.在主节点上/etc/my.cnf service-id=1 在主库mysql授权backup用户的权限 grant replication slave on *.* to [email protected]'%' identified by 'password'; 在终端导出全库 为保证数据库的偏移量一致性 加入--master-data=2 mysqldump -u root --master-data=2 --all-databases > /tmp/backup.sql grep -i

Centos7+Mariadb集群-主从配置介绍

近期一直在恶补Linux相关的知识,主要是就是学Linux下的基本日常应用服务器的配置及优化,今天我们主要介绍一下在Centos7下安装及配置Mysql 集群,说到集群,其实就是为了提高服务的高可用性.对于高可用的相关服务今天不是主要介绍内容,今天主要介绍MYSQL的主从配置.对在Linux下的其他服务的介绍及服务高可用负载均衡我们将会在后期的文章中介绍.开始今天的介绍:Centos7+Mysql主从配置. 环境介绍: Hostname:A-S IP:192.168.5.21 Role:Mysq

Centos7+Mariadb+Keepalived实现Mariadb(MYSQL)的高可用(HA)

我们前面几篇文章中有介绍了Keepalived的功能--HA,关于MySQL-HA,目前有多种解决方案,比如heartbeat.drbd.mmm.共享存储,但是它们各有优缺点.heartbeat.drbd配置较为复杂,需要自己写脚本才能实现MySQL自动切换,对于不会脚本语言的人来说,这无疑是一种脑裂问题:对于mmm,生产环境中很少有人用,且mmm 管理端需要单独运行一台服务器上,要是想实现高可用,就得对mmm管理端做HA,这样无疑又增加了硬件开支:对于共享存储,个人觉得MySQL数据还是放在本

MariaDB基于MHA和Galera Cluster实现高可用

MySQL高可用 MMM:MySQL主主复制管理器是一套灵活的脚本程序,基于perl实现,用来对mysqk replication进行监控和故障迁移,并能管理mysql master-master复制的配置(同一时间只有一个节点是可写的) MHA:对主节点进行监控,可实现自动故障转移至其他从节点,通过提升某一节点为新的主节点,基于主从复制实现,还需要客户端配合时间,目前MHA主要支持一主多从的架构,要搭建MHA,要求一个复制集群汇总最少有三台数据库服务器,一主二从,即一太充当master,一台充

Linux学习-基于CentOS7的MariaDB数据库的主从复制

一.MySQL主从复制原理 主从同步过程中主服务器有一个工作线程I/O dump thread,从服务器有两个工作线程I/O thread和SQL thread: 主服务器: dump Thread:为每个Slave的I/O Thread启动一个dump线程,用于向其发送binary log events: 从服务器: I/O Thread:向Master请求二进制日志事件,并保存于中继日志中: SQL Thread:从中继日志中读取日志事件,在本地完成重放. 主库把外界接收的SQL请求记录到自