真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

MySQL中MMM高可用架構的安裝配置流程

下文我給大家簡單講講關于MySQL中MMM高可用架構的安裝配置流程,大家之前了解過相關類似主題內容嗎?感興趣的話就一起來看看這篇文章吧,相信看完MySQL中MMM高可用架構的安裝配置流程對大家多少有點幫助吧。

創(chuàng)新互聯(lián)公司專注于瀏陽企業(yè)網(wǎng)站建設,響應式網(wǎng)站建設,成都商城網(wǎng)站開發(fā)。瀏陽網(wǎng)站建設公司,為瀏陽等地區(qū)提供建站服務。全流程按需定制開發(fā),專業(yè)設計,全程項目跟蹤,創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務

實驗環(huán)境

MySQL中MMM高可用架構的安裝配置流程

主機IP地址
mysql-m1主云服務器192.168.58.131
mysql-m2主云服務器192.168.58.136
mysql-m3從云服務器192.168.58.146
mysql-m4從云服務器192.168.58.147
mysql-monitor監(jiān)視代理云服務器192.168.58.148

實驗過程

搭建MySQL多主多從模式

1、在四臺MySQL云服務器上,都安裝MySQL,過程省略

2、配置ALI云源,然后安裝epel-rlease源,為了下面安裝mysql-mmm工具套件。

