MM(主主数据库)+keepalived主备高可用集群-创新互联

博客分享的第一篇技术文章; 项目主要搭建:主主数据库高可用集群搭建。 数据库互为主备,应用技术:MM+keepalived 使用的是虚拟机搭建的实验向大家展示: 数据库1:192.168.4.7 数据库2:192.168.4.77 VIP:192.168.4.68 web1:192.168.4.69 web2:192.168.4.70 一、安装mysql,部署主主同步结构。 直接yum安装 配置主主同步: 由于主数据库192.168.4.7里面存放着数据,所以需要先导出数据,方法很多,我们采取mysqldump: #mysqldump -uroot   -p123456  --all-databases  >    /opt/all.sql 然后需要将数据拷贝到数据库192.168.4.77。 数据库2: 1、修改配置文件: 数据库192.168.4.7 [mysqld] server_id=7                           #两台主机不能重复 log-bin=master7                     #开启binlog功能 log-bin-index=master7.index datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock binlog_format="mixed" 数据库192.168.4.77 [mysqld] #vim /etc/my.cnf [mysqld] log-bin=master77 server_id=77 binlog_format="mixed" log_slave_updates datadir=/var/lib/ mysqlsocket=/var/lib/mysql/mysql.sock :wq 依次启动两台数据库:systemctl start mariadb 2、导入数据库: 将数据库192.168.4.7备份出来的数据库导入到数据库192.168.4.77,以此保持两端数据一致 mysql -uroot -p123456 < all.sql 3、配置用户授权并查看master信息: 数据库192.168.4.7 给用户授权:允许192.168.4.77的数据库用户slave拥有replication slave权限: mysql>grant replication  slave  on   *.*   to  slave@"192.168.4.77" identified  by "123456"; mysql>show master status;     //查看状态; 数据库192.168.4.77 给用户授权:允许192.168.4.7的数据库用户slave拥有replication slave权限: mysql>grant replication  slave  on   *.*   to  slave@"192.168.4.7" identified  by "123456"; mysql>show master status;     //查看状态; 4、配置相互主从,并开启slave模式: 数据库192.168.4.7 #mysql -uroot -p123456 mysql>change master  to  master_host="192.168.4.77",master_user="slave",master_password="12 3456",master_log_file="master77.000001",master_log_pos=357; mysql>start slave;                       //启动slave mysql>show  slave status\G;       //查看slave状态 数据库192.168.4.77 mysql>change master  to  master_host="192.168.4.7",master_user="slave",master_password="123 456",master_log_file="master7.000001",master_log_pos=357; mysql>start slave; mysql>show  slave status\G;         //查看slave状态 状态都为yes是正常,否则主主同步异常,需要进一步排查  Slave_IO_Running:            Yes  Slave_SQL_Running:         Yes 主主同步配置完成后可以进行一些建库,建表的测试测试,看看两边的数据是否一致 二、安装keepalived并设置监控 keepalived是安装在两台MySQL服务器上的 首先安装keepalived过程不解释就正常解压安装就好 1、修改配置文件/etc/keepalived/keepalived.conf ! Configuration File for keepalived global_defs {    notification_email {      acassen@firewall.loc      failover@firewall.loc      sysadmin@firewall.loc    }    notification_email_from Alexandre.Cassen@firewall.loc    smtp_server 192.168.200.1    smtp_connect_timeout 30    router_id LVS_DEVEL } vrrp_script check_mysql {                                                             script    "/opt/mysql.sh"                       //监控脚本存放位置(最后有参考脚本,也可以自己写)        interval        2                                     //(检测脚本执行的间隔)        weight         2 } vrrp_instance VI_1 {     state         MASTER                                        //备份服务器上将MASTER改为 BACKUP     interface     eth0                                                virtual_router_id         51                                //主、备机的virtual_router_id必须相同     priority            100                  //主、备机取不同的优先级,主机值较大,备份机值较小,备份服                                                 务器设置为99     advert_int             1     authentication {         auth_type                PASS         auth_pass               1111                                  //主、备机一样     } track_script {    check_mysql                            //检测脚本 }     virtual_ipaddress {         192.168.4.68                       //VIP(虚拟IP,对外提供服务的IP)     } } 数据库192.168.4.77配置文件: vim /etc/keepalived/keepalived.conf ! Configuration File for keepalived global_defs {    notification_email {      acassen@firewall.loc      failover@firewall.loc      sysadmin@firewall.loc    }    notification_email_from Alexandre.Cassen@firewall.loc    smtp_server 192.168.200.1    smtp_connect_timeout 30    router_id LVS_DEVEL } vrrp_script check_mysql {        script "/opt/mysql.sh"        interval         2        weight           2 } vrrp_instance VI_1 {     state               BACKUP     interface           eth0     virtual_router_id  51     priority               90     advert_int            1     authentication {         auth_type           PASS         auth_pass           1111     } track_script {    check_mysql }     virtual_ipaddress {         192.168.4.68     } } ****************************************************************************** 监控脚本的作用是:实现keepalived主备的切换 附:监控脚本 vim /opt/ mysql.sh #!/bin/bash a=`ps -C mysqld --no-header | wc -l` if [ $a -eq 0 ];then    systemctl start mariadb    sleep 3 b=`ps -C mysqld --no-header | wc -l`    if [ $b -eq 0 ];then    killall keepalived    fi fi

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。

网站设计、网站制作过程中,需要针对客户的行业特点、产品特性、目标受众和市场情况进行定位分析,以确定网站的风格、色彩、版式、交互等方面的设计方向。创新互联公司还需要根据客户的需求进行功能模块的开发和设计,包括内容管理、前台展示、用户权限管理、数据统计和安全保护等功能。
本文题目:MM(主主数据库)+keepalived主备高可用集群-创新互联
当前路径:http://abwzjs.com/article/gssjs.html