【Mysql】
Csoap994
这个作者很懒,什么都没留下…
展开
-
MySQL之分布式事务:PHP+xa事务
理论知识InnoDB存储引擎提供了对XA事务的支持,并通过XA事务来支持分布式事务的实现。分布式事务指的是允许多个独立的事务资源( transactional resources)参与到一个全局的事务中。事务资源通常是关系型数据库系统,但也可以是其他类型的资源。全局事务要求在其中的所有参与的事务要么都提交,要么都回滚,这对于事务原有的ACID要,求又有了提高。另外,在使用分布式事务时,Inno...原创 2019-04-17 16:37:44 · 1177 阅读 · 1 评论 -
MySQL之Innodb锁机制:Next-Key Lock 浅谈
阅读《InnoDB存储引擎》-第六章涉及锁的三种算法,整理结合转载文档:https://www.cnblogs.com/zhoujinyi/p/3435982.html数据库使用锁是为了支持更好的并发,提供数据的完整性和一致性。InnoDB是一个支持行锁的存储引擎,锁的类型有:共享锁(S)、排他锁(X)、意向共享(IS)、意向排他(IX)。为了提供更好的并发,InnoDB提供了非锁定读:不需要...转载 2019-04-17 15:27:09 · 2280 阅读 · 0 评论 -
MySQL之幻读的详解、实例及解决办法
事务隔离级别(tx_isolation)mysql 有四级事务隔离级别 每个级别都有字符或数字编号读未提交 READ-UNCOMMITTED | 0:存在脏读,不可重复读,幻读的问题读已提交 READ-COMMITTED | 1:解决脏读的问题,存在不可重复读,幻读的问题可重复读 REPEATABLE-READ | 2:解决脏读,不可重复读的问题,存在幻读的问题,默认隔离级别,使用...转载 2019-04-13 17:06:17 · 740 阅读 · 0 评论 -
MySQL之InnoDB存储引擎的锁
InnoDB存储引擎实现两种标准的行级锁:共享锁,允许事务读一行数据排他锁,允许事务删除或更新一行数据锁兼容意向锁此外,InnoDB 存储引擎支持多粒度(granular) 锁定,这种锁定允许事务在行级上的锁和表级上的锁同时存在。为了支持在不同粒度上进行加锁操作,InnoDB 存储引擎支持一种额外的锁方式,称之为意向锁(Intention Lock)。意向锁是将锁定的对象分为多个层...原创 2019-04-13 17:02:08 · 215 阅读 · 0 评论 -
MySQL之ICP、MRR、BKA
阅读整理自《MySQL技术内幕 Innodb存储引擎》Index Condition Pushdown(ICP)Index Condition Pushdown (ICP)是mysql使用索引从表中检索行数据的一种优化方式。ICP原理禁用ICP,存储引擎会通过遍历索引定位基表中的行,然后返回给MySQL Server层,再去为这些数据行进行WHERE后的条件的过滤。开启ICP,...原创 2019-04-08 23:27:17 · 209 阅读 · 0 评论 -
MySQL之存储过程
# SQL语句:先编译后执行存储过程(Stored Procedure): 一组可编程的函数,是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行。优点(为什么要用存储过程?): ①将重复性很高的一些操作,封装到一个存储过程中,简化了对这些SQL的调用 ②批量处理:SQL+循环,减少流量,也就是“跑批”...转载 2019-03-18 10:21:05 · 192 阅读 · 0 评论 -
MySQL之视图
Q:什么是视图?视图是干什么用的?A: 视图(view)是一种虚拟存在的表,是一个逻辑表,本身并不包含数据。作为一个select语句保存在数据字典中的。 通过视图,可以展现基表的部分数据;视图数据来自定义视图的查询中使用的表,使用视图动态生成。基表:用来创建视图的表叫做基表base tableQ:为什么要使用视图?A:因为视图的诸多优点,如下 1)简单:使用视图的...转载 2019-03-18 09:41:08 · 202 阅读 · 0 评论 -
MySQL之学习笔记
and 的计算优先序大于or。IN操作符一般比OR操作符清单执行更快。like操作,除了一个或多个字符外,%还能匹配0个字符。% 代表搜索模式中给定位置的0个、1个或多个字符。但有一个例 外,即NULL。即使是WHERE prod_name LIKE '%'也不能匹配 用值NULL作为产品名的行下划线(_)通配符,下划线的用途与%一样,但下划线只匹配单个字符而不是多个字符。正则表达式RE...原创 2019-03-18 09:31:14 · 197 阅读 · 0 评论 -
MySQL之体系结构
原创 2019-03-20 21:45:57 · 143 阅读 · 0 评论 -
MySQL之什么是事务?什么是事务日志?
什么是事务事务是访问数据库的一个操作序列,数据库应用系统通过事务集来完成对数据库的存取。事务的正确执行使得数据库从一种状态转换为另一种状态。事务必须服从ISO/IEC所制定的ACID原则。ACID是原子性(atomicity)、一致性(consistency)、隔离性(isolation)、持久性(durability)的缩写,这四种状态的意思是:1、原子性即不可分割,事务要么全部被执行,...转载 2019-03-08 21:29:18 · 1954 阅读 · 0 评论 -
MySQL之长事务解析
长事务(Long-Lived Transactions),顾名思义,就是执行时间较长的事务。比如,对于银行系统的数据库,每过一个阶段可能需要更新对应账户的利息。如果对应账号的数量非常大,例如对有1亿用户的表account,需要执行下列语句: .UPDATE accountSET account_ total = account_ total + (1 + interest rate)这时这个...转载 2019-04-17 18:00:55 · 1311 阅读 · 0 评论