




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上1.事务四大特性原子性,要么执行,要么不执行 隔离性,所有操作全部执行完以前其它会话不能看到过程 一致性,事务前后,数据总额一致 持久性,一旦事务提交,对数据的改变就是永久的2.数据库隔离级别脏读:事务B读取事务A还没有提交的数据 不可重复读:两次事务读的数据不一致 幻读:事务A修改了数据,事务B也修改了数据,这时在事务A看来,明明修改了数据,咋不一样3.MYSQL的两种存储引擎区别(事务、锁级别等等),各自的适用场景引擎特性MYISAM不支持外键,表锁,插入数据时,锁定整个表,查表总行数时,不需要全表扫描INNODB支持外键,行锁,查表总行数时,全表扫描4.索引有B
2、+索引和hash索引索引区别Hashhash索引,等值查询效率高,不能排序,不能进行范围查询B+数据有序,范围查询5.聚集索引和非聚集索引索引区别聚集索引数据按索引顺序存储,中子结点存储真实的物理数据非聚集索引存储指向真正数据行的指针6.索引的优缺点,什么时候使用索引,什么时候不能使用索引索引最大的好处是提高查询速度, 缺点是更新数据时效率低,因为要同时更新索引 对数据进行频繁查询进建立索引,如果要频繁更改数据不建议使用索引。7.InnoDB索引和MyISAM索引的区别一是主索引的区别,InnoDB的数据文件本身就是索引文件。而MyISAM的索引和数据是分开的。 二是辅助索引的区别:InnoD
3、B的辅助索引data域存储相应记录主8.索引的底层实现(B+树,为何不采用红黑树,B树)重点树区别红黑树增加,删除,红黑树会进行频繁的调整,来保证红黑树的性质,浪费时间B树也就是B-树B树,查询性能不稳定,查询结果高度不致,每个结点保存指向真实数据的指针,相比B+树每一层每屋存储的元素更多,显得更高一点。B+树B+树相比较于另外两种树,显得更矮更宽,查询层次更浅9.B+树的实现一个m阶的B+树具有如下几个特征:1.有k个子树的中间节点包含有k个元素(B树中是k-1个元素),每个元素不保存数据,只用来索引,所有数据都保存在叶子节点。2.所有的叶子结点中包含了全部元素的信息,及指向含这些元素记录的
4、指针,且叶子结点本身依关键字的大小自小而大顺序链接。3.所有的中间节点元素都同时存在于子节点,在子节点元素中是最大(或最小)元素10.为什么使用B+Tree索引查找过程中就要产生磁盘I/O消耗,主要看IO次数,和磁盘存取原理有关。 根据B-Tree的定义,可知检索一次最多需要访问h个节点。数据库系统的设计者巧妙利用了磁盘预读原理, 将一个节点的大小设为等于一个页,这样每个节点只需要一次I/O就可以完全载入 局部性原理与磁盘预读11.Sql的优化1.sql尽量使用索引,而且查询要走索引2.对sql语句优化子查询变成left joinlimit 分布优化,先利用ID定位,再分页or条件优化,多个o
5、r条件可以用union all对结果进行合并(union all结果可能重复)不必要的排序where代替having,having 检索完所有记录,才进行过滤避免嵌套查询对多个字段进行等值查询时,联合索引12.索引最左前缀问题如果对三个字段建立联合索引,如果第二个字段没有使用索引,第三个字段也使用不到索引了13.索引分类,索引失效条件索引类型概念普通索引最基本的索引,没有任何限制唯一索引与"普通索引"类似,不同的就是:索引列的值必须唯一,但允许有空值。主键索引它是一种特殊的唯一索引,不允许有空值。全文索引针对较大的数据,生成全文索引很耗时好空间。组合索引为了更多的提高mys
6、ql效率可建立组合索引,遵循”最左前缀“原则失效条件 条件是or,如果还想让or条件生效,给or每个字段加个索引 like查询,以%开发 内部函数 对索引列进行计算 is null不会用,is not null 会用14.数据库的主从复制复制方式操作异步复制默认异步复制,容易造成主库数据和从库不一致,一个数据库为Master,一个数据库为slave,通过Binlog日志,slave两个线程,一个线程去读master binlog日志,写到自己的中继日志一个线程解析日志,执行sql,master启动一个线程,给slave传递binlog日志半同步复制只有把master发送的binlog日志写到s
7、lave的中继日志,这时主库,才返回操作完成的反馈,性能有一定降低并行操作slave 多个线程去请求binlog日志15.long_query怎么解决设置参数,开启慢日志功能,得到耗时超过一定时间的sql16.varchar和char的使用场景类型使用场景varchar字符长度经常变的char用字符长度固定的17.数据库连接池的作用维护一定数量的连接,减少创建连接的时间 更快的响应时间 统一的管理19.分库分表,主从复制,读写分离读写分离,读从库,写主库 spring配置两个数据库,通过AOP(面向切面编程),在写或读方法前面进行判断得到动态切换数据源。20.数据库三范式级别概念1NF属性不可
8、分2NF非主键属性,完全依赖于主键属性3NF非主键属性无传递依赖21.关系型数据库和非关系型数据库区别关系型数据库优点1、容易理解:二维表结构是非常贴近逻辑世界一个概念,关系模型相对网状、层次等其他模型来说更容易理解;2、使用方便:通用的SQL语言使得操作关系型数据库非常方便;3、易于维护:丰富的完整性(实体完整性、参照完整性和用户定义的完整性)大大减低了数据冗余和数据不一致的概率;4、支持SQL,可用于复杂的查询。5.支持事务缺点1、为了维护一致性所付出的巨大代价就是其读写性能比较差;2、固定的表结构;3、不支持高并发读写需求;4、不支持海量数据的高效率读写非关系型数据库1、 使用键值对存储
9、数据; 2、 分布式; 优点 无需经过sql层的解析,读写性能很高 基于键值对,数据没有耦合性,容易扩展 存储数据的格式:nosql的存储格式是key,value形式 缺点 不提供sql支持22.数据库中join的inner join, outer join, cross join1.以A,B两张表为例A left join B选出A的所有记录,B表中没有的以null 代替right join 同理2.inner joinA,B的所有记录都选出,没有的记录以null代替3.cross join (笛卡尔积)A中的每一条记录和B中的每一条记录生成一条记录例如A中有4条,B中有4条,cross join 就有16条记录23.有哪些锁,select时怎么加排它锁锁概念乐观锁自己实现,通过版本号悲观锁共享锁,多个事务,只能读不能写,加 lock in share mode排它锁一个事务,只能写,for update行锁作用于数据行表锁作于用表24.死锁怎么解决找到进程号,kill 进程25.最左匹配原则最左匹配原则是针对索引的举例来说:两个字段(name,age)建立联合索引,如果where age=12这样的话,是没有利用到索引的,这里我们可以简单的理解为先是对name字段的值排序,然后对age的数据排序,如果直接查age的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年K2教育中STEM课程实施与效果评估:创新模式探索
- 语文(武汉卷)2025年中考考前押题最后一卷
- 经导管植入式人工心脏瓣膜2025
- 小升初六年级数学下册常考易考知识点课件《第六单元第10讲:解方程》人教版
- 智慧政务+DeepSeek大模型应用方案
- AI大模型赋能数字化水利监管平台建设方案
- 基于Protel教学新模式改革的探索与研究
- 华为任职资格体系建设(一)16P
- 山东省菏泽市巨野县2024-2025学年七年级下学期期中生物试题 (含答案)
- 现代汉语上册试题及答案
- 理论联系实际阐述文化在社会发展中具有什么样的作用?参考答案 二
- 学前儿童德育课件
- 2025年C++考试专用复习资料试题及答案
- 山东综招试题大全及答案
- 2025年大学英语四级考试试题及答案解析
- 2025年中考语文常考作文押题《10个主题+15篇范文》
- 2025年《中央一号文件》参考试题库资料100题及答案(含单选、多选、判断题)
- 2024年广西高考历史试卷真题(含答案解析)
- 2024年广东省广州市市中考英语试卷真题(含答案解析)
- 2022版义务教育艺术课程标准美术新课标学习解读课件
- 化工设计智慧树知到期末考试答案章节答案2024年浙江大学
评论
0/150
提交评论