参考博客:

https://blog.csdn.net/weinierzui/article/details/71054964

Q1:主键,外键,超键,候选键;

主键 对表中数据进行唯一标识的数据列的组合;不能缺失;不能空值;
外键 该列为另一表的主键;
超键 关系中能唯一标识数据的属性;
候选键 不含多余属性的超键;

Q2:数据库事务的四个特征及含义;

原子性 要么全部完成,要么不完成,若发生错误会进行回滚操作;
一致性 开始到结束后,数据库完整性约束没收到破坏;(实体完整性,参照完整性,用户定义的完整性)
隔离性 事务与事务之间相隔离,串行化执行;
持久性 事务完成对数据的影响是永久的;

Q3:视图的作用,可以更改吗;

视图是虚拟的表;只包含动态检索数据的查询,不包含数据;简化操作,隐藏细节,保护数据;对视图的更新会作用于基表,一般不更新;

Q4:drop,delete和truncate ;

drop 表级的删除;不能回滚;
truncate 清空表;不记录单行删除日志;无法恢复;只能对于TABLE操作;不能在带FOREIGN KEY约束的表(被引用的表)中使用;计数从头开始;
delete 配合where删除数据;会记录日志用于回归;会触发触发器;不减少索引和表的空间;

Q5:索引的工作原理和其种类;

索引的实现通常采用B树或B+树,加快查询速度也消耗更多空间;

唯一索引 不允许任何两行具相同值
主键索引 唯一索引的一种
聚集索引 行的物理顺序和键值的索引顺序相同
普通索引 无限制
全文索引 针对较大的数据生成全文索引很耗时间空间
组合索引 最左前缀原则:若对多列建立组合索引,若第二列未使用索引,则第三列也不会使用
InnoDB 主索引:InnoDB的数据文件本身;辅助索引:相应记录主键的值
MyISAM 索引与数据分离;辅助索引:与主索引无区别;

Q6:连接的种类

内部联接(等值联接) INNER JOIN
外部联接(包含在相关表中没有关联行的行) LEFT OUTER JOIN
  RIGHT OUTER JOIN

Q7:数据库范式

1NF 每一列都是不可分割的基本数据项,同一列无二值;无重复的域;
2NF 实例依赖于主键部分;
3NF 属性不依赖于其他非主属性;

Q8:存储过程与触发器的区别

存储过程和触发器都是SQL语句集;触发器不可用CALL调用,而是在用户执行某些语句后自动调用;

Q9:分表与分区

分表 真正的分表,每张表对应三个文件;提高MYSQL的并发能力;
分区 表中的数据分成多个区块;突破磁盘的读写能力;

Q10:数据库隔离级别

脏读 一个事务读取了另一个事务未提交的数据
不可重复读 在一次事务范围内,读取同一数据产生了不同的值
虚读 读取整体的数据后,因其他事务对数据的更新,再次查询时结果不同
串行化 3种均可避免
可重复读(默认) 避免1,2
读已提交 1
读未提交

Q11:MYSQL的两种存储引擎

MYISAM 不支持事务,不支持外键,表锁;插入数据时锁定整个表,查行数时无需整表扫描
INNODB 支持事务,外键,行锁,查表总行数时,全表扫描;

Q12:MYSQL索引算法

HASH 适合等值查找,不适合范围,不能排序
BTREE 适合范围查找,无hash冲突

Q13:聚集索引和非聚集索引

聚集索引 数据按索引顺序存储,节点存储的是真实数据
非聚集索引 节点存储的是指向真正数据的指针

Q14:索引的优缺点

优点 提高查询效率
缺点 降低了更新效率

Q15:两种存储引擎索引的区别

Innodb 主索引的数据文件本身就是索引文件;辅助索引记录主键的值;
MyISAM 主索引数据文件和索引文件分离;与主索引无区别;

Q16:数据库的主从复制

一个服务器作为主服务器,一个或多个服务器作为从服务器,主服务器将更新写到二进制日志,当一个从服务器连接到主服务器时,通知主服务器读取日志,接收从那时起发生的所有更新。解决:数据分布,负载平衡,备份,高可用性和容错性

基于语句 在主服务器上执行的语句,在从服务器上也执行
基于行 将改变的内容复制过去
混合类型 语句复制失败时采用行的形式

Q17:数据库连接池

为数据库连接建立一个缓冲池,防止过于大量的连接的建立与管理;

Q18:存储过程

存储过程是一些预编译的SQL语句,执行效率较高

Q19:乐观锁和悲观锁

乐观锁 假定不会发生并发冲突,只在提交时检查,若有其他数据更新了数据,则回滚;使用数据版本标示数据(时间戳,版本号)
悲观锁 假定会发生并发冲突,屏蔽一切破坏数据库一致性的操作,主要用于数据争用激烈的环境,以及锁成本低于回滚成本时;排他锁;

