zoukankan      html  css  js  c++  java
  • 部署mariadb高可用

    上传文件到opt目录下

    Galera能够实现MySQL/MariaDB数据库的主主复制和多主复制等模式,这些复制模式都是同步进行的,同步时间非常短。

    每一个节点都可以同时写入和读取,当某一节点发生故障时,可自动从集群中自动剔除。

    HAProxy能提供负载均衡和故障判断等功能解决服务器系统存在的单点故障。

    Keepalived能提供客户端连接数据库时使用的虚拟IP地址(VIP)。

    (1)主节点

    IP地址:node-1 192.168.1.74

    2)备份节点

    IP地址:node-2 192.168.1.75

    编辑每个节点/etc/hosts文件,添加所有节点IP地址和主机名

    vi /etc/hosts

    192.168.1.74 node-1

    192.168.1.75 node-2

     关闭selinux

    # vi /etc/selinux/config 

    SELINUX=permissive

    关闭防火墙并设置开机不自启

    # systemctl stop firewalld

    配置yum源文件

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

     

    #yum clean all

    #yum list

    安装服务(node-1节点和node-2节点)

    #yum install MariaDB-server galera

    修改配置文件

    (1)修改/etc/my.cnf,添加以下内容(node-1节点和node-2节点)

    #vi /etc/my.cnf

    [mysqld]
    
    max_connect_errors=1000

    (2)配置主节点node-1

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

    [galera]
    wsrep_on=ON
    wsrep_provider=/usr/lib64/galera/libgalera_smm.so 
    wsrep_cluster_address=gcomm:// 
    binlog_format=row
    default_storage_engine=InnoDB
    innodb_autoinc_lock_mode=2
    bind-address=0.0.0.0
    
    wsrep_cluster_name="MariaDB_Cluster"
    wsrep_node_address="192.168.1.74"
    wsrep_sst_method=rsyn

    (3)配置备份节点node-2

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

    [galera]
    wsrep_on=ON
    wsrep_provider=/usr/lib64/galera/libgalera_smm.so 
    
    wsrep_cluster_address="gcomm://192.168.1.74,192.168.1.75" 
    
    binlog_format=row
    default_storage_engine=InnoDB
    innodb_autoinc_lock_mode=2
    bind-address=0.0.0.0
    
    wsrep_cluster_name="MariaDB_Cluster"
    wsrep_node_address="192.168.1.75"
    wsrep_sst_method=rsync
    

     启动服务

    node-1节点:

    #/bin/galera_new_cluster

    node-2节点:

    #systemctl start mariadb

    测试集群状态

    (1)查询集群状态

    #mysql -u root -p

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

    +------------------------------+---------------------------------------+
    | Variable_name                | Value                                 |
    +------------------------------+---------------------------------------+
    | wsrep_apply_oooe             | 0.000000                              |
    | wsrep_apply_oool             | 0.000000                              |
    | wsrep_apply_window           | 0.000000                              |
    | wsrep_causal_reads           | 0                                     |
    | wsrep_cert_deps_distance     | 0.000000                              |
    | wsrep_cert_index_size        | 0                                     |
    | wsrep_cert_interval          | 0.000000                              |
    | wsrep_cluster_conf_id        | 2                                     |
    | wsrep_cluster_size           | 2                                     |
    | wsrep_cluster_state_uuid     | 841486a3-b56a-11e8-a451-d7d8f2309253  |
    | wsrep_cluster_status         | Primary                               |
    | wsrep_commit_oooe            | 0.000000                              |
    | wsrep_commit_oool            | 0.000000                              |
    | wsrep_commit_window          | 0.000000                              |
    | wsrep_connected              | ON                                    |
    | wsrep_desync_count           | 0                                     |
    | wsrep_evs_delayed            |                                       |
    | wsrep_evs_evict_list         |                                       |
    | wsrep_evs_repl_latency       | 0/0/0/0/0                             |
    | 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             | 8412f980-b56a-11e8-bb08-4fd6339a7674  |
    | wsrep_incoming_addresses     | 192.168.100.11:3306,192.168.1.74:3306 |
    | wsrep_last_committed         | 0                                     |
    | wsrep_local_bf_aborts        | 0                                     |
    | wsrep_local_cached_downto    | 18446744073709551615                  |
    | wsrep_local_cert_failures    | 0                                     |
    | wsrep_local_commits          | 0                                     |
    | wsrep_local_index            | 1                                     |
    | wsrep_local_recv_queue       | 0                                     |
    | wsrep_local_recv_queue_avg   | 0.166667                              |
    | wsrep_local_recv_queue_max   | 2                                     |
    | 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       | 841486a3-b56a-11e8-a451-d7d8f2309253  |
    | wsrep_protocol_version       | 7                                     |
    | wsrep_provider_name          | Galera                                |
    | wsrep_provider_vendor        | Codership Oy <info@codership.com>     |
    | wsrep_provider_version       | 25.3.22(r3764)                        |
    | wsrep_ready                  | ON                                    |
    | wsrep_received               | 6                                     |
    | wsrep_received_bytes         | 414                                   |
    | wsrep_repl_data_bytes        | 0                                     |
    | wsrep_repl_keys              | 0                                     |
    | wsrep_repl_keys_bytes        | 0                                     |
    | wsrep_repl_other_bytes       | 0                                     |
    | wsrep_replicated             | 0                                     |
    | wsrep_replicated_bytes       | 0                                     |
    | wsrep_thread_count           | 2                                     |
    +------------------------------+---------------------------------------+
    58 rows in set (0.00 sec)

    如果 "wsrep_local_state_comment" is "Synced" 则表明集群创建成功

    (3)数据同步

    在node-1上新建数据库galera_test

    MariaDB [(none)]> create database galera_test;

    MariaDB [(none)]> show databases;

    在node-2上查询

    MariaDB [(none)]> show databases;

  • 相关阅读:
    如何搭建ssh服务?
    安利三款提升幸福感的chrome插件
    EF6学习笔记七:代码迁移
    EF6学习笔记六:实体拆分(Entity Spliting)实现TPT、表拆分(Table Spliting)实现TPH
    EF6学习笔记五:继承三策略
    EF6学习笔记四:一对多、多对多、一对一关系配置(Fluent API)
    EF6学习笔记三:全局约定和自定义约定,整理并记下来
    EF6学习笔记二:一些详细配置,开始设计一个稍微能用的数据模型
    EF6学习笔记一:code-first简单创建数据库、表的一些过程
    Spring Cloud微服务实战 打造企业级优惠券系统 2-9 Spring Data JPA
  • 原文地址:https://www.cnblogs.com/djlsunshine/p/9800077.html
Copyright © 2011-2022 走看看