Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!

SQL优化核心思想 PDF 下载


分享到:
时间:2020-11-13 09:22来源:http://www.java1234.com 作者:转载  侵权举报
SQL优化核心思想 PDF 下载
失效链接处理
SQL优化核心思想 PDF 下载


本站整理下载:
版权归出版社和原作者所有,链接已删除,请购买正版
 
 
用户下载说明:
电子版仅供预览,下载后24小时内务必删除,支持正版,喜欢的请购买正版书籍:
http://product.dangdang.com/25260216.html
  
相关截图:



资料简介:
结构化查询语言(Structured Query Language,SQL)是一种功能强大的数据库语言。它基于关系代数运算,功能丰富、语言简洁、使用方便灵活,已成为关系数据库的标准语言。 本书旨在引导读者掌握SQL优化技能,以更好地提升数据库性能。本书共分10章,从SQL基础知识、统计信息、执行计划、访问路径、表连接方式、成本计算、查询变换、调优技巧、经典案例、全自动SQL审核等角度介绍了有关SQL优化的方方面面。 本书基于Oracle进行编写,内容讲解由浅入深,适合各个层次的读者学习。本书面向一线工程师、运维工程师、数据库管理员以及系统设计与开发人员,无论是初学者还是有一定基础的读者,都将从中获益。


资料目录:
第 1章 SQL优化必懂概念 1

1.1 基数(CARDINALITY) 1

1.2 选择性(SELECTIVITY) 3

1.3 直方图(HISTOGRAM) 7

1.4 回表(TABLE ACCESS BY INDEXROWID) 13

1.5 集群因子(CLUSTERING FACTOR) 15

1.6 表与表之间关系 19

第 2章 统计信息 21

2.1 什么是统计信息 21

2.2 统计信息重要参数设置 24

2.3 检查统计信息是否过期 32

2.4 扩展统计信息 37

2.5 动态采样 42

2.6 定制统计信息收集策略 47

第3章 执行计划 49

3.1 获取执行计划常用方法 49

3.1.1 使用AUTOTRACE查看执行计划 49

3.1.2 使用EXPLAIN PLAN FOR查看执行计划 52

3.1.3 查看带有A-TIME的执行计划 54

3.1.4 查看正在执行的SQL的执行计划 56

3.2 定制执行计划 57

3.3 怎么通过查看执行计划建立索引 59

3.4 运用光标移动大法阅读执行计划 63

第4章 访问路径(ACCESS PATH) 67

4.1 常见访问路径 67

4.1.1 TABLE ACCESS FULL 67

4.1.2 TABLE ACCESS BY USER ROWID 71

4.1.3 TABLE ACCESS BY ROWID RANGE 71

4.1.4 TABLE ACCESS BY INDEX ROWID 72

4.1.5 INDEX UNIQUE SCAN 72

4.1.6 INDEX RANGE SCAN 73

4.1.7 INDEX SKIP SCAN 74

4.1.8 INDEX FULL SCAN 75

4.1.9 INDEX FAST FULL SCAN 77

4.1.10 INDEX FULL SCAN (MIN/MAX) 80

4.1.11 MAT_VIEW REWRITE ACCESS FULL 83

4.2 单块读与多块读 83

4.3 为什么有时候索引扫描比全表扫描更慢 84

4.4 DML对于索引维护的影响 84

第5章 表连接方式 86

5.1 嵌套循环(NESTED LOOPS) 86

5.2 HASH连接(HASH JOIN) 90

5.3 排序合并连接(SORT MERGE JOIN) 93

5.4 笛卡儿连接(CARTESIAN JOIN) 95

5.5 标量子查询(SCALAR SUBQUERY) 98

5.6 半连接(SEMI JOIN) 100

5.6.1 半连接等价改写 100

5.6.2 控制半连接执行计划 101

5.6.3 读者思考 103

5.7 反连接(ANTI JOIN) 104

