首页 > 数据库 >Redis和Mysql如何保证数据一致性?

Redis和Mysql如何保证数据一致性?

时间:2023-12-20 11:33:51浏览次数:28  
标签:缓存 数据库 Redis io Mysql 一致性 保证数据

1、redis作用:

用于读数据库操作的缓存层,可以减少数据库的io,还能提升数据的io性能;

无法保证数据的acid

2、实现一致性方案:

1、先更新数据库,在更新缓存

2、先删除缓存再更新数据库

3、最终一致性方案: 

(1)基于roketMQ可靠通信

 

(2)通过canal组件采集mysql binlog日志,同步redis

 

标签:缓存,数据库,Redis,io,Mysql,一致性,保证数据
From: https://www.cnblogs.com/guoyu1/p/17916167.html

相关文章

  • MySQL运维12-Mycat分库分表之按天分片
    一、按天分片指定一个时间周期,将数据写入一个数据节点中,例如:第1-10天的数据,写入到第一个数据节点中,第2-20天的数据写入到第二个节点中,第3-30天的数据节点写入到第三个数据节点中。   说明1:按天分片要配置一个起始日期,一个结束日期,一个分片间隔时间三个参数......
  • mysql-----------------------------------------------testdata
    6种SQL数据去重技巧大揭秘!原创 测试开发成长录 测试开发成长录 2023-12-1714:08 发表于广东你终于来了,戳蓝一键关注 测试开发成长录不负时光,遇见每一次成长   在上一期中,我们学习了SQL基本语法|查询语句的使用方法和技巧。接下来,我们将重点学习SQL中去重数据......
  • mysql union all、union、join
    union和join是需要联合多张表时常见的关联词,join:两张表做交连后里面条件相同的部分记录产生一个记录集,union:union是产生的两个记录集(字段要一样的)并在一起,成为一个新的记录集。二者区别:join和union的主要区别就一条,join是将拼接内容变成一行(左右拼接),根据共同字段将数据拼接成......
  • Redis 主从集群搭建并使用 RedisTemplate 实现读写分离
    单机版的Redis能够承载并发访问的能力有限,对于绝大多数的系统而言,都是读多写少,系统之所以宕机,一般都是因为并发读操作太高导致的宕机,因此搭建Redis主从集群,实现读写分离,是一种有效的提高并发访问能力的方案。本篇博客介绍在一台虚拟机上,使用docker-compose模拟搭建一个【一......
  • MySQL函数
    字符串函数字符串相关操作的函数举个例子:①concat(str1,str2,........):字符串拼接--将product表中pname与price进行拼接selectconcat(pname,price)fromproduct;效果展示: ②lower(str):转成小写--将'SMIT'转成小写selectlower('SMIT')fromdual;效果展示:③......
  • mysql笔记
    MySQL数据库B站资源网盘资源sql数据库提取码:mmmmDB、DBMS、SQL的关系DB:Database,数据库,数据库在硬盘上以文件的形式存在。DBMS:DatabaseManagementSystem,数据库管理系统,如:MySQL,Oracle,DB2,Sybase,SqlServer等。SQL:StructureQueryLanguage,结构化查询语言,是一门标准通用的......
  • MySQL数据库故障恢复方案
    针对以上问题,技术部门拟定了恢复方案,内容如下:1、故障类型分类:在此次故障中,由于未对生产环境进行备份也未开启binlog日志,无法直接还原数据库,属于典型表内mysql-delete数据误删除。2、故障分析与可行性方案制定:对于mysqlinnodb误删除导致记录丢失的恢复方案有三种,分别是备份还原、......
  • mysql8 WIN10密码重置处理
    1、设置权限:mysqld--console--skip-grant-tables--shared-memory2、管理运行CMD:mysql-urooy-p;无需认证,直接回车3、修改USER密码置空: usemysqlupdateusersetauthentication_string=''whereuser='root';4、退出mysql,执行命令:quit关闭以-con......
  • 连接数据库(mysql,orcle)
    链接mysql数据库前提:自行下载.jar包1、下载mysql-connector-java-5.1.28.jar驱动包,将包安装在Jmeter的\lib\ext目录下然后再在jmeter上点击打开导入mysql驱动包,( 添加一个线程组先)如下图所示:  添加配置元件中JDBCConnectionConfiguration  填写一下信息(注:写上vari......
  • 6.Redis,一站式高性能存储方案
    1.Redis入门Redis是一款基于键值对的NoSQL数据库,它的值支持多种数据结构:字符串(strings)、哈希(hashes)、列表(lists)、集合(sets)、有序集合(sortedsets)等。Redis将所有的数据都存放在内存中,所以它的读写性能十分惊人。同时,Redis还可以将内存中的数据以快照或日志的形式保......