CentOS7.2下MariaDB的安装

来源:互联网 发布:java return重载 编辑:程序博客网 时间:2024/04/30 02:37

centos7.2安装mariadb集群:

1、关闭SELinux:

先查看SELinux状态:/usr/sbin/sestatus -v,如果SELinux status: enabled,说明是开启状态,修改/etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled
重启机器即可。或者setenforce 0临时关闭。

2、关闭防火墙

systemctl start firewalld.service#启动firewall
systemctl stop firewalld.service#停止firewall搜索
systemctl disable firewalld.service#禁止firewall开机启动

3、安装mariadb cluster

创建文件:
vi /etc/yum.repos.d/MariaDB.repo
添加如下内容:

[mariadb]name = MariaDBbaseurl = http://yum.mariadb.org/10.1/centos7-amd64gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDBgpgcheck=1

线上安装:

sudo yum install MariaDB-Galera-server MariaDB-client galera MariaDB-server MariaDB-shared

或者是安装已下载的安装包:

rpm -ivh MariaDB-10.1.18-centos7-x86_64-common.rpm MariaDB-10.1.18-centos7-x86_64-shared.rpm MariaDB-10.1.18-centos7-x86_64-server.rpm MariaDB-10.1.18-centos7-x86_64-client.rpm galera-25.3.18-1.rhel7.el7.centos.x86_64.rpm 

修改文件/etc/my.cnf.d/server.cnf(先按照单机方式进行配置):

[mysqld]port = 3806user = mysql# * Galera-related settings[galera]#bind-address=0.0.0.0# This group is only read by MariaDB servers, not by MySQL.# If you use the same .cnf file for MySQL and MariaDB,# you can put MariaDB-only options here[mariadb]# This group is only read by MariaDB-10.1 servers.# If you use the same .cnf file for MariaDB of different versions,# use this group for options that older servers don't understand[mariadb-10.1]

4、启动单节点(master)的mysql服务

systemctl start mariadb

其他的节点slave1,slave2也是这样安装并配置,并启动mysql服务,初始化数据库。

5、更改数据库目录位置

关闭节点(如master节点)的mysql服务

systemctl stop mariadb

创建数据存放的目录,如我放在/data/mariadb目录下:

mkdir -p /data/mariadbchown -R mysql:mysql /data/mariadb

复制默认数据存放文件夹到/data/mariadb

cp -a /var/lib/mysql /data/mariadb

然后修改/etc/my.cnf.d/server.cnf:

vim /etc/my.cnf.d/server.cnf

在[mysqld]标签下添加:

datadir = /data/mariadb/mysqlsocket = /var/lib/mysql/mysql.sock

这里顺便把集群信息也配置了,
在[galera]标签下添加:

wsrep_on=ONbinlog_format=rowdefault_storage_engine=InnoDBinnodb_autoinc_lock_mode=2wsrep_provider = /usr/lib64/galera/libgalera_smm.sowsrep_cluster_address = "gcomm://master,slave1,slave2"wsrep_node_name = hostnamewsrep_node_address=local_ip

6、对其他节点的配置文件进行更改

按照第5步对slave1和slave2进行操作,关闭服务,创建数据库目录/data/mariadb,更改权限,复制默认数据存放文件
夹到/data/mariadb,修改/etc/my.cnf.d/server.cnf文件。

7、启动集群

启动该命令的节点将成为主节点(如在master节点):

mysqld --wsrep-new-cluster --user=root &

然后启动slave1和slave2的mysql服务:

service mysql start

添加新节点:

在新节点按照1~3步骤安装Mariadb,但是文件/etc/my.cnf.d/server.cnf要改下对应的ip和节点名wsrep_node_name
和wsrep_node_address,改成这个新节点的主机名和ip。
然后在新节点上执行命令启动mariadb服务:

systemctl start mariadb

然后master上执行

show status like 'wsrep_%'

就可以看到wsrep_cluster_size节点数为2了。

删除节点:

在待删除节点上执行命令停止mariadb服务

systemctl stop mariadb

然后在master节点上执行

show status like 'wsrep_%',

就可以看到wsrep_cluster_size节点数变成1了。


备注

ps -ef是查看所有的进程
可以查看mariadb服务是否启动:
在第一个启动节点上执行 ps -ef | grep wsrep,如果启动,会有进程:

root      21312  19869  0 17:55 pts/1    00:00:02 mysqld --wsrep-new-cluster --user=root

在其他节点上执行 ps -ef | grep wsrep,如果启动,会有进程:

mysql    4625    1  0 17:55 ?     00:00:01 /usr/sbin/mysqld --wsrep_start_position=a282f0f5-9171-11e6-88cd-8e886d712351:21

删除mariadb,要删彻底:
找到任何与mariadb相关的,删掉

find / -name "mariadb" -exec rm -rf {} \;yum remove Maria*yum remove galera
0 0
原创粉丝点击