5.7.1 反连接等价改写 104

5.7.2 控制反连接执行计划 105

5.7.3 读者思考 108

5.8 FILTER 108

5.9 IN与EXISTS谁快谁慢 111

5.10 SQL语句的本质 111

第6章 成本计算 112

6.1 优化SQL需要看COST吗 112

6.2 全表扫描成本计算 112

6.3 索引范围扫描成本计算 116

6.4 SQL优化核心思想 119

第7章 必须掌握的查询变换 120

7.1 子查询非嵌套 120

7.2 视图合并 125

7.3 谓词推入 129

第8章 调优技巧 133

8.1 查看真实的基数(Rows) 133

8.2 使用UNION代替OR 134

8.3 分页语句优化思路 135

8.3.1 单表分页优化思路 135

8.3.2 多表关联分页优化思路 150

8.4 使用分析函数优化自连接 153

8.5 超大表与超小表关联优化方法 154

8.6 超大表与超大表关联优化方法 155

8.7 LIKE语句优化方法 159

8.8 DBLINK优化 161

8.9 对表进行ROWID切片 167

8.10 SQL三段分拆法 169

第9章 SQL优化案例赏析 170

9.1 组合索引优化案例 170

9.2 直方图优化案例 173

9.3 NL被驱动表不能走INDEX SKIP SCAN 177

9.4 优化SQL需要注意表与表之间关系 178

9.5 INDEX FAST FULL SCAN优化案例 179

9.6 分页语句优化案例 181

9.7 ORDER BY取别名列优化案例 183

9.8 半连接反向驱动主表案例一 185

9.9 半连接反向驱动主表案例二 187

9.10 连接列数据分布不均衡导致性能问题 192

9.11 Filter优化经典案例 198

9.12 树形查询优化案例 202

9.13 本地索引优化案例 204

9.14 标量子查询优化案例 206

9.14.1 案例一 206

9.14.2 案例二 207

9.15 关联更新优化案例 211

9.16 外连接有OR关联条件只能走NL 213

9.17 把你脑袋当CBO 217

9.18 扩展统计信息优化案例 221

9.19 使用LISGAGG分析函数优化WMSYS.WM_CONCAT 227

9.20 INSTR非等值关联优化案例 230

9.21 REGEXP_LIKE非等值关联优化案例 233

9.22 ROW LEVEL SECURITY优化案例 237

9.23 子查询非嵌套优化案例一 240

9.24 子查询非嵌套优化案例二 247

9.25 烂用外连接导致无法谓词推入 252

9.26 谓词推入优化案例 262

9.27 使用CARDINALITY优化SQL 268

9.28 利用等待事件优化SQL 272

第 10章 全自动SQL审核 281

10.1 抓出外键没创建索引的表 281

10.2 抓出需要收集直方图的列 282

10.3 抓出必须创建索引的列 283

10.4 抓出SELECT * 的SQL 284

10.5 抓出有标量子查询的SQL 285

10.6 抓出带有自定义函数的SQL 286

10.7 抓出表被多次反复调用SQL 287

10.8 抓出走了FILTER的SQL 288

10.9 抓出返回行数较多的嵌套循环SQL 290

10.10 抓出NL被驱动表走了全表扫描的SQL 292

10.11 抓出走了TABLE ACCESS FULL的SQL 293

10.12 抓出走了INDEX FULL SCAN的SQL 294

10.13 抓出走了INDEX SKIP SCAN的SQL 295

10.14 抓出索引被哪些SQL引用 297

10.15 抓出走了笛卡儿积的SQL 298

10.16 抓出走了错误的排序合并连接的SQL 299

10.17 抓出LOOP套LOOP的PSQL 301

10.18 抓出走了低选择性索引的SQL 302

10.19 抓出可以创建组合索引的SQL(回表再过滤选择性高的列) 304

10.20 抓出可以创建组合索引的SQL(回表只访问少数字段) 306



 
------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