Keepalived +Mysql 主主同步

來源:互聯網
上載者:User

標籤:keepalived + mysql 雙主

一、配置Mysql主主同步1,修改/etc/my.cnf,建立同步處理的使用者Master104[[email protected] ~]# vim /etc/my.cnf[mysqld]server-id = 1                    #backup這台設定2log-bin = mysql-binbinlog-ignore-db = mysql,information_schema       #忽略寫入binlog日誌的庫auto-increment-increment = 2             #欄位變化增量值auto-increment-offset = 1              #初始欄位ID為1slave-skip-errors = all                       #忽略所有複製產生的錯誤[[email protected] ~]# service mysqld restart#查看log bin日誌和pos值位置[[email protected] ~]# mysql -uroot -pmysql> grant replication slave on *.* to ‘replication‘@‘192.168.9.%‘ identified by ‘replication‘;Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)Backup106#106配置Mysql主主同步[[email protected] ~]# vim /etc/my.cnf [mysqld]server-id = 2                    log-bin = mysql-binbinlog-ignore-db = mysql,information_schema       auto-increment-increment = 2             auto-increment-offset = 1              slave-skip-errors = all    [[email protected] ~]# service mysqld restart#查看log bin日誌和pos值位置[[email protected] ~]# mysql -uroot -pmysql> grant replication slave on *.* to ‘replication‘@‘192.168.9.%‘ identified by ‘replication‘;Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)2、配置Mysql主主同步Master 104[[email protected] ~]# mysql -uroot -pmysql> show master status;+------------------+----------+--------------+--------------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |+------------------+----------+--------------+--------------------------+| mysql-bin.000002 | 625 | | msyql,information_schema |+------------------+----------+--------------+--------------------------+1 row in set (0.00 sec)mysql> change master to -> master_host=‘192.168.9.106‘, -> master_user=‘replication‘, -> master_password=‘replication‘, -> master_log_file=‘mysql-bin.000002‘, -> master_log_pos=356;Query OK, 0 rows affected (0.02 sec)mysql> start slave;Query OK, 0 rows affected (0.00 sec)mysql> show slave status\G*************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 192.168.9.106 Master_User: replication Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin.000002 Read_Master_Log_Pos: 356 Relay_Log_File: 104-relay-bin.000002 Relay_Log_Pos: 253 Relay_Master_Log_File: mysql-bin.000002 Slave_IO_Running: Yes Slave_SQL_Running: YesBackup 106[[email protected] ~]# mysql -uroot -pmysql> show master status;+------------------+----------+--------------+--------------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |+------------------+----------+--------------+--------------------------+| mysql-bin.000002 | 356 | | mysql,information_schema |+------------------+----------+--------------+--------------------------+1 row in set (0.00 sec)mysql> change master to-> master_host=‘192.168.9.104‘,-> master_user=‘replication‘,-> master_password=‘replication‘,-> master_log_file=‘mysql-bin.000002‘,-> master_log_pos=625;Query OK, 0 rows affected (0.02 sec)mysql> start slave;Query OK, 0 rows affected (0.00 sec)mysql> show slave status\G*************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 192.168.9.104 Master_User: replication Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin.000002 Read_Master_Log_Pos: 625 Relay_Log_File: 106-relay-bin.000002 Relay_Log_Pos: 253 Relay_Master_Log_File: mysql-bin.000002 Slave_IO_Running: Yes Slave_SQL_Running: Yes#如果Slave_IO_Running和Slave_SQL_Running為Yes,則配置主主正常,可以建立測試下二、配置keepalived實現雙主熱備1,#下載安裝keepalived[[email protected] ~]# cd /usr/local/src/[[email protected] src]# wget http://www.keepalived.org/software/keepalived-1.2.13.tar.gz[[email protected] src]# yum -y install gcc gcc-c++ gcc-g77 ncurses-devel bison libaio-devel cmake libnl* libpopt* popt-static openssl-devel[[email protected] src]# tar xf keepalived-1.2.13.tar.gz [[email protected] src]# cd keepalived-1.2.13[[email protected] keepalived-1.2.13]# ./configure --prefix=/usr/local/keepalived  --disable-fwmark [[email protected] keepalived-1.2.13]# make[[email protected] keepalived-1.2.13]# make install2,#配置keepalived配置成系統服務[[email protected] keepalived-1.2.13]# cd /usr/local/keepalived/[[email protected] keepalived]# cp etc/rc.d/init.d/keepalived /etc/init.d/[[email protected] keepalived]# cp etc/sysconfig/keepalived /etc/sysconfig/[[email protected] keepalived]# mkdir /etc/keepalived[[email protected] keepalived]# cp etc/keepalived/keepalived.conf /etc/keepalived/[[email protected] keepalived]# cp sbin/keepalived /usr/sbin/[[email protected] keepalived]# chkconfig keepalived on[[email protected] keepalived]# chkconfig --list keepalived keepalived 0:off 1:off 2:on 3:on 4:on 5:on 6:off  3,#配置mysql熱備Mater 104[[email protected] keepalived]# vim /etc/keepalived/keepalived.conf! Configuration File for keepalivedglobal_defs {        router_id Mysql_HA    #標識,雙主相同}vrrp_instance zabbix_mysql {        state Backup               #倆台都設定Backup        interface eth0        virtual_router_id 53     #主備相同        priority 100                 #優先順序,backup設定90        advert_int 1        nopreempt                  #不主動搶佔資源,只在master這台優先順序高的設定,backup不設定        authentication {                auth_type PASS                auth_pass sina         }        virtual_ipaddress {                192.168.9.123         }   }   virtual_server 192.168.9.123 3306 {         delay_loop 6         nat_mask 255.255.255.0         persistence_timeout 50         protocol TCP         real_server 192.168.9.104 3306 {                  weight 3                  notify_down "/etc/keepalived/mysql.sh"                  TCP_CHECK {                          connect_timeout 5                          nb_get_retry 2                          delay_before_retry 3                  }         } }[[email protected] keepalived]# vim /etc/keepalived/mysql.sh#!/bin/bash/etc/init.d/keepalived stop#啟動keepalived[[email protected] keepalived]# /etc/init.d/keepalived start[[email protected] keepalived]# ip addr1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN  link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host  valid_lft forever preferred_lft forever2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:ff:a5:92 brd ff:ff:ff:ff:ff:ff inet 192.168.9.104/24 brd 192.168.9.255 scope global eth0 inet 192.168.9.123/32 scope global eth0 inet6 fe80::20c:29ff:feff:a592/64 scope link  valid_lft forever preferred_lft foreverBackup106[[email protected] keepalived]# vim /etc/keepalived/keepalived.conf! Configuration File for keepalivedglobal_defs {        router_id Mysql_HA    }vrrp_instance zabbix_mysql {        state Backup                       interface eth0        virtual_router_id 53             priority 90                         advert_int 1        authentication {                auth_type PASS                auth_pass sina         }        virtual_ipaddress {                192.168.9.123         }   }   virtual_server 192.168.9.123 3306 {         delay_loop 6         nat_mask 255.255.255.0         persistence_timeout 50         protocol TCP         real_server 192.168.9.106 3306 {                  weight 3                  notify_down "/etc/keepalived/mysql.sh"                  TCP_CHECK {                          connect_timeout 5                          nb_get_retry 2                          delay_before_retry 3                  }         } }[[email protected] keepalived]# vim /etc/keepalived/mysql.sh#!/bin/bash/etc/init.d/keepalived stop[[email protected] keepalived]# chmod +x /etc/keepalived/mysql.sh#啟動keepalived[[email protected] keepalived]# /etc/init.d/keepalived start[[email protected] keepalived]# ip addr4,驗證104停止mysqld[[email protected] keepalived]# service mysqld stopShutting down MySQL.... SUCCESS! [[email protected] keepalived]# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN  link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host  valid_lft forever preferred_lft forever2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:ff:a5:92 brd ff:ff:ff:ff:ff:ff inet 192.168.9.104/24 brd 192.168.9.255 scope global eth0 inet6 fe80::20c:29ff:feff:a592/64 scope link  valid_lft forever preferred_lft forever106[[email protected] keepalived]# ip addr1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN  link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host  valid_lft forever preferred_lft forever2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:c1:76:6b brd ff:ff:ff:ff:ff:ff inet 192.168.9.106/24 brd 192.168.9.255 scope global eth0 inet 192.168.9.123/32 scope global eth0 inet6 fe80::20c:29ff:fec1:766b/64 scope link  valid_lft forever preferred_lft forever


Keepalived +Mysql 主主同步

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.