注重体验与质量的电子书资源下载网站
分类于: 云计算&大数据 互联网
简介
目录
前言
上篇 面试笔试经验技巧篇
第1章 求职经验分享 2
1.1 踩别人没有踩过的坑,走别人没有走过的路 2
1.2 只要肯钻研,就能求职成功 3
1.3 普通DBA的逆袭经验 4
第2章 数据库程序员的求职现状 6
2.1 当前市场对于数据库程序员的需求如何?待遇如何? 6
2.2 数据库程序员有哪些可供选择的职业发展道路? 7
2.3 当企业在招聘时,对数据库程序员通常有何要求? 7
2.4 数据库程序员的日常工作是什么? 9
2.5 要想成为一名出色的数据库程序员,需要掌握哪些必备的知识? 10
2.6 各类数据库求职及市场使用情况 12
第3章 如何应对程序员面试笔试? 14
3.1 如何巧妙地回答面试官的问题? 14
3.2 如何回答技术性问题? 15
3.3 如何回答非技术性问题? 17
3.4 在被企业拒绝后是否可以再申请? 17
3.5 如何应对自己不会回答的问题? 18
3.6 如何应对面试官的“激将法”语言? 18
3.7 如何处理与面试官持不同观点这个问题? 19
3.8 什么是职场暗语? 19
下篇 面试笔试经验技巧篇
第4章 数据库基本理论 24
4.1 什么是范式和反范式? 24
4.2 事务的概念及其4个特性是什么? 35
4.3 事务的常见分类有哪些? 36
4.4 什么是XA事务? 37
4.5 事务的4种隔离级别(Isolation Level)分别是什么? 38
4.6 Oracle、MySQL和SQL Server中的事务隔离级别分别有哪些? 40
4.7 什么是CAP定理(CAP theorem)? 43
第5章 基础部分 45
5.1 MySQL数据库有什么特点? 45
5.2 如何确定MySQL是否处于运行状态?如何开启MySQL服务? 46
5.3 如何获取表内所有列的名称和类型? 47
5.4 如何创建表?如何删除表? 48
5.5 如何创建和删除数据库? 52
5.6 如何查看当前数据库里有哪些用户? 53
5.7 如何查看创建的索引及索引类型等信息? 53
5.8 如何查看数据库的版本、当前登录用户和当前的数据库名称? 54
5.9 MySQL有哪些常用日期和时间函数? 55
5.10 MySQL有哪些数据类型? 57
5.11 MySQL中limit的作用是什么? 69
5.12 如何对一张表同时进行查询和更新? 70
5.13 MySQL中如何在表的指定位置添加列? 70
5.14 MySQL中LENGTH和CHAR_LENGTH的区别是什么? 71
5.15 函数FROM_UNIXTIME和UNIX_TIMESTAMP的作用分别是什么? 71
5.16 真题 72
第6章 维护 79
6.1 在MySQL中,如何查看表的详细信息,例如存储引擎、行数、
更新时间等? 79
6.2 如何管理MySQL多实例? 81
6.3 什么是间隙(Next-Key)锁? 83
6.4 MySQL有哪些命令可以查看锁? 83
6.5 MySQL中SQL Mode的作用是什么? 91
6.6 什么是MySQL的套接字文件? 94
6.7 如何查看和修改系统参数? 95
6.8 查看当前使用的配置文件my.cnf的方法和步骤有哪些? 97
6.9 MySQL有哪几类日志文件? 99
6.10 MySQL支持事务吗? 105
6.11 如何提高MySQL的安全性? 107
6.12 什么是MySQL的复制(Replication)? 108
6.13 Oracle和MySQL中的分组(GROUP BY)问题 110
6.14 MySQL的分区表 115
6.15 MySQL有几种存储引擎(表类型)?各自有什么区别? 117
6.16 如何批量更改MySQL引擎? 128
6.17 MySQL InnoDB引擎类型的表有哪两类表空间模式?它们各有什么
优缺点? 129
6.18 MySQL有哪几个默认数据库? 130
6.19 MySQL区分大小写吗? 132
6.20 MySQL中的字符集 132
6.21 如何解决MySQL中文乱码问题? 136
6.22 MySQL原生支持的备份方式及种类有哪些? 136
6.23 真题 139
第7章 索引 152
7.1 MySQL中的索引有哪些分类? 152
7.2 MySQL中索引的使用原则有哪些? 152
7.3 什么是覆盖索引? 154
7.4 什么是哈希索引? 154
7.5 什么是自适应哈希索引(Adaptive Hash Index)? 156
7.6 什么是前缀索引? 157
7.7 什么是全文(FULLTEXT)索引? 158
7.8 什么是空间(SPATIAL)索引? 161
7.9 为什么索引没有被使用? 162
7.10 真题 163
第8章 优化 171
8.1 MySQL如何查看执行计划?执行计划中每列的含义分别是什么? 171
8.2 使用show profile分析SQL语句性能消耗 179
8.3 MySQL中CHECK、OPTIMIZE和ANALYZE的作用分别是什么? 182
8.4 如何对MySQL进行优化? 183
8.5 如何对SQL语句进行跟踪(trace)? 188
8.6 MySQL中的隐式类型转换(Implicit type conversion) 189
8.7 常见的SQL Hint(提示)有哪些? 191
8.8 如何查看SQL的执行频率? 191
8.9 如何定位执行效率较低的SQL语句? 192
8.10 如何对MySQL的大表优化? 192
第9章 操作系统 194
9.1 进程管理 194
9.1.1 进程与线程有什么区别? 194
9.1.2 内核线程和用户线程的区别? 195
9.2 内存管理 195
9.2.1 内存管理有哪几种方式? 195
9.2.2 什么是虚拟内存? 196
9.2.3 什么是内存碎片?什么是内碎片?什么是外碎片? 197
9.2.4 虚拟地址、逻辑地址、线性地址、物理地址有什么区别? 197
9.2.5 Cache替换算法有哪些? 198
9.3 用户编程接口 199
9.3.1 库函数调用与系统调用有什么不同? 199
9.3.2 静态链接与动态链接有什么区别? 200
9.3.3 静态链接库与动态链接库有什么区别? 200
第10章 计算机网络与通信 201
10.1 网络模型 201
10.1.1 OSI七层模型是什么? 201
10.1.2 TCP/IP模型是什么? 202
10.1.3 B/S与C/S有什么区别? 203
10.2 网络设备 203
10.2.1 交换机与路由器有什么区别? 203
10.2.2 路由表的功能有哪些? 204
10.3 网络协议 205
10.3.1 TCP和UDP的区别有哪些? 205
10.3.2 什么是ARP/RARP? 205
10.3.3 IP Phone的原理是什么?都用了哪些协议? 206
10.3.4 Ping命令是什么? 206
10.3.5 基本的HTTP流程有哪些? 207
10.4 网络其他问题 207
10.4.1 常用的网络安全防护措施有哪些? 207
10.4.2 相比IPv4,IPv6有什么优点? 209
上篇 面试笔试经验技巧篇
第1章 求职经验分享 2
1.1 踩别人没有踩过的坑,走别人没有走过的路 2
1.2 只要肯钻研,就能求职成功 3
1.3 普通DBA的逆袭经验 4
第2章 数据库程序员的求职现状 6
2.1 当前市场对于数据库程序员的需求如何?待遇如何? 6
2.2 数据库程序员有哪些可供选择的职业发展道路? 7
2.3 当企业在招聘时,对数据库程序员通常有何要求? 7
2.4 数据库程序员的日常工作是什么? 9
2.5 要想成为一名出色的数据库程序员,需要掌握哪些必备的知识? 10
2.6 各类数据库求职及市场使用情况 12
第3章 如何应对程序员面试笔试? 14
3.1 如何巧妙地回答面试官的问题? 14
3.2 如何回答技术性问题? 15
3.3 如何回答非技术性问题? 17
3.4 在被企业拒绝后是否可以再申请? 17
3.5 如何应对自己不会回答的问题? 18
3.6 如何应对面试官的“激将法”语言? 18
3.7 如何处理与面试官持不同观点这个问题? 19
3.8 什么是职场暗语? 19
下篇 面试笔试经验技巧篇
第4章 数据库基本理论 24
4.1 什么是范式和反范式? 24
4.2 事务的概念及其4个特性是什么? 35
4.3 事务的常见分类有哪些? 36
4.4 什么是XA事务? 37
4.5 事务的4种隔离级别(Isolation Level)分别是什么? 38
4.6 Oracle、MySQL和SQL Server中的事务隔离级别分别有哪些? 40
4.7 什么是CAP定理(CAP theorem)? 43
第5章 基础部分 45
5.1 MySQL数据库有什么特点? 45
5.2 如何确定MySQL是否处于运行状态?如何开启MySQL服务? 46
5.3 如何获取表内所有列的名称和类型? 47
5.4 如何创建表?如何删除表? 48
5.5 如何创建和删除数据库? 52
5.6 如何查看当前数据库里有哪些用户? 53
5.7 如何查看创建的索引及索引类型等信息? 53
5.8 如何查看数据库的版本、当前登录用户和当前的数据库名称? 54
5.9 MySQL有哪些常用日期和时间函数? 55
5.10 MySQL有哪些数据类型? 57
5.11 MySQL中limit的作用是什么? 69
5.12 如何对一张表同时进行查询和更新? 70
5.13 MySQL中如何在表的指定位置添加列? 70
5.14 MySQL中LENGTH和CHAR_LENGTH的区别是什么? 71
5.15 函数FROM_UNIXTIME和UNIX_TIMESTAMP的作用分别是什么? 71
5.16 真题 72
第6章 维护 79
6.1 在MySQL中,如何查看表的详细信息,例如存储引擎、行数、
更新时间等? 79
6.2 如何管理MySQL多实例? 81
6.3 什么是间隙(Next-Key)锁? 83
6.4 MySQL有哪些命令可以查看锁? 83
6.5 MySQL中SQL Mode的作用是什么? 91
6.6 什么是MySQL的套接字文件? 94
6.7 如何查看和修改系统参数? 95
6.8 查看当前使用的配置文件my.cnf的方法和步骤有哪些? 97
6.9 MySQL有哪几类日志文件? 99
6.10 MySQL支持事务吗? 105
6.11 如何提高MySQL的安全性? 107
6.12 什么是MySQL的复制(Replication)? 108
6.13 Oracle和MySQL中的分组(GROUP BY)问题 110
6.14 MySQL的分区表 115
6.15 MySQL有几种存储引擎(表类型)?各自有什么区别? 117
6.16 如何批量更改MySQL引擎? 128
6.17 MySQL InnoDB引擎类型的表有哪两类表空间模式?它们各有什么
优缺点? 129
6.18 MySQL有哪几个默认数据库? 130
6.19 MySQL区分大小写吗? 132
6.20 MySQL中的字符集 132
6.21 如何解决MySQL中文乱码问题? 136
6.22 MySQL原生支持的备份方式及种类有哪些? 136
6.23 真题 139
第7章 索引 152
7.1 MySQL中的索引有哪些分类? 152
7.2 MySQL中索引的使用原则有哪些? 152
7.3 什么是覆盖索引? 154
7.4 什么是哈希索引? 154
7.5 什么是自适应哈希索引(Adaptive Hash Index)? 156
7.6 什么是前缀索引? 157
7.7 什么是全文(FULLTEXT)索引? 158
7.8 什么是空间(SPATIAL)索引? 161
7.9 为什么索引没有被使用? 162
7.10 真题 163
第8章 优化 171
8.1 MySQL如何查看执行计划?执行计划中每列的含义分别是什么? 171
8.2 使用show profile分析SQL语句性能消耗 179
8.3 MySQL中CHECK、OPTIMIZE和ANALYZE的作用分别是什么? 182
8.4 如何对MySQL进行优化? 183
8.5 如何对SQL语句进行跟踪(trace)? 188
8.6 MySQL中的隐式类型转换(Implicit type conversion) 189
8.7 常见的SQL Hint(提示)有哪些? 191
8.8 如何查看SQL的执行频率? 191
8.9 如何定位执行效率较低的SQL语句? 192
8.10 如何对MySQL的大表优化? 192
第9章 操作系统 194
9.1 进程管理 194
9.1.1 进程与线程有什么区别? 194
9.1.2 内核线程和用户线程的区别? 195
9.2 内存管理 195
9.2.1 内存管理有哪几种方式? 195
9.2.2 什么是虚拟内存? 196
9.2.3 什么是内存碎片?什么是内碎片?什么是外碎片? 197
9.2.4 虚拟地址、逻辑地址、线性地址、物理地址有什么区别? 197
9.2.5 Cache替换算法有哪些? 198
9.3 用户编程接口 199
9.3.1 库函数调用与系统调用有什么不同? 199
9.3.2 静态链接与动态链接有什么区别? 200
9.3.3 静态链接库与动态链接库有什么区别? 200
第10章 计算机网络与通信 201
10.1 网络模型 201
10.1.1 OSI七层模型是什么? 201
10.1.2 TCP/IP模型是什么? 202
10.1.3 B/S与C/S有什么区别? 203
10.2 网络设备 203
10.2.1 交换机与路由器有什么区别? 203
10.2.2 路由表的功能有哪些? 204
10.3 网络协议 205
10.3.1 TCP和UDP的区别有哪些? 205
10.3.2 什么是ARP/RARP? 205
10.3.3 IP Phone的原理是什么?都用了哪些协议? 206
10.3.4 Ping命令是什么? 206
10.3.5 基本的HTTP流程有哪些? 207
10.4 网络其他问题 207
10.4.1 常用的网络安全防护措施有哪些? 207
10.4.2 相比IPv4,IPv6有什么优点? 209