Myslq主从系列

文章介绍了MySQL主从复制的原理和好处,包括缓解数据库压力、读写分离、数据容灾。主从复制依赖binLog日志,通过异步方式保持数据一致。为确保数据一致性和高可用性,建议使用row格式的binlog,避免大事务,并采用局域网和提升带宽。在主节点故障时,可通过切换从节点来保证服务连续性。
摘要由CSDN通过智能技术生成

Myslq主从系列

项目中数据库怎样部署的?
保证高可用高性能 采用主从

为什么使用Mysql主从?

1、如果数据库单机部署、能够支持的Tps和Qps在500-10000左右,如果遇到访问量大的时候,可能会给数据库造成压力;所以需要进行主从分离
2、大部分系统的访问模型都是 读多写少的场景。可以主库提供写入功能,从库进行读取功能,提高查询性能,降低主库写入压力,
3、当主库宕机的时候,可以切换从库为主机;做到数据容灾备份;

主从复制的原理?
Mysql的主从复制主要依赖与binLog日志,binLog日志以二进制的形式 存储了数据库的所有变化保存在磁盘中,主从复制主要是以异步的形式将binlog日志传入到从库中,从库将binlog日志 写入到relay log中;
从库进行回放,在从节点中开启一个线程 读取relaylog里面的数据,从而做到数据的一致性;

如何保证主从数据库的数据一致性?

将binlog的格式由statement改为row格式,行格式并不是记录的statement的sql原文;

网络延迟导致数据的不一致?
保证主从机器的一致性;可以使用一主多从的架构,也可以将binlog接入到hadoop这类系统中,让他们提供查询能力;避免从节点太多;

避免大事务;优化网络 采用局域网;提升带宽。低版本的mysql 只支持单线程复制;如果主库并发高,可以采用新版本的数据库

如果遇到主从延迟如何解决?
使用缓存:在同步写数据库的同时,也把数据写到缓存,查询数据时,会先查询缓存,不过这种情况会带来mysql和redis的数据一致性问题;

如果主节点发生故障怎么切换?

在高并发场景下,为了优化数据库性能和保证数据的高可用性,通常会采用MySQL主从架构进行部署。主从架构是指将数据库划分为主节点和从节点两个角色,主节点处理用户的写请求和更新请求,而从节点主要负责读请求和备份。

具体实现步骤如下:

  1. 配置主节点:在主节点上创建一个MySQL实例,并配置好my.cnf文件。在my.cnf文件中,配置binlog日志和ID,用于主从节点之间的复制。开启binlog日志后,主节点就可以将接收到的写请求和更新记录下来,到达事务的边界后写入binlog文件。

  2. 配置从节点:在从节点上创建一个MySQL实例,并配置好my.cnf文件。在my.cnf文件中,配置server-id,用于唯一标识从节点。然后再配置一下从节点要连接的主节点的信息,如主节点的ip、端口号、用户名和密码等等。配置好后,从节点就可以连接上主节点,并同步主节点的数据了。

  3. 配置主从复制:主节点配置完成后,在从节点上使用命令行工具或图形化界面的方式,连接到主节点,并进行主从复制的配置。

  4. 测试:配置完成后,需要对主从架构进行测试,包括主节点的写请求和更新请求、从节点的读请求,以及主节点或从节点的故障切换等情况的测试。

需要注意的是,MySQL主从架构的部署需要注意一些技术要点,如要保证主从节点时间同步,防止出现数据不一致的情况;要设置好合适的触发器和出错处理策略,以便当出现故障时能及时切换节点。同时,还要合理配置主从节点的硬件环境,以保证整个数据库的性能和可用性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值