[root@localhost ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
[root@localhost ~]# yum -y install epel-release
[root@localhost ~]# yum clean all && yum makecache

3、配置修改m1主配置文件。

vim /etc/my.cnf 

[mysqld]
log_error=/var/lib/mysql/mysql.err                     #配置錯誤日志
log=/var/lib/mysql/mysql_log.log                       #配置常用日志
log_slow_queries=/var/lib/mysql_slow_queris.log        #配置慢日志
binlog-ignore-db=mysql,information_schema              #配置不需要記錄二進制日志的數(shù)據(jù)庫
character_set_server=utf8                              #配置字符集
log_bin=mysql_bin                                      #開啟binlog日志用于主從數(shù)據(jù)復制
server_id=1                                            #每臺server-id的值不能一樣
log_slave_updates=true                                 #此數(shù)據(jù)庫宕機,備用數(shù)據(jù)庫接管
sync_binlog=1                                          #允許同步二進制日志
auto_increment_increment=2                             #字段依次遞增多少
auto_increment_offset=1                                #自增字段的起始值:1、3、5等奇數(shù)ID

配置沒問題后,把配置文件復制到另外一臺主云服務器

[root@localhost ~]# scp /etc/my.cnf root@192.168.58.136:/etc/

4、配置mysql-m1、mysql-m2主主模式
首先查看log bin日志和pos值的位置。

[root@localhost1 ~]# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MySQL connection id is 1065
Server version: 5.5.24-log Source distribution

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MySQL [(none)]> show master status;
+------------------+----------+--------------+--------------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB         |
+------------------+----------+--------------+--------------------------+
| mysql_bin.000002 |      107 |              | mysql,information_schema |
+------------------+----------+--------------+--------------------------+
1 row in set (0.00 sec)

[root@localhost2 ~]# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MySQL connection id is 1065
Server version: 5.5.24-log Source distribution

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MySQL [(none)]> show master status;
+------------------+----------+--------------+--------------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB         |
+------------------+----------+--------------+--------------------------+
| mysql_bin.000002 |      107 |              | mysql,information_schema |
+------------------+----------+--------------+--------------------------+
1 row in set (0.00 sec)

然后,mysql-m1、mysql-m2互相提升訪問權限。

mysql-m1
MySQL [(none)]> grant replication slave on *.* to 'replication'@'192.168.58.%' identified by '123456'; 
MySQL [(none)]> change master to master_host='192.168.58.136',master_user='replication',master_password='123456',master_log_file='mysql_bin.000002',master_log_pos=107;
MySQL [(none)]> flush privileges;

mysql-m2
MySQL [(none)]> grant replication slave on *.* to 'replication'@'192.168.58.%' identified by '123456'; 
MySQL [(none)]> change master to master_host='192.168.58.131',master_user='replication',master_password='123456',master_log_file='mysql_bin.000002',master_log_pos=107;
MySQL [(none)]> flush privileges;

最后分別查看mysql-m1、mysql-m2云服務器的主從狀態(tài),主要查看

Slave_IO_Running: Yes

Slave_SQL_Running: Yes。

MySQL [(none)]> start slave;
MySQL [(none)]> show slave status\G;
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 192.168.58.131
                  Master_User: replication
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql_bin.000002
          Read_Master_Log_Pos: 107
               Relay_Log_File: localhost-relay-bin.000012
                Relay_Log_Pos: 253
        Relay_Master_Log_File: mysql_bin.000002
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes

說明主主同步配置成功。
測試主主同步,在mysql-m1新建一個庫test01

mysql-m1
MySQL [(none)]> create database test01;
MySQL [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| #mysql50#.mozilla  |
| bbs                |
| mysql              |
| performance_schema |
| test               |
| test01             |
+--------------------+
7 rows in set (0.22 sec)

mysql-m2                                #測試成功
MySQL [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| #mysql50#.mozilla  |
| mysql              |
| performance_schema |
| test               |
| test01             |
+--------------------+
7 rows in set (0.22 sec)

5、配置myqsl-m3、mysql-m4作為mysql-m1的從庫。

首先將mysql-m1上的/etc/my.cnf文件,復制到myqsl-m3、mysql-m4兩臺云服務器上。

mysql-m1
[root@localhost ~]# scp /etc/my.cnf root@192.168.58.146:/etc/
[root@localhost ~]# scp /etc/my.cnf root@192.168.58.147:/etc/

查看mysql-m1中數(shù)據(jù)庫的狀態(tài)值。

MySQL [(none)]> show master status;
+------------------+----------+--------------+--------------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB         |
+------------------+----------+--------------+--------------------------+
| mysql_bin.000002 |      107 |              | mysql,information_schema |
+------------------+----------+--------------+--------------------------+
1 row in set (0.00 sec)

在mysql-m3、mysql-m4上分別執(zhí)行。

mysql-m3
MySQL [(none)]> change master to master_host='192.168.58.131',master_user='replication',master_password='123456',master_log_file='mysql_bin.000002',master_log_pos=107;

mysql-m4
MySQL [(none)]> change master to master_host='192.168.58.131',master_user='replication',master_password='123456',master_log_file='mysql_bin.000002',master_log_pos=107;

分別查看mysql-m3、mysql-m4云服務器的主從狀態(tài),如下所示。

MySQL [(none)]> show slave status\G;
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 192.168.58.131
                  Master_User: replication
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql_bin.000002
          Read_Master_Log_Pos: 107
               Relay_Log_File: localhost-relay-bin.000012
                Relay_Log_Pos: 253
        Relay_Master_Log_File: mysql_bin.000002
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes

安裝配置MySQL-MMM

CentOS默認沒有mysql-mmm軟件包,由于之前我們epel官方源已經(jīng)安裝好,在五臺主機上都要安裝MMM

[root@localhost ~]# yum -y install mysql-mmm*

安裝完后,對MMM進行配置

[root@localhost MongoDB1]# vim /etc/mysql-mmm/mmm_common.conf 

    cluster_interface       ens33                       #網(wǎng)卡名稱
    ……
    replication_user        replication
    replication_password    123456
    agent_user              mmm_agent
    agent_password          123456


    ip      192.168.58.131
    mode    master
    peer    db2



    ip      192.168.58.136
    mode    master
    peer    db1



    ip      192.168.58.146
    mode    slave



    ip      192.168.58.147
    mode    slave



    hosts   db1, db2
    ips     192.168.58.100
    mode    exclusive



    hosts   db3, db4
    ips     192.168.58.200, 192.168.58.210
    mode    balanced
                   #將配置文件復制到其他幾臺數(shù)據(jù)庫云服務器對應的目錄下
[root@localhost mysql-mmm]# scp mmm_common.conf root@192.168.58.136:/etc/mysql-mmm/
[root@localhost mysql-mmm]# scp mmm_common.conf root@192.168.58.146:/etc/mysql-mmm/
[root@localhost mysql-mmm]# scp mmm_common.conf root@192.168.58.147:/etc/mysql-mmm/
[root@localhost mysql-mmm]# scp mmm_common.conf root@192.168.58.148:/etc/mysql-mmm/

在作為monitor云服務器的終端上配置

cd /etc/mysql-mmm/ #改密碼
vim mmm_mon.conf


    monitor_user        mmm_monitor
    monitor_password    123456

在所有數(shù)據(jù)庫上為mmm_agent授權

MySQL [(none)]> grant super, replication client, process on *.* to 'mmm_agent'@'192.168.58.%' identified by '123456';
#為mmm_agent授權

在所有數(shù)據(jù)庫上為mmm_moniter授權

MySQL [(none)]> grant replication client on *.* to 'mmm_monitor'@'192.168.58.%' identified by '123456';
#為mmm_monitor授權
MySQL [(none)]> flush privileges
#刷新權限設置

修改所有數(shù)據(jù)庫的mmm_agent.conf

[root@localhost mysql-mmm]# vim /etc/mysql-mmm/mmm_agent.conf
include mmm_common.conf

# The 'this' variable refers to this server.  Proper operation requires
# that 'this' server (db1 by default), as well as all other servers, have the
# proper IP addresses set in mmm_common.conf.
this db1        #分別在四臺數(shù)據(jù)庫云服務器上設置為db1,db2,db3,db4
~                  

在所有數(shù)據(jù)庫云服務器上啟動mysql-mmm-agent

[root@localhost mysql-mmm]# systemctl start mysql-mmm-agent.service
#啟動mmm-agent服務
[root@localhost mysql-mmm]# systemctl enable mysql-mmm-agent.service
#設置mmm-agent服務開機啟動

在monitor云服務器上配置

[root@localhost mysql-mmm]# cd /etc/mysql-mmm/
[root@localhost mysql-mmm]# vim mmm_mon.conf 


    ip                  127.0.0.1
    pid_path            /run/mysql-mmm-monitor.pid
    bin_path            /usr/libexec/mysql-mmm
    status_path         /var/lib/mysql-mmm/mmm_mond.status
    ping_ips            192.168.58.131,192.168.58.136,192.168.58.146,192.168.58.147
    #指定監(jiān)管的云服務器IP地址
    auto_set_online     10

    # The kill_host_bin does not exist by default, though the monitor will
    # throw a warning about it missing.  See the section 5.10 "Kill Host
    # Functionality" in the PDF documentation.
    #
    # kill_host_bin     /usr/libexec/mysql-mmm/monitor/kill_host
    #



    monitor_user        mmm_monitor   #設置監(jiān)管賬戶
    monitor_password    123456        #設置監(jiān)管密碼

[root@localhost mysql-mmm]# systemctl start mysql-mmm-monitor.service   #啟動mysql-mmm-monitor
[root@localhost mysql-mmm]# mmm_control show   #查看節(jié)點運行情況
  db1(192.168.58.131) master/ONLINE. Roles: writer(192.168.58.100)
  db2(192.168.58.136) master/ONLINE. Roles: 
  db3(192.168.58.146) slave/ONLINE. Roles: reader(192.168.58.200)
  db4(192.168.58.147) slave/ONLINE. Roles: reader(192.168.58.210)

當我們把mysql-m3的mysql服務停掉以后,對應的VIP會自動綁定到mysql-m4上

[root@localhost mysql-mmm]# mmm_control show   
  db1(192.168.58.131) master/ONLINE. Roles: writer(192.168.58.100)
  db2(192.168.58.136) master/ONLINE. Roles: 
  db3(192.168.58.146) slave/HARD_OFFLINE. Roles:

 db4(192.168.58.147) slave/ONLINE. Roles: reader(192.168.58.210)(192.168.58.200)

大家覺得MySQL中MMM高可用架構的安裝配置流程這篇文章怎么樣,是否有所收獲。如果想要了解更多相關,可以繼續(xù)關注我們的行業(yè)資訊板塊。


本文名稱:MySQL中MMM高可用架構的安裝配置流程
標題URL:http://weahome.cn/article/jogegp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部