
面经--数据库
努力LT
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SQL优化--一般步骤
使用MySQL案例库:sakila mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sakila ...原创 2019-04-04 16:58:23 · 449 阅读 · 0 评论 -
mysql中四种隔离级别
1.serializable:可串行化 最高隔离级别,通过强制事务排序,使之不可能相互冲突,从而解决幻读问题。简言之,就是在每个读的数据行上加上共享锁。在这个级别,可能导致大量的超时现象和锁竞争。 2.repeatable read:可重读 mysql默认事务隔离级别,确保同一事务的多个实例在并发读取数据时,会看到同样的数据行。理论上这会导致另一个棘手问题:幻读。 幻读指当用户读取某一范围...原创 2019-04-08 00:29:06 · 142 阅读 · 0 评论 -
数据库学习问题汇总
Q1.myisam,自动增长列是索引组合的第二列,自动增长列是按照组合索引的第一列排序后递增? 下面的例子怎么解释? mysql> create table auto_demo -> (id smallint not null auto_increment, -> aid smallint not null, -> name varchar(1...原创 2019-04-01 15:22:49 · 362 阅读 · 0 评论 -
MyISAM和InnoDB
1.MyISAM (1)MySQL 5.5之前的默认存储引擎,不支持事务,不支持外键,优势是访问速度快。 (2)每个MyISAM在磁盘上存储成三个文件。文件名都和表名相同,扩展名指出文件类型。 .frm文件存储表定义。 数据文件的扩展名为.MYD (MYData)。 索引文件的扩展名是.MYI (MYIndex)。 数据文件和索引文件可以放置在不同的目录,平均分布IO,获得更快的...原创 2019-04-01 16:28:59 · 162 阅读 · 0 评论 -
索引B-Tree和B+Tree
1.B-Tree 磁盘中有两个机械运动的部分,分别是磁盘旋转和磁头移动。 将磁头移动到磁盘表面的正确位置,花费的时间叫寻道时间。磁盘IO处理的快慢很大程度上取决于磁盘的寻道时间。磁盘旋转是为了传输数据。当大规模数据存储到磁盘中的时候,显然定位是一个非常花费时间的过程,但是我们可以通过B树进行优化,提高磁盘读取时定位的效率。 为什么B-Tree可以进行优化呢?我们可以根据B-Tree的特点,构...原创 2019-04-07 23:22:38 · 1699 阅读 · 0 评论 -
深入浅出MySQL学习笔记--死锁
关于死锁 MyISAM表锁是deadlock free的,这是因为MyISAM总是一次获得所需的全部锁,要么全部满足,要么等待,因此不会出现死锁。但在InnoDB中,除单个SQL组成的事务外,锁是逐步获得的,这就决定了在InnoDB中发生死锁是可能的。如表20-17所示的就是一个发生死锁的例子。 表20-17InnoDB存储引擎中的死锁例子 session_1 ...原创 2019-04-08 00:02:42 · 231 阅读 · 0 评论 -
MySQL锁之MyIsam
文章目录1.MyIsam1.1锁模式1.2如何加表锁1.3锁优化1.3.1查询表级锁争用情况1.3.2缩短锁定的时间1.3.3分离能并行的操作1.3.4合理利用读写优先级 1.MyIsam 1.1锁模式 表独占写锁 表共享读锁 锁模式/是否兼容 读锁 写锁 读锁 是 否 写锁 否 否 对MyISAM表的读操作,不会阻塞其他用户对同一表的读请求,但会阻塞对同一表的写请求;...转载 2019-07-10 21:51:03 · 180 阅读 · 0 评论