数据库
文章平均质量分 91
simuLeo
在软件中艰难探索的咸鱼
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
日志系统:一条SQL更新语句是如何执行的
日志系统:一条SQL更新语句是如何执行的 更新流程 更新流程涉及两个重要的日志模块: redo log(重做日志)和binlog(归档日志)。 重要的日志模块:redo log 不知道你还记不记得《孔乙己》这篇文章,酒店掌柜有一个粉板,专门用来记录客人的赊账记录。 如果赊账的人不多,那么他可以把顾客名和账目写在板上。但如果赊账的人多了,粉板总会有记不下的时候,这个时候掌柜一定还有一个专门记录...原创 2020-02-26 11:41:55 · 358 阅读 · 0 评论 -
MYSQL count(*)这么慢,我该怎么办?极客时间MYSQL笔记
个人笔记总结 COUNT(*)实现方式 MyISAM引擎把表的总行数存在磁盘上; InnoDB引擎从表中一行行读出来,然后累计计数; 上述结论基于不加where过滤条件,加了where,MyISAM也没办法返回的那么快; 为什么InnoDB不跟MyISAM一样,也把数字存起来呢? 因为MVCC(并发版本控制),不同的会话查同一个表的总行数,要保证可重复读隔离级别的总行数数据正确性,只能一行行...原创 2020-02-26 11:01:16 · 816 阅读 · 0 评论 -
Mysql锁
Mysql锁 总结: 根据加锁范围:MySQL里面的锁可以分为:全局锁、表级锁、行级锁 一、全局锁: 对整个数据库实例加锁。 MySQL提供加全局读锁的方法:Flush tables with read lock(FTWRL) 这个命令可以使整个库处于只读状态。使用该命令之后,数据更新语句、数据定义语句和更新类事务的提交语句等操作都会被阻塞。 使用场景:全库逻辑备份。 风险: 如果在主库备份,在...原创 2020-02-21 13:42:30 · 176 阅读 · 0 评论 -
MYSQL乐观锁
MYSQL乐观锁实现 对于按钮等控件,点击后使其立刻失效,不让用户重复点击,避免对同时对同一条记录操作。 使用乐观锁进行控制。乐观锁大多是基于数据版本(Version)记录机制实现。即为数据增加一个版本标识,在基于数据库表的版本解决 方案中,一般是通过为数据库表增加一个“version”字段来实现。读取出数据时,将此版本号一同读出,之后更新时,对此版本号加一。此时,将提交数据 的版本数据与数据库...原创 2020-02-21 10:24:37 · 338 阅读 · 0 评论 -
MYSQL事务隔离个人笔记-极客时间MYSQL四十五讲
Mysql事务隔离笔记 事务隔离实例分析 Q: 事务B执行过程中,事务A查询得到的V1,V2和V3的返回值分别是多少? A: 1. 具体什么值要根据事务隔离级别来分析; 2. 事务隔离级别分为:读未提交,读提交,可重复读,串行化; 3. 如果是读未提交级别,不管是事务A还是事务B,都是**当前读**,那么事务A读到的V1,V2和V3的值都是2; 4. 如果是读提交级别(事务B提交之后,事务A才能...原创 2020-02-20 20:04:50 · 588 阅读 · 0 评论 -
MYSQL优化技巧-个人总结
MYSQL优化技巧 SQL语句慢查询优化思路 SQL语句查询慢原因: 一种是访问高峰期,查询请求非常多,导致mysql服务器压力很大,导致本来不慢的查询变慢(排队等待SQL执行); MYSQL缓存失效,MYSQL如果对某个表设置了缓存,但是该表频繁更新(shf_goods),那么就会导致缓存失效: MySQL缓存机制简单的说就是缓存sql文本及查询结果,如果运行相同的SQL,服务器...原创 2020-02-20 19:49:35 · 452 阅读 · 0 评论 -
[redis数据库问题] 聊聊你对redis的理解
从Redis的特性来说:①redis数据库是一种非关系型数据库,数据以key-value的形式存储,②它是内存型数据库,数据保存在内存中,所以读写速度很快。③当然它也支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用,以保证数据的安全。④Redis不仅仅支持简单的key-value类型的数据,同时还提供l...原创 2018-04-27 14:57:45 · 1472 阅读 · 0 评论
分享