菜鸟笔记
提升您的技术认知

MySQL 笔记 第3页

数据库查询结果去重(distinct与group by)

菜鸟阅读 : 580赞(1)

一般情况下,数据库去重复有以下那么三种方法: 第一种:   两条记录或者多条记录的每一个字段值完全相同,这种情况去重复最简单,用关键字distinct就可以去掉。例: 1 SELECT  DISTINCT  * ...

next-key lock案例

菜鸟阅读 : 836赞(1)

1. 加锁规则 在默认的可重复读的隔离级别下,加锁规则可以总结为:两个原则,两个优化和一个bug。 原则1:加锁的基本单位是next-key lock。next-key lock是前开后闭的区间 原则2:查询过程中访问到的对象才会加锁 优化...

MySQL如何保证主备一致?

菜鸟阅读 : 291赞(1)

1. MySQL主备的基本原理 如下图展示的是基本的主备切换流程: 在状态1中,主库是A,备库是B,所以客户端的读写都直接方法节点A。由于节点B是节点A的备库,所以备库B只是将A的更新都同步过来,本地执行,这样可以保证节点B和节点A的数据一...

MySQL如何保证高可用

菜鸟阅读 : 590赞(1)

正常情况下,只要主库执行更新生成的所有binlog,都可以传到备库并被正确执行,备库就能达到跟主库一样的状态,这就是最终一致性。 这里我们再放上MySQL主备切换的流程图: 1. 主备延迟 主备切换可能是一个主动的运维动作,如软件升级等。也...

幻读是什么,幻读有什么问题

菜鸟阅读 : 527赞(1)

1. 引言 首先,我们通过下面的SQL语句建立一张表,并插入5行数据: CREATE TABLE T( id int(11) not null, c int(11) default null, d int(11) default null,...

MySQL为什么会选错索引?

菜鸟阅读 : 442赞(1)

1.引例 首先创建一张表,并对字段a,b分别建立索引: create table t ( id int(11) not null, a int(11) default null, b int(11) default null, primar...

深入浅出索引(下)

菜鸟阅读 : 422赞(1)

1. 索引树和回表查询的次数 首先给定一个数据库表: mysql> create table T( ID int primary key, k int not null default 0, s varchar(16) not nul...

深入浅出索引(上)

菜鸟阅读 : 586赞(1)

1. 索引常见的模型 1.1 哈希表 哈希表是一种以键-值(key-value)存储数据的结构。哈希的思路很简单,输入一个值,通过哈希函数的计算,就能得到一个相应的位置。 但是,哈希函数常见的问题就是值冲突的问题。常见的一种处理方法是使用链...

事务隔离:为什么你改了我还看不见?

菜鸟阅读 : 446赞(1)

1. 事务的概念 简单来说,事务就是要保证一组数据库操作,要么全部成功,要么全部失败。 在MySQL中,事务是在存储引擎层实现的。MySQL时支持多种存储引擎的系统,但并不是所有存储引擎都支持事务。比如MyISAM引擎就不支持事务,所以这也...