新能源技术面试 -- 给出一套mysql备份容灾方案

给出一套mysql备份容灾方案

大家好,我是小川Coding,毕业后在中部城市,已工作4年,准备跳槽中,最近参与了几家线下线上的面试,其中有一家头部新能源企业,待遇颇优,分享下其中一个关于mysql的面试题。

约的是本周一下午1点半,厂区很大,提前一个小时到,HR带我到会议室等待

技术面试来了两个人,直接进入主题

面试官:先做下自我介绍...

...

最后一项问到

面试官:看你简历上有提到擅长mysql数据库,而且在公司是中高级开发,不知道你对mysql的备份容灾有无了解

我:项目最新使用了MySql8.4版本...(还好有所准备)

面试官:我问完了,你有什么要问我们的吗?"

接下来,直接进入分享的主题,从主从复制 到级联复制

主从复制(Master-Slave Replication)

简介

  • MySQL最基础且应用广泛的灾备技术
  • 核心是将数据库A实例作为主(Master),其他实例B、C、D作为从(Slave)
  • 当然最常见的也就是一主(A)一从(B)
  • 主A将所有数据变更记录到二进制日志(binlog)
  • 从B、C、D通过I/O线程读取这些日志并应用到本地

配置主库

  • 在my.cnf中启用log-bin并设置唯一的server-id
  • 启动主库,查看状态

创建复制用户

  • 主库A上创建用户

    sql 复制代码
     CREATE USER 'copyer'@'%' IDENTIFIED BY 'copyer@111';
  • 查看权限

    sql 复制代码
    SELECT * FROM information_schema.USER_PRIVILEGES WHERE GRANTEE = "'copyer'@'%'";
  • 授权复制&查看

    sql 复制代码
     GRANT REPLICATION SLAVE ON  *.* TO 'copyer'@'%' WITH GRANT OPTION;
     SELECT * FROM information_schema.USER_PRIVILEGES WHERE GRANTEE = "'copyer'@'%' ";

配置从库

  • 设置不同的server-id

连接到主库A

查看复制状态

sql 复制代码
show replica status\G ;

优缺点分析

  • 优点:架构简单,资源需求少,部署容易
  • 缺点
    • 故障切换通常非自动化,需手动处理
    • 数据同步存在延迟,可能导致一致性问题

尾记

  • 1个小时多的面试问答结束,面试官通知我等消息
  • 涉及到数据库架构设计方案,咱真是没实践过
  • 回到住处,关于这个问题,我又认真查看了资料
  • 这里再提一个级联复制
相关推荐
weixin_511255212 小时前
MySQL升级记录
数据库·mysql
做运维的阿瑞4 小时前
数据库增删改的安全写法
数据库·sql·mysql
frjc5 小时前
数据库选型:如何从众多数据库中选出最理想的那一个
redis·mysql·clickhouse·elasticsearch
小马哥程序开发5 小时前
[点赞收藏免费领取 · 项目源码]37399民族服饰饰品商城小程序
sql·mysql·flask·源码·课程设计·程序开发·课设
我叫黑大帅6 小时前
Go日志库工程选型与逃逸分析评测报告
后端·面试·go
此时不提桶,更待何时7 小时前
05-05-B-对象存储与文件服务面试与生产事故实战
面试·nosql
晚安日记wanna8 小时前
大厂禁 JOIN 的真正原因,拆到第四层才清楚
数据库·后端·面试
多喝水身体棒9 小时前
Spring Boot 自动配置原理,看完终于不慌了
面试·程序员
数据库小学妹9 小时前
MySQL大表怎么优化?2亿行表的分区归档与冷热分离实战
数据库·mysql·分库分表·分区表·数据库运维·冷热分离
丑陋小蚊子10 小时前
有作品集的岗位,简历和作品各写什么?
面试·求职招聘·大学生·简历·简历下载