![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 71
KentZhang_
人生只有一次,需要把握每一次机会。
展开
-
Mysql事务的实现
文章目录四种隔离级别的实现行锁MVCC实现四种隔离级别的实现结论:对于RR和RC级别隔离,InnoDB使用MVCC+行锁实现。对于Serializable,使用表锁实现。具体实现:在可重复读(RR)的隔离级别下,事务启动时得到一个事务ID,整个事务存在期间只能看到小于等于这个事务ID的版本数据。(MVCC实现)在读提交(RC)的隔离级别下,每个SQL执行时,得到一个事务ID,这个SQL只能看到小于等于这个事务ID的版本数据。(MVCC实现)在串行化(Serializable)的原创 2021-11-28 16:12:37 · 732 阅读 · 0 评论 -
B树和B+树的区别
文章目录B树B+树比较疑问每个子节点内部的数据一定是有序的吗?进入叶节点后,查询的复杂度是怎么样的?B树定义class BTreeNode { int *keys; // 存储关键字的数组 int t; // 最小度 (定义一个结点包含关键字的个数 t-1 <= num <= 2t -1) BTreeNode **C; // 存储孩子结点指针的数组 int n; // 记录当前结点包含的关键字的个数 bool leaf; // 叶子结点的一个标记,如果是叶子结点则为t原创 2021-11-25 08:15:19 · 547 阅读 · 0 评论 -
Mysql索引设计和使用
文章目录1 概述2 设计原则3 设计误区4 索引方法5 索引类型6 参考资料1 概述索引就是对某些字段提前排序,生成特定的数据结构(例如B+树或者哈希),然后加快查询。2 设计原则要在过滤字段上创建索引。即where后出现的字段上创建索引。要在取值范围广的字段创建索引。比如用性别字段创建索引,那意义就不大。尽量使用短字段做索引。首先是节省空间,其次是IO较少,比较更快。主键尽量使用自增、整型字段。因为普通索引会保存主键,太长的主键会占用空间。创建联合索引时,利用最左字段查询。创建联合索引后原创 2021-11-13 11:03:05 · 838 阅读 · 0 评论 -
Mysql四种隔离级别
文章目录查看隔离级别四种隔离级别read uncommitted ( RU,读未提交 )read committed (RC,读已提交 )repeatable read (RR,可重复读)serializable 可串行化隔离解决的问题dirty read 脏读non-repeatable read 不可重复读phantom 幻读对应的解决方法查看隔离级别首先隔离级别是Mysql的一个参数配置,是可以修改的。SQL为:SHOW VARIABLES LIKE 'transaction_isol原创 2021-11-11 21:37:22 · 2944 阅读 · 2 评论 -
mysql使用笔记
常用界面工具有时候为了方面,可以使用界面工具查看修改mysql,推荐两个工具:Navicat 需要破解HeidiSQL 开源免费shell操作远程登录mysql -u username -p123456 -h 192.168.97.200 -P 3300 -D dbname ## 注意 -p后面无空格,紧跟密码 查看数据库和表show databases...原创 2018-12-16 16:24:10 · 391 阅读 · 0 评论