MYSQL 面试常见问题汇总相关推荐

  1. tcp当主动发出syn_一文读懂TCP四次挥手工作原理及面试常见问题汇总

    简述 本文主要介绍TCP四次挥手的工作原理,以及在面试中常见的问题. 字段含义 seq序号:Sequence Number,占32位,用来标识从TCP源端向目的端发送的字节流,发起方发送数据时对此进行 ...

  2. 复旦计算机考研复试要口试吗,2017复旦大学考研复试:英语口语面试常见问题汇总...

    2017复旦大学考研复试:英语口语面试常见问题汇总本站小编 辅仁网/2017-12-29 A magazine publisher is trying to decide how many magaz ...

  3. c++面试常见问题汇总

    c++面试常见问题汇总 1. 指针和引用的区别? 2. 堆栈的区别? 3. new 和 delete 是如何实现的,与 malloc 和 free有什么异同? 4. struct 和 class 的区 ...

  4. 复旦计算机英语面试问题,2017复旦大学考研复试:英语口语面试常见问题汇总...

    2017复旦大学考研复试:英语口语面试常见问题汇总 考研复试中的英语面试是很多小伙伴都感到"无力"的一个环节.其实,英语口语并没有大家想象的那么可怕.下面是一些面试官最爱问的问题, ...

  5. 【面试】Java面试常见问题汇总(不含答案)、面试指导学习笔记

    面试常见问题角度 String是基本数据类型吗? int和Integer有什么区别? HashMap和HashTable的区别,及其实现原理. ArrayList/HashMap的源码.如何实现源码 ...

  6. mysql数据库常见问题_初学者必读 MySQL数据库常见问题汇总

    1.关于自增字段重新赋初值的问题? ALTER TABLE tbl AUTO_INCREMENT = 1; 2.如何实现mysql中自增长字段的功能? 以下为引用的内容: create table a ...

  7. PMP项目经理求职面试常见问题汇总

    如果你已经取得了PMP证书,没有太多的项目经验,但正打算通过面试来求得一份项目经理的工作.我建议你好好准备一下这几类问题: 1.进度优化.比如:当进度延误时如何处理? 2.资源优化.比如:当前项目中的 ...

  8. 运维开发面试常见问题汇总(一直在更新)

    1.我看你做过LVS,说一下你对LVS的理解? 2 DR模式和NAT模式的区别.优缺点 NAT模式要求: 1.LVS服务器需要有不同的网段. 2.真实服务器的网关必须设置为LVS的ip地址. 优点: ...

  9. vue 前端面试常见问题汇总(11-20)

    目录 前言 一.谈一谈 nextTick 的原理? 二.vue 是如何对数组方法进行变异的?例如 push.pop.splice 等方法 三.Vue 中的 computed 和 watch 的区别在哪 ...

  10. MySQL面试知识点汇总

    文章目录 数据库基础知识部分 为什么要使用数据库 什么是SQL 什么又是MySQL 数据库的三大范式是什么 Mysql有关权限的表都有哪几个 MySQL的binlog有有几种录入格式?分别有什么区别? ...

最新文章

  1. git 初次push
  2. .NET本质论 类型基础
  3. 练习angularjs的ng-click的应用
  4. SAP API开发方法大全
  5. C#异步批量下载文件
  6. bcp生成excel文件优化方案
  7. android服务开启线程,android之service与intentService的不同
  8. [面试]synchronized
  9. 请简述一下RS485通讯连接方式及其应用?
  10. 数据仓库分层设计思想
  11. PMP项目管理—项目风险管理(7)
  12. DappRadar x BGA 7月链游报告:链游占行业用量近60%,融资额降至3亿美元
  13. J9数字论:关于区块链的那些专业术语
  14. 英国脱欧要拍电视剧了,卷福将是男主角
  15. 租赁合同甲方违约怎么办
  16. 什么软件能在线支持视频配音文字转语音?
  17. C语言if语句学习,判断年龄并且提示语句!
  18. CentOS7 定时任务
  19. 关于minimize跟驰豫的问题
  20. ThreadingTest软件测试界顶层设计--由中国人引领的数字化软件测试时代来了

热门文章

  1. leaflet快速渲染聚合矢量瓦片(附源码下载)
  2. vue 身份证格式校验
  3. 圣诞礼物|2020年送这些礼物你就能拥有一个程序员男朋友
  4. linux学校_济南教师招聘 |济南市益友培训学校7大岗位教师招聘(月薪4k15k、包住)...
  5. 手绘板的制作——重置与橡皮擦(2)
  6. 电脑重装系统后当前安全设置不允许下载该文件
  7. 【无标题】adsa da das
  8. java愤怒的小鸟教学_JAVA课程设计——愤怒的小鸟(团队)
  9. macbook键盘失灵
  10. 如何对NTFS文件进行压缩和加密