
mysql
文章平均质量分 79
huapro.vip
不忘初心
展开
-
MVCC详解
正确的理解MySQL的MVCC及实现原理 多版本控制: 指的是一种提高并发的技术。最早的数据库系统,只有读读之间可以并发,读写,写读,写写都要阻塞。引入多版本之后,只有写写之间相互阻塞,其他三种操作都可以并行,这样大幅度提高了InnoDB的并发度。在内部实现中,与Postgres在数据行上实现多版本不同,InnoDB是在undolog中实现的,通过undolog可以找回数据的历史版本。找回的数据历史版本可以提供给用户读(按照隔离级别的定义,有些读请求只能看到比较老的数据版本),也可以在回滚的时候覆盖数据页上转载 2022-03-05 14:38:49 · 128 阅读 · 0 评论 -
定位慢查询的两种方法以及使用explain分析SQL
定位慢查询。使用explain分析。 在平时工作中,我想你肯定遇到过一条sql发出去了,但是等了好久才出现了返回值,这不仅仅影响了测试速度也大大降低了开发效率。所以我们有必要学习sql慢查询定位。 一般定位慢查询会有两种解决方案: 根据慢查询日志定位 使用show processlist定位,查询正在执行的慢查询 NO.1 慢查询日志定位解析 MySQL 的慢查询日志记录的内容是:在 MySQL 中响应时间超过参数 long_query_time(单位秒,默认值 10)设置的值并且扫描记录数不小于 mi原创 2022-03-02 13:37:31 · 394 阅读 · 0 评论 -
如何解决Redis缓存与MySQL的数据一致性
懒加载 延迟双删 在写库前后都进行redis.del(key)操作,并且第二次删除通过延迟的方式进行。 方案一(一种思路,不严谨)具体步骤是: 1)先删除缓存; 2)再写数据库; 3)休眠500毫秒(根据具体的业务时间来定); 4)再次删除缓存。 那么,这个500毫秒怎么确定的,具体该休眠多久呢? 需要评估自己的项目的读数据业务逻辑的耗时。这么做的目的,就是确保读请求结束,写请求可以删除读请求造成的缓存脏数据。 当然,这种策略还要考虑 redis 和数据库主从同步的耗时。最后的写数据的休眠时间:则在读数据业转载 2022-02-18 14:31:48 · 317 阅读 · 0 评论 -
mysql 数据库相关
mysql核心内容原创 2022-02-08 16:22:57 · 100 阅读 · 0 评论 -
sql_mode
mysql> select @@sql_mode -> ; +——————————————————————————————————————————————-+ | @@sql_mode原创 2017-09-20 23:22:35 · 251 阅读 · 0 评论