千家信息网

MM(主主数据库)+keepalived主备高可用集群

发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,博客分享的第一篇技术文章;项目主要搭建:主主数据库高可用集群搭建。数据库互为主备,应用技术:MM+keepalived使用的是虚拟机搭建的实验向大家展示:数据库1:192.168.4.7数据库2:19
千家信息网最后更新 2025年02月02日MM(主主数据库)+keepalived主备高可用集群
博客分享的第一篇技术文章;项目主要搭建:主主数据库高可用集群搭建。数据库互为主备,应用技术:MM+keepalived使用的是虚拟机搭建的实验向大家展示:数据库1:192.168.4.7数据库2:192.168.4.77VIP:192.168.4.68web1:192.168.4.69web2: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.indexdatadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.sockbinlog_format="mixed"数据库192.168.4.77[mysqld]#vim/etc/my.cnf[mysqld]log-bin=master77server_id=77binlog_format="mixed"log_slave_updatesdatadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.sock:wq依次启动两台数据库:systemctlstart mariadb2、导入数据库:将数据库192.168.4.7备份出来的数据库导入到数据库192.168.4.77,以此保持两端数据一致mysql -uroot -p123456 < all.sql3、配置用户授权并查看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 -p123456mysql>change master  to  master_host="192.168.4.77",master_user="slave",master_password="123456",master_log_file="master77.000001",master_log_pos=357;mysql>start slave;                       //启动slavemysql>show  slave status\G;       //查看slave状态数据库192.168.4.77mysql>change master  to  master_host="192.168.4.7",master_user="slave",master_password="123456",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 keepalivedglobal_defs{   notification_email{     acassen@firewall.loc     failover@firewall.loc     sysadmin@firewall.loc   }   notification_email_fromAlexandre.Cassen@firewall.loc   smtp_server192.168.200.1   smtp_connect_timeout30   router_idLVS_DEVEL}vrrp_scriptcheck_mysql {                                                            script    "/opt/mysql.sh"                       //监控脚本存放位置(最后有参考脚本,也可以自己写)       interval        2                                     //(检测脚本执行的间隔)       weight         2}vrrp_instanceVI_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 keepalivedglobal_defs{   notification_email{     acassen@firewall.loc     failover@firewall.loc     sysadmin@firewall.loc   }   notification_email_fromAlexandre.Cassen@firewall.loc   smtp_server192.168.200.1   smtp_connect_timeout30   router_idLVS_DEVEL}vrrp_scriptcheck_mysql {       script"/opt/mysql.sh"       interval         2       weight           2}vrrp_instanceVI_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/basha=`ps-C mysqld --no-header | wc -l`if[ $a -eq 0 ];then   systemctlstart mariadb   sleep3b=`ps-C mysqld --no-header | wc -l`   if[ $b -eq 0 ];then   killallkeepalived   fifi
数据 数据库 脚本 配置 状态 备份 同步 监控 文件 服务 一致 主机 技术 服务器 用户 检测 测试 集群 不同 相同 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 山东荟萃芳华互联网科技有限公司 浦东新区媒体软件开发价格表格 摩尔庄园的九游服务器是官服吗 2019年网络安全法考试 从云原生数据库到企业 杭州小蝶网络技术有限公司 我国网络安全执法单位 互联网科技强势入驻华北区 海康设备主动连接服务器 快速删除数据库数据方法 嵌入式开发应用软件开发 速达新建账套生成不了数据库 解决网络安全办法 vb查询软件开发教程 放心的贸易软件开发定制 连云港火柴网络技术有限公司 网络安全手账素材 服务器搭建与管理心得 关于部队网络安全的手抄报 数据库怎么看函数依赖关系 阿里云服务器安装qq 徐州游戏软件开发招聘网 数据库注入攻击 二级服务器管理 密码学与网络安全只是重点 数据库中有哪些作业 海峡信息_网络安全厂家 中电福富软件开发加班多吗 华为电脑的服务器地址在哪里 通信与网络技术实验报告
0