前言 |
本书基于PostgreSQL 10版本,采用“理论+实践”的形式编写,通过大量的实例(共139个),详细讲解了它的各种SQL特性、参数配置、备份恢复、性能调优、服务端编程、高可用方案、数据库逻辑设计等。 第1篇“准备”,包括初识PostgreSQL、安装及启动PostgreSQL;第2篇“入门”,包括创建数据库和表、数据类型及其运算符、函数、查询和修改数据;第3篇“进阶”,包括索引、视图、触发器、表继承和表分区、管理用户权限和模式、配置和管理数据库服务器、备份和恢复数据;第4篇“高阶”,包括事务、优化SQL语句、优化数据库服务端性能、PL/pgSQL服务端编程;第5篇“实战”,包括高可用方案、数据库设计。 本书免费提供了所有实例的素材和源代码。 本书结构清晰、内容详实、案例丰富、通俗易懂、实用性强,适合对数据库(特别是PostgreSQL)感兴趣的读者作为自学教程。另外,本书也适合社会培训机构作为培训教材,还适合大学及专科院校的相关专业作为教学参考书。 |
第1章 |
介绍PostgreSQL的起源、基本概念和架构,以及PostgreSQL 10主要新特性。 |
第2章 |
介绍了PostgreSQL的安装和启停方法,重点对比了Windows和Linux两种操作系统下不同安装部署方法的差异。 |
第3章 |
介绍如何创建数据库和表,学会向表中插入、删除和更改数据记录,以及简单查询。 |
第4章 |
介绍PostgreSQL中的各种数据类型,以及其支持的运算符。 |
第5章 |
分门别类地介绍各种函数及其用法。 |
第6章 |
详细介绍了查询的各种语法,从简单查询到表连接、子查询,再到模糊匹配、查询运算、窗口函数,此外还介绍了一些高级的数据增加、删除、修改语法。 |
第7章 |
介绍各种索引类型及用法,特别是PostgreSQL独有的一些特色索引类型,比如GiST索引、SP-GiST索引、GIN索引、BRIN索引。 |
第8章 |
介绍如何创建和使用视图与物化视图,还介绍了利用物化视图提升查询性能。 |
第9章 |
介绍如何创建和使用触发器,包括常规触发器和事件触发器。 |
第10章 |
介绍PostgreSQL独有的表继承特性及其用法,然后着重讲解了PostgreSQL 10新增特性——声明式内置表分区功能。 |
第11章 |
通过实例介绍如何给不同的用户授予不同的权限,以提升数据库安全,还介绍了如何通过模式更好地组织数据。 |
第12章 |
详细介绍了PostgreSQL的参数配置和管理,以及常用服务端工具的功能与用法。 |
第13章 |
详细介绍了PostgreSQL数据库的逻辑备份与恢复、物理备份与恢复、增量备份与恢复的工具和方法,最后还介绍了如何把数据从Oracle或MySQL中迁移到PostgreSQL中。 |
第14章 |
介绍事务的ACID特性,以及PostgreSQL实现事务所依赖的WAL日志、Checkpoint、MVCC、灾难恢复和锁控制等机制,并通过实例阐述事务的使用方法。 |
第15章 |
从逻辑优化和物理优化两个角度阐述PostgreSQL查询优化的原理,以及如何使用EXPLAIN命令查看执行计划,以辅助查询优化,最后介绍了7种场景下的SQL优化案例。 |
第16章 |
从硬件和软件两个角度,分别介绍了影响数据库性能的诸多因素及其优化方向,包括硬件层面的CPU、I/O、内存、网络等因素,以及软件层面的操作系统、文件系统、数据库参数调优等。 |
第17章 |
着重介绍了PL/pgSQL服务端编程语言的主要语法特性,然后对比了Oracle与PL/pgSQL在语法功能上的一些差异,通过实例介绍如何从前者迁移到后者。 |
第18章 |
从方法论的角度阐述如何构建高可用集群,并介绍了PostgreSQL的2个主流高可用集群方案:Corosync+Pacemaker、Stolon。 |