千家信息网

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

发表于:2024-10-06 作者:千家信息网编辑
千家信息网最后更新 2024年10月06日,博客分享的第一篇技术文章;项目主要搭建:主主数据库高可用集群搭建。数据库互为主备,应用技术:MM+keepalived使用的是虚拟机搭建的实验向大家展示:数据库1:192.168.4.7数据库2:19
千家信息网最后更新 2024年10月06日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安全错误 数据库的锁怎样保障安全 郑州二手服务器回收价格多少 cpu 服务器挖矿 电网网络安全16字方针 面试网络技术部会问什么问题 数据库如何查找筛选 4月关于网络安全的宣传 网络技术和商务活动关系 天津能源管理平台软件开发 梦回华夏安装后无法连接服务器 服务器管理收入 马斯克数据库建在中国 网络安全教育班会课后反思 网络软件开发团队 济南oa办公软件开发定制 软件开发技术招聘 linux 访问数据库 下面属于网络安全五要素 传奇游戏怎么搭建服务器 网安 网络安全检查报告 福州话翻译软件开发 计算机网络安全标准 杨浦区一站式软件开发销售方法 浪潮服务器风扇噪音解决 梦回华夏安装后无法连接服务器 下一代网络安全体系的结构 深圳梦天游网络技术有限公司 网络安全工作有娱乐的时间吗 叶城县公安局网络安全 华为网络安全员万振华 宁波互联网智慧消防软件开发
0