一、增加MariaDB源

cd /etc/yum.repos.d

vi MariaDB.repo

# MariaDB 10.1 CentOS repository list - created 2017-04-20 03:29 UTC

# http://downloads.mariadb.org/mariadb/repositories/

[mariadb]

name = MariaDB

baseurl = http://yum.mariadb.org/10.1/centos6-amd64

gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB

gpgcheck=1

如果官方源比较慢,可以使用国内阿里云的源:

[mariadb]

name = MariaDB

baseurl=http://mirrors.aliyun.com/mariadb/mariadb-10.2.6/yum/centos7-amd64

gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB

gpgcheck=1

二、安装

yum install MariaDB-server MariaDB-client

安装完成后启动mysql服务(虽然改名叫mariadb,但服务名还是叫mysql)

service mysql start

三、配置

运行mysql_secure_installation设置数据库root用户密码等。

设置完密码后,使用root用户登录mariadb,设置root用户权限:

mysql –uroot –p

GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY 'Enjoylink$2017' with grant option;

FLUSH PRIVILEGES;

quit

如果安装完成后,遇到无法登录mysql:

[root@iZwz9d4e4x8w76gubkpk7gZ ~]# mysql_secure_installation

Enter current password for root (enter for none):

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

此时,先关闭mysql服务

service mysql stop

编辑server.cnf文件

vi /etc/my.cnf.d/server.cnf

在[mysqld]中加上

[mysqld]

skip-grant-tables

忽略掉登录权限,然后无密码登录mysql,并修改root账户密码:

update user set password=PASSWORD("123456") where user='root';

修改成功后退出,把skip-grant-tables去掉,重启mysql服务即可。

四、设置iptables,开放3306端口让数据库可以远程访问

vi /etc/sysconfig/iptables

增加:-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

保存,并重启iptables服务

service iptables restart

五、配置数据库集群(Galera Cluster)

三个节点都需要做以下工作:

创建同步用户:

CREATE USER 'syncUser'@'%' IDENTIFIED BY 'sync$2017';

授权:

GRANT ALL ON *.* TO 'syncUser'@'%' IDENTIFIED BY 'sync$2017' with grant option;

配置HOSTS:

在三台服务器中添加hosts设置,

vi /etc/hosts

10.243.3.27 dbnode1

10.243.3.17 dbnode2

10.34.2.200 dbnode3

停止所有节点上的mysql服务

service mysql stop

六、配置Mariadb服务

在所有节点服务器中都添加集群配置:

vi /etc/my.cnf.d/server.cnf

[galera]

wsrep_on=ON

wsrep_provider=/usr/lib64/galera/libgalera_smm.so

wsrep_cluster_address="gcomm://dbnode1,dbnode2,dbnode3"

binlog_format=row

default_storage_engine=InnoDB

innodb_autoinc_lock_mode=2

七、停止SELinux安全限制

在所有节点上停止SELinux服务:

暂时停止:setenforce 0

永久停止:vi /etc/selinux/config

将SELINUX的值改一下:SELINUX=disabled

八、开放iptables防火墙端口

vi /etc/sysconfig/iptables

添加以下几个端口:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 4567 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 4444 -j ACCEPT

九、启动集群主节点

It may not be safe to bootstrap the cluster from this node. It was not the last one to leave the cluster and may not contain all the updates. To force cluster bootstrap with this node, edit the grastate.dat file manually and set safe_to_bootstrap to 1 .

如果在所有集群节点都死光的情况下,两次启动集群时,应该在最后一台死的节点上启动。

service mysql start --wsrep_new_cluster

  • or

service mysql bootstrap

十、启动其它节点

service mysql start

十一、    查看集群状态

在主节点上登录Mariadb后,可以查看集群状态:

MariaDB [(none)]> show status like 'wsrep_%';

+------------------------------+----------------------------------------------------+

| Variable_name                | Value                                              |

+------------------------------+----------------------------------------------------+

| wsrep_apply_oooe             | 0.000000                                           |

| wsrep_apply_oool             | 0.000000                                           |

| wsrep_apply_window           | 1.000000                                           |

| wsrep_causal_reads           | 0                                                  |

| wsrep_cert_deps_distance     | 4.133333                                           |

| wsrep_cert_index_size        | 8                                                  |

| wsrep_cert_interval          | 0.000000                                           |

| wsrep_cluster_conf_id        | 9                                                  |

