主页 详情

《PostgreSQL实战》_谭峰,张文升编著_14504346_9787111603467

【书名】:《PostgreSQL实战》
【作者】:谭峰,张文升编著
【出版社】:北京:机械工业出版社
【时间】:2018
【页数】:400
【ISBN】:9787111603467
【SS码】:14504346

最新查询

内容简介

基础篇

第1章 安装与配置基础

1.1 初识PostgreSQL

1.1.1 PostgreSQL的特点

1.1.2 许可

1.1.3 邮件列表和讨论区

1.2 安装PostgreSQL

1.2.1 通过yurn源安装

1.2.2 通过源码编译安装

1.2.3 设置一个软链接

1.3 客户端程序和服务器程序

1.3.1 客户端程序

1.3.2 服务器程序

1.4 创建数据库实例

1.4.1 创建操作系统用户

1.4.2 创建数据目录

1.4.3 初始化数据目录

1.5 启动和停止数据库服务器

1.5.1 使用service方式

1.5.2 使用pg ctl进行管理

1.5.3 其他启动和关闭数据库服务器的方式

1.5.4 配置开机启动

1.6 数据库配置基础

1.6.1 配置文件的位置

1.6.2 pg_hba.conf

1.6.3 postgresql.conf

1.6.4 允许远程访问数据库

1.7 本章小结

第2章 客户端工具

2.1 pgAdmin 4简介

2.1.1 pgAdmin 4安装

2.1.2 pgAdmin 4使用

2.2 psql功能及应用

2.2.1 使用psql连接数据库

2.2.2 psql元命令介绍

2.2.3 psql导入、导出表数据

2.2.4 psql的语法和选项介绍

2.2.5 psql执行sql脚本

2.2.6 psql如何传递变量到SQL

2.2.7 使用psql定制日常维护脚本

2.2.8 psql亮点功能

2.3 本章小结

第3章 数据类型

3.1 数字类型

3.1.1 数字类型列表

3.1.2 数字类型操作符和数学函数

3.2 字符类型

3.2.1 字符类型列表

3.2.2 字符类型函数

3.3 时间/日期类型

3.3.1 时间/日期类型列表

3.3.2 时间/日期类型操作符

3.3.3 时间/日期类型常用函数

3.4 布尔类型

3.5 网络地址类型

3.5.1 网络地址类型列表

3.5.2 网络地址操作符

3.5.3 网络地址函数

3.6 数组类型

3.6.1 数组类型定义

3.6.2 数组类型值输入

3.6.3 查询数组元素

3.6.4 数组元素的追加、删除、更新

3.6.5 数组操作符

3.6.6 数组函数

3.7 范围类型

3.7.1 范围类型列表

3.7.2 范围类型边界

3.7.3 范围类型操作符

3.7.4 范围类型函数

3.7.5 给范围类型创建索引

3.8 json/isonb类型

3.8.1 json类型简介

3.8.2 查询json数据

3.8.3 jsonb与j son差异

3.8.4 jsonb与json操作符

3.8.5 jsonb与json函数

3.8.6 jsonb键/值的追加、删除、更新

3.9 数据类型转换

3.9.1 通过格式化函数进行转换

3.9.2 通过CAST函数进行转换

3.9.3 通过∷操作符进行转换

3.10 本章小结

第4章 SQL高级特性

4.1 WITH查询

4.1.1 复杂查询使用CTE

4.1.2 递归查询使用CTE

4.2 批量插入

4.2.1 方式一:INSERT INTO.SELECT

4.2.2 方式二:INSERT INTO VALUES(),(),…()

4.2.3 方式三:COPY或\COPY元命令

4.3 RETURNING返回修改的数据

4.3.1 RETURNING返回插入的数据

4.3.2 RETURNING返回更新后数据

4.3.3 RETURNING返回删除的数据

4.4 UPSERT

4.4.1 UPSERT场景演示

4.4.2 UPSERT语法

4.5 数据抽样

4.5.1 SYSTEM抽样方式

4.5.2 BERNOULLI抽样方式

4.6 聚合函数

4.6.1 string_agg函数

4.6.2 array_agg函数

4.7 窗口函数

4.7.1 窗口函数语法

4.7.2 avg() OVER()

4.7.3 row_number()

4.7.4 rank()

4.7.5 dense_rank

4.7.6 lag()

4.7.7 first_value ()

