没有合适的资源?快使用搜索试试~ 我知道了~
首页mysql数据库方面笔试面试题(带答案)
mysql数据库方面笔试面试题(带答案)
需积分: 50 48 下载量 90 浏览量
更新于2023-03-16
评论 5
收藏 87KB DOCX 举报
面试题:介绍mysql搜索引擎,主从配置描述,分库分表的介绍,mysql优化描述,数据备份方案,sql注入,事务,mysql线上部署用户的什么版本(线上需要空间付费,了解一下),熟悉的数据库高可用架构,索引,主键,唯一索引,联合索引的区别等
资源详情
资源评论
资源推荐
1. mysql 有哪些搜索引擎,底层怎么储存数据的,吞吐量有多大
2. mysql 的搜索引擎解释
3. mysql 的主从配置怎么实现的
4. 数据量特别大怎么处理(分表,分库),为项目做过哪些优化
5. mysql 线上部署用户的什么版本(线上需要空间付费,了解一下)
6. 表一 create table(ID,CONS_NO,CONS_NAME,CONTBACT_CAP,BUILD_DATE,ORG_NO )分别
表示(用户 ID,用户号,用户姓名,合同容量,立户日期,部门编号)表 2 create
table 0_ORG(ORG_NO,ORG_NAME,P_ORG_NO)分别表示(部门编号,部门名称,上级部
门编号)
(1) 查询上级部门编号为 10099 所有的用户号,用户姓名
(2) 把用户号为 123456789 的部门号修改为 100990101
(3) 查询各部门的用户数量,显示部门编号,用户数量,按部门编号查询
(4) 查询用户数量超过 10000 的部门编号,用户数量,部门名称
(5) 创建备份表 back_C_CONS,存储表 C_CONS 中部门编号为 10099
(6) 查询部门名称以"武"开头的所有用户号和用户名称
(7) 查询立户日期在 20130921 以后和 20131021 以前的所有用户号以及用户姓名
(8) 查询最大用户 ID 的用户号,用户姓名
7. 每天凌晨四点备份数据库,全库备份的方案
8. 简单说说熟悉的数据库高可用架构
9. 一条 sql 语句执行的慢,怎么解决?
10. sql 语句中 where 和 having 哪个执行更快
11. 简单描述 MySQL 中,索引,主键,唯一索引,联合索引的区别,对数据库有什么影响
12. 请简述项目中优化 sql 语句执行效率的方法,从哪些方面分析
13. 简单介绍一下 sql 注入,如何防范
14. 8 小时内一个博客的文章排行榜(2 亿用户),用什么数据库,如何设计数据库表
15. 数据库怎么进行优化
问题答案(仅做参考):
一、 (1)MyISAM
MyISAM 表是独立于操作系统的,这说明可以轻松地将其从 Windows 服务器移植到 Linux 服务器;
每当我们建立一个 MyISAM 引擎的表时,就会在本地磁盘上建立三个文件,文件名就是表名。
MyISAM 表无法处理事务,这就意味着有事务处理需求的表,不能使用 MyISAM 存储引擎。
MyISAM 存储引擎特别适合在以下几种情况下使用:
1)选择密集型的表。MyISAM 存储引擎在筛选大量数据时非常迅速,这是它最突出的优点。
2)插入密集型的表。MyISAM 的并发插入特性允许同时选择和插入数据。例如:MyISAM 存
储引擎很适合管理邮件或 Web 服务器日志数据。
(2)InnoDB
InnoDB 是一个健壮的事务型存储引擎,这种存储引擎已经被很多互联网公司使用,为用户操作非常
大的数据存储提供了一个强大的解决方案。我的电脑上安装的 MySQL 5.6.13 版,InnoDB 就是作为
默认的存储引擎。InnoDB 还引入了行级锁定和外键约束,在以下场合下,使用 InnoDB 是最理想的
选择:(重点)
1.更新密集的表。InnoDB 存储引擎特别适合处理多重并发的更新请求。
2.事务。InnoDB 存储引擎是支持事务的标准 MySQL 存储引擎。
3.自动灾难恢复。与其它存储引擎不同,InnoDB 表能够自动从灾难中恢复。
4.外键约束。MySQL 支持外键的存储引擎只有 InnoDB 。
5.支持自动增加列 AUTO_INCREMENT 属性。
一般来说,如果需要事务支持,并且有较高的并发读取频率,InnoDB 是不错的选择。
(3)MEMORY
使用 MySQL Memory 存储引擎的出发点是速度。为得到最快的响应时间,采用的逻辑存储介
质是系统内存。虽然在内存中存储表数据确实会提供很高的性能,但当 mysqld 守护进程崩溃时,所
有的 Memory 数据都会丢失。获得速度的同时也带来了一些缺陷。它要求存储在 Memory 数据表里
的数据使用的是长度不变的格式,这意味着不能使用 BLOB 和 TEXT 这样的长度可变的数据类型,
VARCHAR 是一种长度可变的类型,但因为它在 MySQL 内部当做长度固定不变的 CHAR 类型,所
以可以使用。
一般在以下几种情况下使用 Memory 存储引擎:
目标数据较小,而且被非常频繁地访问。在内存中存放数据,所以会造成内存的使用,可以通过参
数 max_heap_table_size 控制 Memory 表的大小,设置此参数,就可以限制 Memory 表的最大大小。
如果数据是临时的,而且要求必须立即可用,那么就可以存放在内存表中。
存储在 Memory 表中的数据如果突然丢失,不会对应用服务产生实质的负面影响。
Memory 同时支持散列索引和 B 树索引。B 树索引的优于散列索引的是,可以使用部分查询和
通配查询,也可以使用<、>和>= “ ”等操作符方便数据挖掘。散列索引进行 相等比较 非常快,但是对
“ ”范围比较 的速度就慢多了,因此散列索引值适合使用在=和<>的操作符中,不适合在<或>操作符中,
也同样不适合用在 order by 子句中。
(4)MERGE
MERGE 存储引擎是一组 MyISAM 表的组合,这些 MyISAM 表结构必须完全相同,尽管其使用
不如其它引擎突出,但是在某些情况下非常有用。说白了,Merge 表就是几个相同 MyISAM 表的聚
合器;
Merge 表中并没有数据,对 Merge 类型的表可以进行查询、更新、删除操作,这些操作实际上
是对内部的 MyISAM 表进行操作。Merge 存储引擎的使用场景。
对于服务器日志这种信息,一般常用的存储策略是将数据分成很多表,每个名称与特定的时间
端相关。例如:可以用 12 个相同的表来存储服务器日志数据,每个表用对应各个月份的名字来命名 。
当有必要基于所有 12 个日志表的数据来生成报表,这意味着需要编写并更新多表查询,以反映这些
表中的信息。与其编写这些可能出现错误的查询,不如将这些表合并起来使用一条查询,之后再删
除 Merge 表,而不影响原来的数据,删除 Merge 表只是删除 Merge 表的定义,对内部的表没有任何
影响。
(5)ARCHIVE
Archive 是归档的意思,在归档之后很多的高级功能就不再支持了,仅仅支持最基本的插入和
查询两种功能。在 MySQL 5.5 版以前,Archive 是不支持索引,但是在 MySQL 5.5 以后的版本中就
开始支持索引了。
Archive 拥有很好的压缩机制,它使用 zlib 压缩库,在记录被请求时会实时压缩,所以它经常被
用来当做仓库使用。
如何选择合适的存储引擎?
选择标准可以分为:
(1)是否需要支持事务;
(2)是否需要使用热备;
(3)崩溃恢复:能否接受崩溃;
(4)是否需要外键支持;
然后按照标准,选择对应的存储引擎即可。
吞吐量是指对网络、设备、端口、虚电路或其他设施,单位时间内成功地传送数据的数量(以
比特、字节、分组等测量),MySQL 的 QPS 吞吐量或者说 TPS 与很多因素有关,例如 CPU、内存
以及硬盘等。单个 reqeust对 CPU 消耗越高,外部系统接口、IO 影响速度越慢,系统吞吐能力越低,
反之越高。
系统吞吐量几个重要参数:QPS(TPS)、并发数、响应时间
QPS(TPS):每秒钟 request/事务数量
并发数:系统同时处理的 request/事务数(很多人经常会把并发数和 TPS 理解混淆)
响应时间:一般取平均响应时间
QPS(TPS)=并发数/平均响应时间
系统吞吐量参考文档(了解):
https://blog.csdn.net/adparking/article/details/37583965
数据库原理(了解):http://blog.jobbole.com/100349/
二、
关系数据库表是用于存储和组织信息的数据结构,可以将表理解为由行和列组成的表
格,类似于 Excel 的电子表格的形式。有的表简单,有的表复杂,有的表根本不用来存储任
何长期的数据,有的表读取时非常快,但是插入数据时去很差;而我们在实际开发过程中,
就可能需要各种各样的表,不同的表,就意味着存储不同类型的数据,数据的处理上也会
存在着差异,那么。对于 MySQL 来说,它提供了很多种类型的存储引擎,我们可以根据对
数据处理的需求,选择不同的存储引擎,从而最大限度的利用 MySQL 强大的功能。
三、略
四、
1、索引优化和 SQL 语句优化是必须的,避免模糊查询和非索引查询,删改操作根据
聚集索引进行,删改操作太频繁的话还是需要考虑分表
2、看需求,如果需求不限制,那就分表
分区会增加管理复杂度和成本这个很难理解,分区增加不了多少工作,如果需求要求
必须单表,分区是解决在千万到几亿数据量的比较合适的方法
剩余10页未读,继续阅读
蓝光fighting
- 粉丝: 2
- 资源: 17
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
- MW全能培训汽轮机调节保安系统PPT教学课件.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0