数据库面试题_第1页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、事务是数据库管理系统执行过程中的一个逻辑事务执行方式操作先生成临时表 原表对比此表数据 临时表先查询数据事务四大特性(ACID)原子性、一致性、性、持久性?原子性:是指事务是一个不可分割的工作,事务中的操作要么都发生,要么都不发生。一致性:如果事务执行之前数据库是一个完整的状态,那么事务结束后,无论事务是否执行成功,数据库仍然是一个完整的状态。型:多个用户并发数据库时,一个用户的事务不能被其他用户的干扰,多个并发事务之间数据要相互。持久性:指一个事务一旦被提交,他对数据库的影响是性的。SQL 语言分为五大类事务的并发?事务级别,每个级别会什么问题,默认是哪个级别?Serializable (串

2、行化):可避免脏读、不可重复读、幻读的发生。 Repeatable read (可重复读):可避免脏读、不可重复读的发生 Read committed (读已提交):可避免脏读的发生Readmitted (读未提交):最低级别,任何情况都无法保证。 数据库中默认的级别为 Repeatable read (可重复读)而在 Oracle 数据库中,只支持 Serializable (串行化)级别和Read committed (读已提交)这两种级别,其中默认的为 Read committed 级别。常见的三种引擎(InnoDB、MyISAM、MEMORY)的区别?InnoDB 的优势在于提供了良好

3、的事务处理、占用的数据空间相对较大修复能力和并发控制。缺点是读写效率较差,MyISAM 的优势在于占用空间小,处理速度快。缺点是不支持事务的完整性和并发性。MEMORY 的表的生命周期很短,数据全部放在内存中,一般是的的 MyISAM 与 InnoDB 两种引擎在,事务、锁级别,各自的适用场景?MyISAM 用于新和读出InnoDB 对事务的完整性要求比较高 数据定义语言 、 、 这些语句自动提交,无需用 提交。 数据查询语言 查询语句不存在提交问题。 数据语言 、 、 这些语句需要 才能提交。 数据控制语言 、 授予权限与回收权限语句。 事务控制语言 、 事务提交与回滚语句。查询语句不同元素

4、(where、jion、limit、group by、having 等等)执行先后顺序?IURP ZKHUH JUXSEy KDYLQJ VHOHFW RUGHUEy OLPLW IZJK VRO临时表,临时表什么时候删除? 临时表在需要保存一些临时数据时是非常有用的。临时表只在当前连接可见创建临时表很容易,给正常的CREATE TABLE 语句加上TEMPORARY 关键字会话结束时关闭数据库自动清除有哪些锁(乐观锁悲观锁),select 时怎么加排它锁?悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这

5、样别人想拿这个数据就会 block 直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在作之前先上锁。乐观锁(Optimistic Lock), 顾名思义,就是很乐观,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号等机制。乐观锁适用于多读的应用类型,这样可以提高吞吐量,像数据库如果提供类似于 write_condition 机制的其实都是提供的乐观锁。在查询语句后面增加FOR UPDATE,就会对查询结果中的每行都加排他锁,当没有其他线程对查询结果集中的任何一行使用排他

6、锁时,可以成功申请排他锁,否则会被阻塞。非关系型数据库和关系型数据库区别,优势比较?格式灵活:数据的格式可以是 key,value 形式、文档形式、形式等等,文档形式、形式等等,使用灵活,应用场景广泛速度快数据库三范式,根据某个场景设计数据表?每一列属性都是不可再分的属性值每一行的数据只能与其中一列相关,即一行数据只做一件事只要数据列中出现数据重复,就要把表拆分开来。据不能存在传递关系,即没个属性都跟主键有直接关系而不是间接关系数据库的读写分离、主从,主从分析的 7 个问题?使用 explain 优化 sql 和索引?慢查询怎么解决?分解关联查询加索引内连接、外连接、交叉连接、积等?内连接 S

7、ELECTFROM(INNER )JOINON;内连接,显示两个表中有联系的所有数据;左,以左表为参照,显示所有数据;右,以右表为参照显示数据;都锁,死锁判定原理和具体场景,死锁怎么解决?表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁的概率最高,并发度最低。行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁的概率最低,并发度也最高页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般。一个用户 A B),然后企图表 A(锁住了表 A),然后又表 B;另一个用户 B 表 B(锁住了表表 A;这时用户 A 由于用户 B 已经锁住表 B,它必须等待用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论