由浅入深PostgreSQLPDF电子书下载
- 电子书积分:12 积分如何计算积分?
- 作 者:(奥)汉斯·尤尔根·舍尔希著
- 出 版 社:北京:清华大学出版社
- 出版年份:2018
- ISBN:9787302512882
- 页数:331 页
第1章 PostgreSQL概述 1
1.1 PostgreSQL 9.6中有什么新技术 1
1.1.1 理解新的数据库管理功能 1
1.1.2 探究新的SQL和开发者相关的功能 3
1.1.3 使用新的备份和复制功能 5
1.1.4 理解性能相关的特性 5
1.2 总结 7
第2章 理解事务和锁定 8
2.1 使用PostgreSQL事务 8
2.1.1 在事务内处理错误 10
2.1.2 使用保存点 11
2.1.3 事务性DDL 12
2.2 理解基本的锁定 13
2.3 使用FOR SHARE和FOR UPDATE 17
2.4 理解事务隔离级别 20
2.5 观察死锁和类似的问题 22
2.6 利用咨询锁 24
2.7 优化存储以及控制清理 25
2.7.1 配置VACUUM和autovacuum 26
2.7.2 观察工作中的VACUUM 28
2.7.3 利用snapshot too old 31
2.8 总结 32
第3章 使用索引 33
3.1 理解简单查询和代价模型 33
3.1.1 使用EXPLAIN 34
3.1.2 深究PostgreSQL代价模型 36
3.1.3 部署简单的索引 38
3.1.4 使用排序输出 38
3.1.5 一次使用多个索引 39
3.1.6 以一种聪明的方式使用索引 41
3.2 使用聚簇表改善速度 43
3.2.1 聚簇表 46
3.2.2 使用只用索引的扫描 46
3.3 理解另外的B-树特性 47
3.3.1 组合索引 47
3.3.2 增加函数索引 48
3.3.3 减少空间消耗 49
3.3.4 在建立索引时添加数据 51
3.4 引入操作符类 51
3.5 理解PostgreSQL索引类型 57
3.5.1 Hash索引 58
3.5.2 GiST索引 58
3.5.3 GIN索引 61
3.5.4 SP-GiST索引 62
3.5.5 BRIN索引 62
3.5.6 增加额外索引 64
3.6 用模糊搜索实现更好的回答 65
3.6.1 利用Pg_trgm 65
3.6.2 加速LIKE查询 67
3.6.3 处理正则表达式 68
3.7 理解全文搜索-FTS 69
3.7.1 比较字符串 69
3.7.2 定义GIN索引 70
3.7.3 调试用户的搜索 71
3.7.4 收集词统计信息 72
3.7.5 利用排除操作符 73
3.8 总结 74
第4章 处理高级SQL 75
4.1 引入分组集 75
4.1.1 装载一些案例数据 75
4.1.2 应用分组集 76
4.1.3 组合分组集和FILTER子句 79
4.2 使用有序集 79
4.3 理解假想聚集 81
4.4 利用窗口函数和分析 82
4.4.1 划分数据 83
4.4.2 在窗口中排序数据 84
4.4.3 使用滑动窗口 86
4.4.4 提取窗口子句 88
4.4.5 使用内建窗口函数 88
4.5 编写自己的聚集 96
4.5.1 创建简单的聚集 96
4.5.2 为并行查询增加支持 100
4.5.3 改进效率 100
4.5.4 编写假想聚集 102
4.6 总结 104
第5章 日志文件和系统统计信息 105
5.1 收集运行时统计信息 105
5.2 创建日志文件 123
5.3 总结 128
第6章 优化查询获得良好性能 129
6.1 学习优化器的行为 129
6.2 理解执行计划 140
6.2.1 系统地处理计划 140
6.2.2 发现问题 142
6.3 理解并且固定连接 147
6.3.1 正确使用连接 147
6.3.2 处理外连接 148
6.3.3 理解join_collapse_limit变量 149
6.4 启用和禁用优化器设置 150
6.5 分区数据 154
6.5.1 创建分区 154
6.5.2 应用表约束 156
6.5.3 修改继承的结构 157
6.5.4 在分区结构中移进和移出表 158
6.5.5 清理数据 159
6.6 为好的查询性能调整参数 159
6.6.1 加速排序 162
6.6.2 加速管理任务 164
6.7 总结 165
第7章 编写存储过程 166
7.1 理解存储过程语言 166
7.2 理解各种存储过程语言 170
7.2.1 引入PL/pgSQL 171
7.2.2 引入PL/Perl 187
7.2.3 引入PL/Python 194
7.3 改进存储过程的性能 197
7.4 使用存储过程 199
7.5 总结 201
第8章 管理PostgreSQL安全性 202
8.1 管理网络安全性 202
8.1.1 理解绑定地址和连接 203
8.1.2 管理pg_hba.conf 206
8.1.3 处理实例级安全性 210
8.1.4 定义数据库级安全性 214
8.1.5 调整方案级权限 215
8.1.6 使用表 218
8.1.7 处理列级安全性 219
8.1.8 配置默认特权 220
8.2 深入行级安全性——RLS 221
8.3 检查权限 225
8.4 再分配对象和删除用户 227
8.5 总结 228
第9章 处理备份和恢复 229
9.1 执行简单转储 229
9.1.1 运行pg_dump 229
9.1.2 传递口令和连接信息 230
9.1.3 提取数据的子集 233
9.1.4 处理多种数据格式 233
9.2 重放备份 235
9.3 处理全局数据 236
9.4 总结 237
第10章 理解备份和复制 238
10.1 理解事务日志 238
10.1.1 察看事务日志 239
10.1.2 理解检查点 240
10.1.3 优化事务日志 240
10.2 事务日志归档和恢复 241
10.2.1 为归档进行配置 241
10.2.2 配置pg_hba.conf文件 242
10.2.3 创建基础备份 243
10.2.4 重放事务日志 246
10.2.5 清理事务日志归档 250
10.3 设置异步复制 251
10.3.1 执行基本设置 251
10.3.2 停止和继续复制 253
10.3.3 检查复制以确保可用性 254
10.3.4 执行故障转移以及理解时间线 256
10.3.5 管理冲突 257
10.3.6 让复制更可靠 259
10.4 升级到同步复制 259
10.5 利用复制槽 262
10.5.1 处理物理复制槽 263
10.5.2 处理逻辑复制槽 265
10.6 总结 268
第11章 选定有用的扩展 269
11.1 理解扩展如何工作 269
11.2 利用contrib模块 273
11.2.1 使用adminpack 273
11.2.2 应用布隆过滤器 275
11.2.3 部署btree gist和btree_gin 277
11.2.4 Dblink-考虑逐步淘汰 278
11.2.5 用file fdw取得文件数据 278
11.2.6 使用pageinspect检查存储 280
11.2.7 用pg_buffercache研究缓冲 282
11.2.8 用pgcrypto加密数据 284
11.2.9 用pg_prewarm预热缓冲 284
11.2.10 用pg_stat_statements检查性能 285
11.2.11 用pgstattuple检查存储 285
11.2.12 用pg_trgm进行模糊搜索 288
11.2.13 使用postgres_fdw连接到远程服务器 288
11.3 其他有用的扩展 292
11.4 总结 293
第12章 在PostgreSQL中排查错误 294
12.1 着手处理一个陌生的数据库 294
12.2 检查pg_stat_activity 294
12.3 检查慢查询 297
12.3.1 检查个体查询 298
12.3.2 用perf深入研究 299
12.4 检查日志 300
12.5 检查缺失的索引 301
12.6 检查内存和I/O 301
12.7 了解值得注意的错误场景 303
12.7.1 面对clog损坏 304
12.7.2 理解检查点消息 305
12.7.3 管理损坏的数据页面 305
12.7.4 粗心的连接管理 306
12.7.5 与表膨胀斗争 306
12.8 总结 307
第13章 迁移到PostgreSQL 308
13.1 迁移SQL语句到PostgreSQL 308
13.1.1 使用侧连接 308
13.1.2 使用分组集 309
13.1.3 使用WITH子句——公共表表达式 310
13.1.4 使用 WITH RECURSIVE子句 311
13.1.5 使用FILTER子句 311
13.1.6 使用窗口函数 312
13.1.7 使用有序集——WITHIN GROUP子句 313
13.1.8 使用TABLESAMPLE子句 313
13.1.9 使用limit/offset 315
13.1.10 使用OFFSET 315
13.1.11 使用临时表 316
13.1.12 匹配时间序列中的模式 316
13.2 从Oracle转移到PostgreSQL 317
13.2.1 使用oracle fdw扩展转移数据 317
13.2.2 使用ora2pg从Oracle迁移 319
13.2.3 常见的陷阱 321
13.3 从MySQL或MariaDB转移到PostgreSQL 322
13.3.1 处理MySQL和MariaDB中的数据 323
13.3.2 迁移数据和模式 327
13.4 总结 329
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《少女杜拉》(奥)西格蒙德·弗洛伊德(SigmundFreud)著 2020
- 《资源型城市可持续发展的财政政策研究》刘尚希著 2019
- 《世界名人名传 三作家传 卡萨诺瓦、司汤达、托尔斯泰》柳鸣九主编;(奥)茨威格著;申文林,高中甫译 2019
- 《阿德勒》(奥)阿尔弗雷德·阿德勒著 2019
- 《室内设计看这本就够了 全彩升级版》陈根主编;吴迪副主编 2019
- 《精神分析引论》(奥)西格蒙德·弗洛伊德著;黄珊译 2019
- 《童第周》姜荣根编绘 2019
- 《骑马周游世界》海勒根那著 2019
- 《刺杀肯尼迪》(美)比尔·奥赖利(美)马丁·杜加尔德 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019