| wsrep_cluster_size           | 3                                                  |

| wsrep_cluster_state_uuid     | 0bdf4eb0-50e1-11e7-a4f3-9bce02f737ae               |

| wsrep_cluster_status         | Primary                                            |

| wsrep_commit_oooe            | 0.000000                                           |

| wsrep_commit_oool            | 0.000000                                           |

| wsrep_commit_window          | 1.000000                                           |

| wsrep_connected              | ON                                                 |

| wsrep_desync_count           | 0                                                  |

| wsrep_evs_delayed            |                                                    |

| wsrep_evs_evict_list         |                                                    |

| wsrep_evs_repl_latency       | 0.00394587/0.00611148/0.00826421/0.00192492/4      |

| wsrep_evs_state              | OPERATIONAL                                        |

| wsrep_flow_control_paused    | 0.000000                                           |

| wsrep_flow_control_paused_ns | 0                                                  |

| wsrep_flow_control_recv      | 0                                                  |

| wsrep_flow_control_sent      | 0                                                  |

| wsrep_gcomm_uuid             | 0b6d316f-50e3-11e7-addf-a66dba4d326d               |

| wsrep_incoming_addresses     | 10.34.2.200:3306,10.243.3.27:3306,10.243.3.17:3306 |

| wsrep_last_committed         | 15                                                 |

| wsrep_local_bf_aborts        | 0                                                  |

| wsrep_local_cached_downto    | 1                                                  |

| wsrep_local_cert_failures    | 0                                                  |

| wsrep_local_commits          | 15                                                 |

| wsrep_local_index            | 0                                                  |

| wsrep_local_recv_queue       | 0                                                  |

| wsrep_local_recv_queue_avg   | 0.000000                                           |

| wsrep_local_recv_queue_max   | 1                                                  |

| wsrep_local_recv_queue_min   | 0                                                  |

| wsrep_local_replays          | 0                                                  |

| wsrep_local_send_queue       | 0                                                  |

| wsrep_local_send_queue_avg   | 0.000000                                           |

| wsrep_local_send_queue_max   | 1                                                  |

| wsrep_local_send_queue_min   | 0                                                  |

| wsrep_local_state            | 4                                                  |

| wsrep_local_state_comment    | Synced                                             |

| wsrep_local_state_uuid       | 0bdf4eb0-50e1-11e7-a4f3-9bce02f737ae               |

| wsrep_protocol_version       | 7                                                  |

| wsrep_provider_name          | Galera                                             |

| wsrep_provider_vendor        | Codership Oy <info@codership.com>                  |

| wsrep_provider_version       | 25.3.20(r3703)                                     |

| wsrep_ready                  | ON                                                 |

| wsrep_received               | 22                                                 |

| wsrep_received_bytes         | 2308                                               |

| wsrep_repl_data_bytes        | 8491                                               |

| wsrep_repl_keys              | 51                                                 |

| wsrep_repl_keys_bytes        | 753                                                |

| wsrep_repl_other_bytes       | 0                                                  |

| wsrep_replicated             | 15                                                 |

| wsrep_replicated_bytes       | 10204                                              |

| wsrep_thread_count           | 2                                                  |

+------------------------------+----------------------------------------------------+

58 rows in set (0.00 sec)

