
MySQL面试篇章
文章平均质量分 90
itzzan
zan学编程
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MySQL面试篇章—MySQL锁机制
普通情况下,MyISAM的读操作和写操作都是串行的,但是其实MyISAM也是支持读和写的并发操作的,上面的concurrent_insert变量就是开关,允许一个线程在读的时候,另外一个线程在尾部进行插入(但是不能并发进行删除delete和更新update)2、由于InnoDB的行锁是针对索引字段添加的锁,不是针对行记录加的锁,因此虽然访问的是InnoDB引擎下表的不同行,但是如果使用相同的索引字段作为过滤条件的话,依然会发生锁冲突,只能串行进行,不能并发进行。原创 2024-07-27 23:44:02 · 599 阅读 · 0 评论 -
MySQL面试篇章——MySQL事务
例子:一个事务在进行转账50,另一个事务zhangsan在购买理财产品,转账事务执行到zhangsan转账的时候,另一个事务购买了理财,进行读取zhangsan的金钱发现为50,但是最低需要100能买,所以zhangsan买不了,但是转账事务可能出错了,导致回滚,那zhangsan就有100,但是理财产品显示不能购买,这就是脏读(一定要杜绝)事务是一个不可分割的整体,事务必须具有原子特性,即当数据修改时,要么全部执行,要么全不执行,那不允许事务部分的完成。:说明在提交前一个事务可以看到另一个事务的变化。原创 2024-07-21 16:18:44 · 913 阅读 · 0 评论 -
MySQL面试篇章——MySQL索引
当表中的数据量到达几十万甚至上百万的时候,SQL查询所花费的时间会很长,导致业务超时出错,此时就需要用索引来加速SQL查询。由于索引也是需要存储成索引文件的,因此对索引的使用也会涉及到磁盘I/O操作。如果索引创建过多,使用不当,会造成SQL查询时,进行大量无用的磁盘I/O操作,降低了SQL的查询效率,适得其反,因此需要掌握良好的索引创建原则!原创 2024-07-21 14:43:17 · 1620 阅读 · 0 评论 -
MySQL面试篇章——MySQL存储引擎
MEMORY 类型的表访问非常快,因为它的数据是放在内存中的,并且默认使用 HASH 索引(不适合做范围查询),但是一旦服务关闭,表中的数据就会丢失掉。索引缓存和数据缓存:和 MySQL Server 的查询缓存相关,在没有对数据和索引做修改之前,重复查询可以不用进行磁盘I/O(数据库的性能提升,目的是为了减少磁盘I/O操作来提升数据库访问效率),读取上一次内存中查询的缓存就可以了。事务:多个SQL语句,保证它们共同执行的原子操作,要么成功,要么失败,不能只成功一部分,失败需要回滚事务。原创 2024-07-17 11:36:24 · 440 阅读 · 0 评论 -
MySQL面试篇章——MySQL核心SQL(基本语法)
扩展:group by 查询慢,explain 分析发现是 Using temporary,即产生了一个临时表,因此最好给分组列添加索引。数据控制语句,用于控制不同的许可和访问级别的语句。每次的 insert 操作都会有一个数据库连接操作,是占用资源的,一次连接完成的事情肯定比多次连接完成的事情所花费的时间短。数据操纵语句,用于添加、删除、更新和查询数据库记录,并检查数据完整性,常用的语句关键字主要包括。低,pageNum的偏移所花费的性能,要先偏移到对应的位置,在进行分页拿去后面的数据记录。原创 2024-07-17 11:05:21 · 1245 阅读 · 0 评论 -
MySQL面试篇章——MySQL基础复习
关系型数据库:建立在关系模型的基础上的数据库。数据被存放在了各种表中(比如用户表),表中的每一行就存放着一条数据(比如一个用户的信息)table:二维表(行:记录;列:字段/属性)熟悉的关系型数据库还有SQL Server、Oracle、MariaDB、DB2MySQL区别于其它关系型数据库很大的一个特点就是支持插件式的存储引擎,支持如InnoDB, MyISAM,Memory等MySQL的服务器模型采用的是I/O复用+可伸缩的线程池,是实现网络服务器的经典模型(磁盘I/O操作会极大的影响速率)关系。原创 2024-07-16 21:03:47 · 875 阅读 · 0 评论