1、分别下载安装数据库
注:需先安装yum扩展源epel-release 和 配置MariaDB源
#yum -y install epel-release
#vim /etc/yum.repos.d/mariadb.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.3.5/centos74-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
enabled=0
#yum -y install MariaDB
#yum -y install MariaDB-server MariaDB-client galera
注:安装galera软件时需要解决它的依赖包:boost-program-options.x86_64
2、分别设置数据库密码
#mysql_secure_installation
配置第一台:
多主1配置
1、停止数据库服务
#systemctl stop mariadb
2、修改数据库配置文件
# vim /etc/my.cnf.d/server.cnf
[galera]
wsrep_on=ON
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://192.168.7.150,192.168.7.151,192.168.7.152"
wsrep_node_name=client1
wsrep_node_address=192.168.7.150
binlog_format=row
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
wsrep_slave_threads=1
innodb_flush_log_at_trx_commit=0
innodb_buffer_pool_size=120M
wsrep_sst_method=rsync
wsrep_causal_reads=ON
3、保存配置文件,初始化数据库
#mysqld_safe --wsrep_cluster_address=qcomm://192.168.7.150,192.168.7.151,192.168.7.152 > /dev/null &
4、所有多主配置完成后运行此命令启动galera
#/bin/galera_new_cluster
多主2配置
1、停止数据库服务
#systemctl stop mariadb
2、编辑多主2配置文件
# vim /etc/my.cnf.d/server.cnf
[galera]
wsrep_on=ON
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://192.168.7.150,192.168.7.151,192.168.7.152"
wsrep_node_name=client2
wsrep_node_address=192.168.7.151
binlog_format=row
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
wsrep_slave_threads=1
innodb_flush_log_at_trx_commit=0
innodb_buffer_pool_size=120M
wsrep_sst_method=rsync
wsrep_causal_reads=ON
3、多主1启动后启动此数据库服务
#systemctl restart mariadb
多主3配置
1、停止数据库服务
#systemctl stop mariadb
2、编辑多主3配置文件
# vim /etc/my.cnf.d/server.cnf
[galera]
wsrep_on=ON
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_address="gcomm://192.168.7.150,192.168.7.151,192.168.7.152"
wsrep_node_name=client3
wsrep_node_address=192.168.7.152
binlog_format=row
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
wsrep_slave_threads=1
innodb_flush_log_at_trx_commit=0
innodb_buffer_pool_size=120M
wsrep_sst_method=rsync
wsrep_causal_reads=ON
3、多主1启动后启动此数据库
#systemctl restart mariadb
测试:
在多主1数据库中创建库并创建表
-> create database test1;
-> create tables test(id int,name varchar(20));
检查另外两台多主中是否存在
-> show databases;
-> use test1
-> show tables;