Mariadb配置Galera集群的更多相关文章

  1. MariaDB配置、集群

    MariaDB在centos 7.3的安装,配置和集群搭配 阿里云最新选配系统中,只有centos7.3可选,因此,基于centos 7的MariaDB的安装,配置... 全部删除MySQL/Mari ...

  2. MariaDB Galera集群部署--技术流ken

    Galera集群介绍 MariaDB集群是MariaDB同步多主机集群.它仅支持XtraDB/ InnoDB存储引擎. 主要功能 同步复制 真正的multi-master,即所有节点可以同时读写数据库 ...

  3. mysql主从配置和galera集群

    mariadb主从 主从多用于网站架构,因为主从的同步机制是异步的,数据的同步有一定延迟,也就是说有可能会造成数据的丢失,但是性能比较好,因此网站大多数用的是主从架构的数据库,读写分离必须基于主从架构 ...

  4. Linux下MySQL/MariaDB Galera集群搭建过程【转】

    MariaDB介绍 MariaDB是开源社区维护的一个MySQL分支,由MySQL的创始人Michael Widenius主导开发,采用GPL授权许可证. MariaDB的目的是完全兼容MySQL,包 ...

  5. Mariadb galera 集群

    部署galera 多主架构 (galera集群多用于关键性业务,因为galera集群为了数据的一致性,采用的是同步的机制,这就使galera牺牲了一部分性能来换取数据一致性.) 环境准备:三台服务器 ...

  6. mysql基础之mariadb galera集群(多主)

    一.概念 galera集群多用于关键性业务,因为galera集群为了数据的一致性,采用的是同步的机制,这就使galera牺牲了一部分性能来换取数据一致性. galera集群是基于wsrep协议(端口4 ...

  7. Galera集群server.cnf参数调整--前言

    文档安排: 前言部分会简述下galera集群,正文中会针对我们线上的环境,在不断业务的情况下,进行参数调整的话,有些参数不能够进行配置,会以#***的形式写入配置文件中,文档也会进行进一步说明. 如果 ...

  8. 使用GTID给Galera集群做数据库异步复制

    一.为什么要做Galera集群异步复制 Galera集群解决了数据库高可用的问题,但是存在局限性,例如耗时的事务处理可能会导致集群性能急剧下降,甚至出现阻塞现象.而不幸的是,类似报表等业务需求就需要做 ...

  9. 搭建数据库galera集群

    galera集群 galera简介 galera集群又叫多主集群,用于数据库的同步,保证数据安全 最少3台,最好是奇数台数,当一台机器宕掉时,因为仲裁机制,这台机器就会被踢出集群. 通过wsrep协议 ...

随机推荐

  1. The case for learned index structures

    17年的旧文,最近因为SageDB论文而重读. 文章主要思路是通过学习key的顺序.结构等来预测record在位置.存在与否等.效果方面,据称部分场景下,相对b-tree可以优化70%的内存占用. 最 ...

  2. Solidity的delete操作

    Solidity中有个特殊的操作符delete用于释放空间,因为区块链技术做为一种公用资源,为避免大家滥用.且鼓励主动对空间的回收,释放空间将会返还一些gas. delete关键字的作用是对某个类型值 ...

  3. 自我总结(四) ---java web项目完结,j2ee的开始

    自我完善的过程就是在不断的自我总结不断的改进. 前半个月刚好把项目做完了,项目也答辩了.总的来说吧,我觉得自己在java web这块知识上不算是彻彻底底把他弄懂了,就是说到的知识点都能够回答的上来一些 ...

  4. 了解MySQL联表查询中的驱动表,优化查询,以小表驱动大表

    一.为什么要用小表驱动大表 1.驱动表的定义 当进行多表连接查询时, [驱动表] 的定义为: 1)指定了联接条件时,满足查询条件的记录行数少的表为[驱动表] 2)未指定联接条件时,行数少的表为[驱动表 ...

  5. windows环境下搭建Java开发环境(二):Tomcat安装和配置

    一.资源下载 官网:http://tomcat.apache.org/ 本人安装的是Tomcat8.5,安装包百度云资源:链接:https://pan.baidu.com/s/17SDFsoS0yAP ...

  6. Java设计模式学习记录-单例模式

    前言 已经介绍和学习了两个创建型模式了,今天来学习一下另一个非常常见的创建型模式,单例模式. 单例模式也被称为单件模式(或单体模式),主要作用是控制某个类型的实例数量是一个,而且只有一个. 单例模式 ...

  7. PHP7最高性能优化建议

    PHP7已经发布了, 作为PHP10年来最大的版本升级, 最大的性能升级, PHP7在多放的测试中都表现出很明显的性能提升, 然而, 为了让它能发挥出最大的性能, 我还是有几件事想提醒下. PHP7 ...

  8. LINQ查询操作符 LINQ学习第二篇

    一.投影操作符 1. Select Select操作符对单个序列或集合中的值进行投影.下面的示例中使用select从序列中返回Employee表的所有列: using (NorthwindDataCo ...

  9. C#取整函数Math.Round、Math.Ceiling和Math.Floor 【非原创,用来收藏,分享】

    1.Math.Round:四舍六入五取偶 引用内容 Math.Round(0.0) //0Math.Round(0.1) //0Math.Round(0.2) //0Math.Round(0.3) / ...

  10. 【MongoDB-MongoVUE图像管理工具】

    介绍一款很不错的开源的MongoDB图形化管理工具:MongoVUE . MongoVUE 1.6.9 破解版,下载地址.