随笔分类 -  数据库

摘要:MySQL——一致性非锁定读(快照读) MySQL数据库中读分为一致性非锁定读、一致性锁定读 一致性非锁定读(快照读),普通的SELECT,通过多版本并发控制(MVCC)实现。 一致性锁定读(当前读),SELECT ... FOR UPDATE/SELECT ... LOCK IN SHARE MO 阅读全文
posted @ 2020-03-01 01:16 ClassicalRain 阅读(2036) 评论(1) 推荐(1)
摘要:数据库事务ACID&隔离级别 什么是事务 事务是用户定义的一个数据库操作序列。这些操作要么全执行,要么全不执行,是一个不可分割的工作单元。在关系型数据库中,事务可以是一条SQL语句,也可以是一组SQL语句或整个程序。 程序和事务是两个概念。一般地将,一个程序包含多个事务。 事务的开始和结束可以由用户 阅读全文
posted @ 2020-02-29 21:29 ClassicalRain 阅读(263) 评论(0) 推荐(0)
摘要:数据库关系模型设计 背景 目前公司内部主流数据库是关系型数据库MySQL,数据库设计是对数据进行组织化和结构化的过程,即关系模型的设计。 对于项目规模小、用户数量少的情况,处理数据库中的表结构相对轻松;目前公司的发展速度快、用户数量多、项目规模大、业务逻辑极其复杂; 相应的数据库架构、关系模型表结构 阅读全文
posted @ 2019-07-19 15:30 ClassicalRain 阅读(7228) 评论(0) 推荐(0)
摘要:项目开发中,性能是我们比较关注的问题,特别是数据库的性能;作为一个开发,经常和SQL语句打交道,想要写出合格的SQL语句,我们需要了解SQL语句在数据库中是如何扫描表、如何使用索引的; MySQL提供explain/desc命令输出执行计划,我们通过执行计划优化SQL语句。 下面我们以MySQL5. 阅读全文
posted @ 2019-05-25 16:14 ClassicalRain 阅读(24219) 评论(4) 推荐(6)
摘要:MySQL索引的概念 MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构,通俗来讲索引就好比书本的目录,加快数据库的查询速度。 举个简单的例子,见下图: 注意:此例子的中索引结构与数据库中的索引结构差距很大 user表有3个字段(id、name、age),存储8条 阅读全文
posted @ 2018-10-06 19:14 ClassicalRain 阅读(310) 评论(0) 推荐(0)
摘要:MySQL是最受欢迎的开源SQL数据库管理系统,由Oracle Corporation开发,分发和支持。 MySQL网站(http://www.mysql.com/)提供有关MySQL软件的最新信息。 逻辑分层 下面是MySQL的逻辑分层图: 连接层:连接与线程处理,这一层并不是MySQL独有,一般 阅读全文
posted @ 2018-09-30 16:25 ClassicalRain 阅读(2304) 评论(1) 推荐(0)