4.7.8 last_value ()

4.7.9 nth_value()

4.7.10 窗口函数别名的使用

4.8 本章小结

核心篇

第5章 体系结构

5.1 逻辑和物理存储结构

5.1.1 逻辑存储结构

5.1.2 物理存储结构

5.2 进程结构

5.2.1 守护进程与服务进程

5.2.2 辅助进程

5.3 内存结构

5.3.1 本地内存

5.3.2 共享内存

5.4 本章小结

第6章 并行查询

6.1 并行查询相关配置参数

6.2 并行扫描

6.2.1 并行顺序扫描

6.2.2 并行索引扫描

6.2.3 并行index-only扫描

6.2.4 并行bitmap heap扫描

6.3 并行聚合

6.4 多表关联

6.4.1 Nested loop多表关联

6.4.2 Merge join多表关联

6.4.3 Hash join多表关联

6.5 本章小结

第7章 事务与并发控制

7.1 事务和并发控制的概念

7.1.1 事务的基本概念和性质

7.1.2 并发引发的现象

7.1.3 ANSI SQL标准的事务隔离级别

7.2 PostgreSQL的事务隔离级别

7.2.1 查看和设置数据库的事务隔离级别

7.2.2 修改全局的事务隔离级别

7.2.3 查看当前会话的事务隔离级别

7.2.4 设置当前会话的事务隔离级别

7.2.5 设置当前事务的事务隔离级别

7.3 PostgreSQL的并发控制

7.3.1 基于锁的并发控制

7.3.2 基于多版本的并发控制

7.3.3 通过pageinspect观察MVCC

7.3.4 使用pg_repack解决表膨胀问题

7.3.5 支持事务的DDL

7.4 本章小结

第8章 分区表

8.1 分区表的意义

8.2 传统分区表

8.2.1 继承表

8.2.2 创建分区表

8.2.3 使用分区表

8.2.4 查询父表还是子表

8.2.5 constraint_exclusion参数

8.2.6 添加分区

8.2.7 删除分区

8.2.8 分区表相关查询

8.2.9 性能测试

8.2.10 传统分区表注意事项

8.3 内置分区表

8.3.1 创建分区表

8.3.2 使用分区表

8.3.3 内置分区表原理探索

8.3.4 添加分区

8.3.5 删除分区

8.3.6 性能测试

8.3.7 constraint_exclusion参数

8.3.8 更新分区数据

8.3.9 内置分区表注意事项

8.4 本章小结

第9章 PostgreSQL的NoSQL特性

9.1 为jsonb类型创建索引

9.2 json、jsonb读写性能测试

9.2.1 创建json、jsonb测试表

9.2.2 json、jsonb表写性能测试

9.2.3 json、jsonb表读性能测试

9.3 全文检索对json和jsonb数据类型的支持

9.3.1 PostgreSQL全文检索简介

9.3.2 json、jsonb全文检索实践

9.4 本章小结

进阶篇

第10章 性能优化

10.1 服务器硬件

10.2 操作系统优化

10.2.1 常用Linux性能工具

10.2.2 Linux系统的I/O调度算法

10.2.3 预读参数调整

10.2.4 内存的优化

10.3 数据库调优

10.3.1 全局参数调整

10.3.2 统计信息和查询计划

10.3.3 索引管理与维护

10.4 本章小结

第11章 基准测试与pgbench

11.1 关于基准测试

11.1.1 基准测试的常见使用场景

11.1.2 基准测试衡量指标

11.1.3 基准测试的原则

11.2 使用pgbench进行测试

11.2.1 pgbench的测试结果报告

11.2.2 通过内置脚本进行测试

11.2.3 使用自定义脚本进行测试

11.2.4 其他选项

11.3 本章小结

第12章 物理复制和逻辑复制

12.1 异步流复制

12.1.1 以拷贝数据文件方式部署流复制

12.1.2 以pg_basebackup方式部署流复制

12.1.3 查看流复制同步方式

12.2 同步流复制

12.2.1 synchronous_commit参数详解

12.2.2 配置同步流复制

12.2.3 同步流复制的典型“陷阱”

12.3 单实例、异步流复制、同步流复制性能测试

12.3.1 读性能测试

12.3.2 写性能测试

12.4 流复制监控

12.4.1 pg_stat_replication

12.4.2 监控主备延迟

