zoukankan      html  css  js  c++  java
  • 通过keepalived搭建MySQL双主模式的高可用集群系统

    1. 配置MySQL双主模式

    1.修改my.cnf配置文件

    默认情况下,MySQL的配置文件是/etc/my.cnf,在配置文件的[mysqld]段添加如下内容:

    server-id=1
    log-bin=mysql-bin
    relay-log=mysql-relay-bin
    
    • server-id:是节点标识,主从节点不能相同必须全局唯一
    • log-bin:表示开启MySQL日志功能,"mysql-bin"表示日志文件的命名格式
    • relay-log:用来定义relay-log日志文件的命名格式
    2.登录MySQL,授权服务器replication权限及配置从服务器,注意因为是双主模式所以所有操作都为双向操作。

    MySQL master授权replication

    grant replication slave on *.* to 'Federico'@'192.168.1.2' identified by '123456';
    show master status;
    

    MySQL slave指定master服务器,并查看当前服务是否主从复制成功

    stop slave;
    change master to master_host='192.168.1.1',master_user='Federico',master_password='123456',master_port=3306,master_log_file='mysql-bin.000001',master_log_pos=336;
    start slave;
    show slave statusG
    

    查看以下两项参数为yes,证明主从复制设置成功。

                 Slave_IO_Running: Yes
    
            Slave_SQL_Running: Yes
    
    注意:以上操作为双向操作,及互为主从,达到双主的效果。
    
    3. 配置MySQL数据库可以远程登录,即我们的其他服务可以通过vip进行登录
    grant all on *.* to'Federico'@'%' identified by '123456';
    

    2.配置keepalived实现MySQL双主高可用

    修改keepalived配置文件
    #keepalived master配置文件
    ! Configuration File for keepalived
    global_defs {
       router_id HA_MySQL
    }
    vrrp_script check_mysql {
        script "pkill -0 -x mysqld"  
        interval 2  
        fall 2      
        raise 2   
    }
    vrrp_instance VI_1 {
        state MASTER
        nopreempt    
        interface eth0
        virtual_router_id 51
        priority 100
        advert_int 1
        authentication {
            auth_type PASS
            auth_pass 1111
        }
        virtual_ipaddress {
            192.168.1.100   
        }
        track_script {
            check_mysql
        }
    }
    
    
    #keepalived backup配置文件
    ! Configuration File for keepalived
    global_defs {
       router_id HA_MySQL
    }
    vrrp_script check_mysql {
        script "pkill -0 -x mysqld"  
        interval 2  
        fall 2      
        raise 2   
    }
    vrrp_instance VI_1 {
        state BACKUP    
        interface eth0
        virtual_router_id 51
        priority 100
        advert_int 1
        authentication {
            auth_type PASS
            auth_pass 1111
        }
        virtual_ipaddress {
            192.168.1.100   
        }
        track_script {
            check_mysql
        }
    }
    
    

    3.在MySQL客户端通过vip登录,查看是否登录成功

    mysql -u Federico -h 192.168.1.100 -p
    
  • 相关阅读:
    本博客地址迁移,将不再更新内容
    图像处理笔记(一):提升图像对比度的两种基本方法
    字符集乱码问题:ISO-8859-1和GBK
    网易新闻优化APK下载链接
    仿Android网易新闻客户端,并增加水平图片滑动,改进阅读体验
    volley开源库乱码问题总结(持续更新)
    Android获取联系人示例,从数据库加载,带首字母标签
    Android 图像压缩,和LRU算法使用的推荐链接
    抛砖引玉:关于Android的ListView中CheckBox错乱
    Android图片适配,drawable文件夹,低分辨率图片是否必要
  • 原文地址:https://www.cnblogs.com/Cherry-Linux/p/7680447.html
Copyright © 2011-2022 走看看