
数据库
b9x_
只怕失望
展开
-
数据库 - 事物隔离级别和Spring事物传播特性
1.关于事物1.事务是程序中一系列严密的操作,所有一系列操作执行必须成功完成,否则在每个操作所做的更改将会被撤销,要么全执行,要么全不执行。 2.事务特性有分为四个:原子性、一致性、隔离性、持续性。 原子性:事务是数据库逻辑工作单元,事务中包含的操作要么都执行成功,要么都执行失败。 一致性:事务执行的结果必须是使数据库数据从一个一致性状态变到另外一种一致性状态。原创 2018-01-30 11:21:06 · 14127 阅读 · 0 评论 -
数据库 - MySql索引的合理使用及优化
索引可以帮助我们更快查询、排序。但在使用上要避免一些导致索引失效的情况,同时要合理的使用索引,毕竟索引也是有缺点的,建立不当也会导致查询更慢,维护困难。索引列上不能使用表达式或函数对字符串建立前缀索引(因为不同引擎对索引列的长度有限制,所以字符串太长无法建立索引或者索引查询效率很低)CREATE INDEX INDEX_NAME ON table(col_name(n)) //n即为前缀长度 ...原创 2018-05-09 10:00:14 · 291 阅读 · 0 评论 -
数据库 - MySql MVCC机制
什么是MVCC MVCC:是一种多版本并发控制(MVCC,Multiversion Currency Control)。一般情况下,事务性储存引擎不是只使用表锁,行加锁的处理数据,而是同时结合了MVCC机制,以处理更多的并发问题。当然Mysql中Innodb引擎才支持。MySql如何实现的MVCC InnoDB的MVCC,是通过在每行记录后面保存两个隐藏的列...原创 2018-08-22 16:02:25 · 1417 阅读 · 0 评论 -
分布式事务 - 2PC和3PC
协调者在分布式系统中,每一个机器节点虽然都能明确的知道自己执行的事务是成功还是失败,但是却无法知道其他分布式节点的事务执行情况。因此,当一个事务要跨越多个分布式节点的时候(比如,淘宝下单流程,下单系统和库存系统可能就是分别部署在不同的分布式节点中),为了保证该事务可以满足ACID,就要引入一个协调者(Cooradinator)。其他的节点被称为参与者(Participant)。协调者负责调度参...转载 2018-08-23 10:48:54 · 239 阅读 · 0 评论 -
MySql - innodb不可重复读下的一些锁
MySQL的InnoDB的细粒度行锁,是它最吸引人的特性之一。但是,如《InnoDB,5项最佳实践》所述,如果查询没有命中索引,也将退化为表锁。InnoDB的细粒度锁,是实现在索引记录上的。 一,InnoDB的索引InnoDB的索引有两类索引,聚集索引(Clustered Index)与普通索引(Secondary Index)。 InnoDB的每一个表都会有聚集索引:...转载 2018-11-12 16:36:39 · 894 阅读 · 0 评论 -
Druid - 源码分析与学习
找BUG时不得不接触到Druid源码。单看源码还是很吃力,结合下面的文章努力理解一些。原文:https://blog.csdn.net/herriman/article/details/51759479转载 2018-12-19 16:14:04 · 230 阅读 · 0 评论 -
Druid - SpringBoot配置数据库连接池druid
关于Druid DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0、DBCP、PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB连接池,是目前最好的连接池。 yml文件配置 spring: datasource: type: com.alibaba.druid.pool....原创 2018-12-19 12:27:04 · 494 阅读 · 0 评论