自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 Mysql面试题十二

为了达到事务的四大特性,数据库定义了4种不同的事务隔离级别,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable,后三个级别可以逐个解决脏读、不可重复读、幻读这几类问题。隔离级别脏读不可重复读幻读√√√×√√××√×××SQL 标准定义了四个隔离级别READ-UNCOMMITTED(读未提交):最低的隔离级别,一个事务可以读取另一个事务更新但未提交的数据。可能会导致脏读、不可重复读或幻读。

2024-12-26 01:00:00 393

原创 Mysql面试题十

Innodb的索引:主索引采用聚簇索引,叶子节点的value值,直接存储的真实的数据。主索引树里面包含了真实的数据。对于普通索引,如 name 字段,则需要根据 name 字段的索引树(非聚簇索引)找到叶子节点对应的主键,然后再通过主键去主键索引树查询一遍,才可以得到要找的记录,这就叫。主索引和辅助索引:主索引就是主键索引,辅助索引就是根据业务需要,自己设置的普通的非主键的索引。非聚簇索引:Myisam的主索引和辅助索引都采用的是非聚簇索引,索引和表数据是分离的,索引的value值存储的是行数据的地址。

2024-12-25 09:00:00 403

原创 Mysql面试题十一

索引虽好,但也不是无限制的使用,最好符合以下几个原则。

2024-12-25 01:00:00 245

原创 Mysql面试题九

BTree是最常用的mysql数据库索引算法,也是mysql默认的算法。Hash算法只能用于对等比较,例如=,<=>(相当于=)操作符。由于是一次定位数据,不像BTree索引需要从根节点到枝节点,最后才能访问到叶子节点这样多次IO访问,所以检索效率远高于BTree索引。索引算法有 BTree算法和Hash算法。

2024-12-24 07:15:00 215

原创 Mysql面试题八

数据库为什么使用B+树而不是B树 B+树的叶子节点存储了所有的数据,非叶子节点中存储的是比较关键字。而B树所有的节点都会存储数据。B+树的叶子节点之间存在一个指针连接,B树不存在指针连接。B+树这种设计结构能带来什么好处呢?B+树所有的数据都存储在叶子节点,那么顺着叶子节点从左往右即可完成对数据的遍历,极大了简化了排序操作。这也是mysql设计索引是采用B+树的原因,不仅仅能方便查找,而且有助于排序,在mysql的索引中叶子节点之间数双向链表可正反遍历,更加灵活; B树只适合随机检索,而B+树同时支持随机

2024-12-24 01:00:00 293

原创 Mysql面试题七

其余大部分场景,建议选择B+树索引。5、数据库中B+树索引可以分为,聚簇索引和非聚簇索引,但是不管是聚簇索引还是非聚簇索引,其内部都是B+树实现的,即高度是平衡的,叶子节点存放着所有的数据,聚簇索引和非聚簇索引不同的是,叶子节点是否存储的是一整行信息。B+树是为了磁盘及其他存储辅助设备而设计的一种平衡查找树(不是二叉树),在B+树中,所有记录的节点按大小顺序存放在同一层的叶节点中,各叶子节点用指针进行连接,而B+树索引本质上就是B+树在数据库中的实现,与纯粹的B+树数据结构还是有点区别。

2024-12-23 12:00:00 444

原创 Mysql面试题六

基本的索引类型,没有唯一性的限制,允许为NULL值,一个表允许多个列创建普通索引。:是目前搜索引擎使用的一种关键技术,MyISAM存储引擎才有全文索引。:数据列不允许重复,允许为NULL值,一个表允许多个列创建唯一索引。:数据列不允许重复,不允许为NULL,一个表只能有一个主键。

2024-12-23 01:00:00 212

原创 Mysql面试题五

索引的优点索引的缺点。

2024-12-22 08:30:00 139

原创 Mysql面试题四

Hash索引:Hash索引底层是哈希表,哈希表是一种以key-value存储数据的结构,所以多个数据在存储关系上是完全没有任何顺序关系的,所以,对于区间查询是无法直接通过索引查询的,就需要全表扫描。而B+ 树是一种多路平衡查询树,所以他的节点是天然有序的(左子节点小于父节点、父节点小于右子节点),所以对于范围查询的时候不需要做全表扫描。**B+树(叶节点保存数据,其他的节点 全部存放索引),数据库索引采用B+树的主要原因是B树在提高了磁盘IO性能的同时并没有解决元素遍历的效率低下的问题。

2024-12-22 01:00:00 173

原创 Mysql面试题三

存储引擎Storage engine:MySQL中的数据、索引以及其他对象是如何存储的,是一套文件系统的实现。myisam。

2024-12-21 10:15:00 181

原创 mysql面试题二

准备表准备数据。

2024-12-21 03:45:00 419

原创 数据库面试题一

第三范式:在第二范式的基础上,非主键列只依赖于主键,不依赖于其他非主键(消除传递依赖,消除冗余,就是各种信息只在一个地方存储,不出现在多张表中)。在设计数据库表结构的时候,要尽量遵守三大范式,如果不遵守,必须有足够的理由。比如性能,事实上我们经常会为了性能而妥协数据库的设计。第二范式:在第一范式的基础上,非主键列完全依赖于主键,而不能是依赖于主键的一部分。(要有主键,其他字段都依赖于主键)第一范式:每个列都不可以再拆分,属性不可分割。

2024-12-20 22:31:29 126

原创 单例设计模式

1.单一职责原则:一个类只负责一个功能领域中的相应职责。2.开闭原则:软件实体应对拓展开放,对修改关闭。(抽象类)3.里氏代换原则:所有引用基类对象的地方能够透明地适用其子类对象。4.依赖倒转原则:抽象不应该依赖于细节,细节应该依赖于抽象。(要针对接口编程,而不是针对实现编程)。5.接口隔离原则:使用多个专门地接口,而不使用单一的总接口。6.合成复用原则:尽量使用对象组合,而不是继承达到复用的目的。7.迪米特法则:一个软件实体应尽可能少地与其他实体发生相互作用。

2024-12-20 22:28:12 386

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除