12.4.3 pg_stat_wal_receiver

12.4.4 相关系统函数

12.5 流复制主备切换

12.5.1 判断主备角色的五种方法

12.5.2 主备切换之文件触发方式

12.5.3 主备切换之pg_ctl promote方式

12.5.4 pg_rewind

12.6 延迟备库

12.6.1 延迟备库的意义

12.6.2 延迟备库部署

12.6.3 recovery_min_apply_delay参数对同步复制的影响

12.7 同步复制优选提交

12.7.1 synchronous standby_names参数详解

12.7.2 基于优先级的同步备库

12.7.3 基于Quorum的同步备库

12.8 级联复制

12.8.1 级联复制物理架构

12.8.2 级联复制部署

12.9 流复制维护生产案例

12.9.1 案例一:主库上创建表空间时备库宕机

12.9.2 案例二:备库查询被中止

12.9.3 案例三:主库上的WAL被覆盖导致备库不可用

12.10 逻辑复制

12.10.1 逻辑解析

12.10.2 逻辑复制架构

12.10.3 逻辑复制部署

12.10.4 逻辑复制DML数据验证

12.10.5 逻辑复制添加表、删除表

12.10.6 逻辑复制启动、停止

12.10.7 逻辑复制配置注意事项和限制

12.10.8 逻辑复制延迟测试

12.11 本章小结

第13章 备份与恢复

13.1 备份与恢复概述

13.2 增量备份

13.2.1 开启WAL归档

13.2.2 创建基础备份

13.3 指定时间和还原点的恢复

13.3.1 恢复到最近时间点

13.3.2 恢复到指定时间点

13.3.3 恢复到指定还原点

13.3.4 恢复到指定事务

13.3.5 恢复到指定时间线

13.4 SQL转储和文件系统级别的备份

13.4.1 SQL转储

13.4.2 文件系统级别的备份

13.5 本章小结

第14章 高可用

14.1 Pgpool-Ⅱ+异步流复制实现高可用

14.1.1 pgpool部署架构图

14.1.2 pgpool部署

14.1.3 PCP管理接口配置

14.1.4 pgpool方案高可用测试

14.1.5 pgpool方案常见错误处理

14.2 基于Keepalived+异步流复制实现高可用

14.2.1 Keepalived+异步流复制部署架构图

14.2.2 Keepalived+异步流复制高可用方案部署

14.2.3 Keepalived配置

14.2.4 Keepalived方案高可用测试

14.3 本章小结

第15章 版本升级

15.1 版本介绍

15.2 小版本升级

15.3 大版本升级

15.3.1 通过pg_dumpall进行大版本升级

15.3.2 通过pg_upgrade进行大版本升级

15.3.3 使用pglogical升级大版本

15.4 本章小结

第16章 扩展模块

16.1 CREATE EXTENSION

16.2 pg_stat_atatements

16.3 auto_explain

16.4 pg_rewarm

16.5 file_fdw

16.5.1 SQL/MED简介

16.5.2 file_fdw部署

16.5.3 使用file_fdw分析数据库日志

16.6 postgres_fdw

16.6.1 postgres_fdw部署

16.6.2 postgres_fdw外部表支持写操作

16.6.3 postgres_fdw支持聚合函数下推

16.7 Citus

16.7.1 Citus特性

16.7.2 Citus安装

16.7.3 Citus管理

16.7.4 创建分布表

16.7.5 Citus参数配置

16.7.6 Citus常用功能

16.8 本章小结

第17章 Oracle数据库迁移PostgreSQL实践

17.1 项目准备

17.2 数据库对象迁移

17.3 应用代码改造

17.4 数据迁移测试

17.5 功能测试和性能测试

17.6 生产割接

17.7 oracle_fdw部署过程中的常见错误

17.8 本章小结

第18章 PostGIS

18.1 安装与配置

18.2 创建GIS数据库

18.3 几何对象

18.3.1 几何对象的输入

18.3.2 几何对象的存储

18.3.3 几何对象的输出

18.3.4 几何对象的运算

18.4 应用场景:圈人与地理围栏

18.4.1 空间索引

18.4.2 地理围栏

18.5 本章小结


书查询(www.shuchaxun.com)本网页唯一编码:
c06e3b3ae05099eee2d431bbaf6b1342#aa94b95e055c23c79c3bfcba0d9fcbba#138542274#14504346.pdf