数据库
Lurker1900
这个作者很懒,什么都没留下…
展开
-
MySQL自增列用完了会怎么办
说明:本文中所有叙述均基于MySQL 5.6版本 ,Innodb引擎 ,数据库隔离级别为可重复读 如下是各数据类型的范围(来自mysql官方文档说明) 以INT为例,建立测试表,AUTO_INCREMENT设置为4294967295 则下一个插入值是4294967295 达到最大 CREATE TABLE auto_t( id INT UNSIGNED AUTO_INCREMENT...原创 2020-04-13 14:19:20 · 356 阅读 · 0 评论 -
MySQL索引有序性分析
说明:本文中所有叙述均基于MySQL 5.6版本 ,Innodb引擎 ,数据库隔离级别为可重复读 业务需求中经常会遇到排序要求,可以使用SQL提供的order by关键字解决。利用索引有序性,可以提升order by的效率,避免出现file_sort。 在阿里的编程规范中特别有一条对于索引有序性的规范 本文主要针对这条规范进行深入说明及示例验证。 DROP TABLE IF EXIS...原创 2020-02-05 16:48:34 · 1877 阅读 · 2 评论 -
MySQL 复合索引实践及运用
说明:本文中所有叙述均基于MySQL 5.6版本 ,Innodb引擎 ,数据库隔离级别为可重复读 众所周知,mysql复合索引查询遵从最左匹配原则。针对复合索引,使用实例说明索引匹配。 举例1: 表结构一共三个字段,这三个字段组合为一个复合索引 -- 如果已存在表 先删除 DROP TABLE IF EXISTS `test2`; --建表,并建立复合索引ind_test2,索引字段为...原创 2020-02-05 13:46:10 · 462 阅读 · 0 评论 -
谈谈数据库事务隔离(一):为什么修改了我看不见?
背景 提到数据库事务,首先想到事务的4大特性--ACID 原子性(Atomicity)事务的操作要不全部成功 要不全部失败 一致性(Consistency) 事务操作前后必须处于一致性的状态,例如拿转账来说,A和B两个用户账户共1000元,两个用户间转账前后总额还是1000元。 隔离性(Isolation)隔离性是当多个用户并发访问数据库时,比如操作同一张表时,数据库为每一个用...原创 2020-01-28 14:29:47 · 580 阅读 · 0 评论 -
谈谈数据库中的行锁(二):由一次项目中死锁说起
说明:本文中所有叙述均基于MySQL 5.6版本 ,Innodb引擎 ,数据库隔离级别为可重复读 场景复现 在项目提交测试过程中,测试发现会偶现接口调用失败,后台日志显示数据库死锁。 经过日志错误分析,定位到如下的功能模块,此功能模块场景描述: 操作事务型的数据库保存操作,涉及数据库多个表的操作,其中包括表configuration_base_dynamic(表结构如下所示),该表主要功能是保存...原创 2020-01-27 15:33:05 · 650 阅读 · 0 评论