大小:81.96M
更新时间:23-08-16
系统:Pc
postgresql修炼之道 从小工到专家是一本PostgreSQL数据库领域经典著作,由PostgreSQL中国社区数据库专家、沃趣科技数据库架构师唐成撰写。本书全面且实践性强,作者从SQL基础、安装配置、数据类型、数据库的逻辑结构等基础知识一直讲到PostgreSQL的架构、技术内幕、特色功能、Standby、数据库优化以及一些配套的开源软件的使用,覆盖了PostgreSQL领域方方面面的知识,几乎每章都有大量的示例和经验总结,能够帮助读者更好的学习和掌握,是学习postgresql最好的图书,欢迎免费下载阅读。
《postgresql修炼之道 从小工到专家》是目前有关PostgreSQL数据库领域比较全面和系统的中文著作,内容十分丰富。全书共20章,分为四个部分。
准备篇(1~3章)针对PostgreSQL数据库的总体概况、安装配置步骤及SQL基础知识进行了介绍。基础篇(4~8章)的内容是为了帮助对PostgreSQL数据库不是很了解的读者打好基础。这部分介绍了psql工具的使用方法, PostgreSQL数据库的数据类型和数据库对象的操作方法,以及PostgreSQL数据库的架构和数据库服务的管理等知识。提高篇(9~13章)讲解PostgreSQL的执行计划、技术内幕及特色功能,最后还介绍了解数据库优化方法和PostgreSQL Standby数据库的搭建过程。若想早日成为PostgreSQL数据库高手,请仔细阅读这一部分内容。第三方开源软件及架构篇(14~20章)介绍PostgreSQL中最常用开源连接池软件PgBouncer、逻辑复制软件Slony-I、逻辑同步软件Bucardo、数据水平拆分功能的开源软件 PLProxy、数据库中间件软件pgpool-II、集群数据库软件Postgres-XC的使用方法。最后还介绍了与PostgreSQL数据库配套使用的一些开源软件和搭建各种实用的高可用方案方面的知识。
前言 第一篇准备篇 第1章PostgreSQL简介2 1.1什么是PostgreSQL2 1.1.1PostgreSQL概述2 1.1.2PostgreSQL的发展历史2 1.1.3 PostgreSQL数据库的优势3 1.1.4 PostgreSQL应用现状和发展趋势4 1.2 PostgreSQL数据库与其他数据库的对比4 1.2.1PostgreSQL与MySQL数据库的对比4 1.2.2 PostgreSQL与Oracle数据库的对比6 1.3 小结6 第2章PostgreSQL安装与配置7 2.1 从发行版本安装7 2.1.1 在Debian或Ubuntu下的安装7 2.1.2在Redhat、CentOS或Fedora下的安装9 2.1.3 在Windows下的安装12 2.1.4 发行版安装总结16 2.2 从源码安装16 2.2.1 编译安装过程介绍16 2.2.2 下载源代码17 2.2.3 编译及安装18 2.2.4 安装后的配置20 2.2.5 创建数据库簇21 2.2.6 安装contrib目录下的工具21 2.2.7 启动和停止数据库21 2.2.8 编译安装时的常见问题及解决方法22 2.3 安装技巧介绍24 2.3.1 在Redhat、CentOS下使用二进制包安装较新版本的方法24 2.3.2 如何使用较大的数据块提高I/O性能25 2.4 PostgreSQL的简单配置25 2.4.1 修改监听的IP和端口25 2.4.2 与数据库log相关的参数25 2.4.3 内存参数的设置26 2.5 小结26 第3章SQL语言入门27 3.1 SQL语句语法简介27 3.1.1 语句的分类27 3.1.2 词法结构27 3.2 DDL语句28 3.2.1 建表语句28 3.2.2 删除表语句30 3.3 DML语句30 3.3.1 插入语句30 3.3.2 更新语句31 3.3.3 删除语句31 3.4 查询语句31 3.4.1 单表查询语句31 3.4.2 过滤条件的查询32 3.4.3 排序32 3.4.4 分组查询33 3.4.5 表join34 3.5 其他SQL语句36 3.5.1 INSERT INTO... SELECT语句36 3.5.2 UNION语句36 3.5.3 TRUNCATE TABLE语句37 3.6 小结37 第二篇基础篇 第4章psql工具的使用介绍40 4.1 psql介绍40 4.2 psql的简单使用40 4.3 psql的常用命令42 4.3.1 \d命令42 4.3.2 指定字符集编译的命令45 4.3.3 \pset命令46 4.3.4 \x命令46 4.3.5 执行存储在外部文件中的SQL命令47 4.3.6 显示信息的命令48 4.3.7 更多的命令49 4.4 psql的使用技巧和注意事项50 4.4.1 历史命令与补全的功能50 4.4.2 自动提交方面的技巧50 4.4.3 如何得到psql中命令实际执行的SQL51 4.5 小结53 第5章数据类型54 5.1 类型介绍54 5.1.1 类型的分类54 5.1.2 类型输入与转换55 5.2 布尔类型56 5.2.1 布尔类型解释56 5.2.2 布尔类型的操作符58 5.3 数值类型59 5.3.1 数值类型解释59 5.3.2 整数类型 59 5.3.3 精确的小数类型59 5.3.4 浮点数类型60 5.3.5 序列类型61 5.3.6 货币类型61 5.3.7 数学函数和操作符62 5.4 字符串类型64 5.4.1 类型解释64 5.4.2 字符串函数和操作符65 5.5 二进制数据类型67 5.5.1 二进制数据类型解释67 5.5.2 二进制数据类型转义表示67 5.5.3 二进制数据类型的函数68 5.6 位串类型69 5.6.1 位串类型解释69 5.6.2 位串类型的使用69 5.6.3 位串的操作符及函数70 5.7 日期/时间类型71 5.7.1 日期/时间类型详解71 5.7.2 日期输入72 5.7.3 时间输入73 5.7.4 特殊值75 5.7.5 函数和操作符列表75 5.7.6 时间函数77 5.7.7 extract和date_part函数80 5.8 枚举类型81 5.8.1 枚举类型的使用81 5.8.2 枚举类型的说明82 5.8.3 枚举类型的函数83 5.9 几何类型84 5.9.1 几何类型概况84 5.9.2 几何类型的输入84 5.9.3 几何类型的操作符89 5.9.4 几何类型的函数97 5.10 网络地址类型98 5.10.1 网络地址类型概况98 5.10.2 inet与cidr类型98 5.10.3 macaddr类型101 5.10.4 网络地址类型的操作符101 5.10.5 网络地址类型的函数102 5.11 复合类型103 5.11.1 复合类型的定义103 5.11.2 复合类型的输入104 5.11.3 访问复合类型105 5.11.4 修改复合类型105 5.11.5 复合类型的输入与输出106 5.12 XML类型107 5.12.1 XML类型的输入107 5.12.2 字符集的问题108 5.12.3 XML类型的函数109 5.13 JSON类型114 5.13.1 JSON类型简介115 5.13.2 JSON类型的输入与输出115 5.13.3 JSON类型的操作符116 5.13.4 JSON类型的函数118 5.13.5 JSON类型的索引121 5.14 Range类型125 5.14.1 Range类型简介125 5.14.2 创建Range类型126 5.14.3 Range类型的输入与输出127 5.14.4 Range类型的操作符130 5.14.5 Range类型的函数130 5.14.6 Range类型的索引和约束131 5.15 数组类型132 5.15.1 数组类型的声明132 5.15.2 如何输入数组值133 5.15.3 访问数组135 5.15.4 修改数组137 5.15.5 数组的操作符138 5.15.6 数组的函数139 5.16 伪类型142 5.17 其他类型143 5.17.1 UUID类型143 5.17.2 pg_lsn 类型143 第6章逻辑结构管理145 6.1 数据库逻辑结构介绍145 6.2 数据库基本操作145 6.2.1 创建数据库145 6.2.2 修改数据库146 6.2.3 删除数据库147 6.2.4 常见问题及解答147 6.3 模式148 6.3.1 模式的定义148 6.3.2 模式的使用148 6.3.3 公共模式150 6.3.4 模式的搜索路径150 6.3.5 模式的权限151 6.3.6 模式的移植性151 6.4 表152 6.4.1 创建表152 6.4.2 表的存储属性154 6.4.3 临时表156 6.4.4 默认值158 6.4.5 约束159 6.4.6 修改表163 6.4.7 表继承及分区表167 6.4.8 分区表168 6.5 触发器173 6.5.1 创建触发器173 6.5.2 语句级触发器与行级触发器175 6.5.3 BEFORE触发器与AFTER触发器177 6.5.4 删除触发器178 6.5.5 触发器的行为179 6.5.6 触发器函数中的特殊变量180 6.6 事件触发器180 6.6.1 创建事件触发器183 6.6.2 修改事件触发器186 6.7 表空间186 6.7.1 表空间的定义186 6.7.2 表空间的使用186 6.8 视图187 6.8.1 视图的定义187 6.8.2 创建视图188 6.8.3 可更新视图189 6.9 索引191 6.9.1 索引简介191 6.9.2 索引的分类192 6.9.3 创建索引192 6.9.4 并发创建索引193 6.9.5 修改索引196 6.9.6 删除索引196 6.10 用户及权限管理197 6.10.1 用户和角色197 6.10.2 创建用户和角色198 6.10.3 权限的管理199 6.10.4 函数和触发器的权限202 6.10.5 权限的总结202 6.10.6 权限的示例202 6.11 事务、并发、锁203 6.11.1 ACID203 6.11.2 DDL事务204 6.11.3 事务的使用204 6.11.4 SAVEPOINT205 6.11.5 事务隔离级别206 6.11.6 两阶段提交207 6.11.7 锁机制209 6.11.8 死锁及防范212 6.11.9 表级锁命令LOCK TABLE213 6.11.10 行级锁命令213 6.11.11 锁的查看214 第7章PostgreSQL的核心架构221 7.1 应用程序的访问接口221 7.1.1 访问接口总体图221 7.1.2 不同编辑语言的PostgreSQL驱动介绍222 7.2 进程及内存结构223 7.2.1 进程和内存架构图223 7.2.2 主进程Postmaster224 7.2.3 SysLogger(系统日志)进程224 7.2.4 BgWriter(后台写)进程225 7.2.5 WalWriter(预写式日志写)进程225 7.2.6 PgArch(归档)进程225 7.2.7 AutoVacuum(自动清理)进程225 7.2.8 PgStat(统计数据收集)进程226 7.2.9 共享内存226 7.2.10 本地内存226 7.3 目录结构227 7.3.1 安装目录的结构227 7.3.2 数据目录的结构227 7.3.3 表空间的目录228 第8章服务管理229 8.1 服务的启停和创建229 8.1.1 启停方法229 8.1.2 pg_ctl230 8.1.3 信号234 8.1.4 postgres及单用户模式234 8.2 服务配置介绍235 8.2.1 配置参数235 8.2.2 连接配置项237 8.2.3 内存配置项240 8.2.4 预写式日志的配置项241 8.2.5 错误报告和日志项243 8.3 访问控制配置文件246 8.3.1 pg_hba.conf 文件247 8.3.2 认证方法介绍248 8.3.3 认证方法实战249 8.4 备份和还原249 8.4.1 逻辑备份249 8.4.2 pg_dump命令250 8.4.3 pg_restore命令254 8.4.4 pg_dump和pg_restore使用举例257 8.4.5 物理备份258 8.4.6 使用LVM快照进行热备份259 8.5 常用的管理命令261 8.5.1 查看系统信息的常用命令261 8.5.2 系统维护常用命令267 第三篇提高篇 第9章PostgreSQL中执行计划270 9.1 执行计划的解释270 9.1.1 EXPLAIN命令270 9.1.2 EXPLAIN输出结果解释271 9.1.3 EXPLAIN使用示例272 9.1.4 全表扫描275 9.1.5 索引扫描275 9.1.6 位图扫描275 9.1.7 条件过滤276 9.1.8 Nestloop Join277 9.1.9 Hash Join277 9.1.10 Merge Join278 9.2 与执行计划相关的配置项279 9.2.1 ENABLE_*参数 279 9.2.2 COST基准值参数279 9.2.3 基因查询优化的参数280 9.2.4 其他执行计划配置项281 9.3 统计信息的收集282 9.3.1 统计信息收集器的配置项282 9.3.2 SQL执行的统计信息输出283 9.3.3 手工收集统计信息283 第10章PostgreSQL中的技术内幕285 10.1 表中的系统字段285 10.1.1 oid286 10.1.2 ctid288 10.1.3 xmin、xmax、cmin、cmax289 10.2 多版本并发控制290 10.2.1 多版本并发控制的原理290 10.2.2 PostgreSQL中的多版本并发控制291 10.2.3 PostgreSQL多版本的优劣分析293 10.3 物理存储结构293 10.3.1 PostgreSQL中的术语293 10.3.2 数据块结构293 10.3.3 Tuple结构294 10.3.4 数据块空闲空间管理296 10.3.5 可见性映射表文件298 10.4 技术解密298 10.4.1 Index-only scans298 10.4.2 Heap-Only Tuples300 第11章PostgreSQL的特色功能302 11.1 规则系统302 11.1.1 SELECT规则302 11.1.2 更新规则303 11.1.3 规则和权限306 11.1.4 规则和命令状态307 11.1.5 规则与触发器的比较308 11.2 模式匹配和正则表达式308 11.2.1 PostgreSQL中的模式匹配和正则表达式介绍308 11.2.2 传统SQL的LIKE 操作符309 11.2.3 SIMILAR TO 正则表达式310 11.2.4 POSIX 正则表达式312 11.2.5 模式匹配函数 substring313 11.3 listen与notify315 11.3.1 listen与notify的简单示例315 11.3.2listen与notify的相关命令316 11.3.3 listen与notify的使用详解317 11.4 索引的特色320 11.4.1 表达式上的索引320 11.4.2 部分索引320 11.4.3 GiST索引323 11.4.4 SP-GiST索引325 11.4.5 GIN索引326 11.5 序列的使用328 11.5.1 序列的创建328 11.5.2 序列的使用及相关的函数329 11.5.3 常见问题及解答331 11.6 咨询锁的使用333 11.6.1 咨询锁的定义333 11.6.2 咨询锁的函数及使用333 11.6.3 常见问题及解答337 11.7 SQL/MED338 11.7.1 SQL/MED的介绍338 11.7.2 外部数据包装器对象339 11.7.3 外部服务器对象340 11.7.4 用户映射对象341 11.7.5 外部表对象341 11.7.6 file_fdw使用实例342 11.7.7 postgres_fdw使用实例345 第12章数据库优化347 12.1 优化准则和方法347 12.1.1 优化准则347 12.1.2 优化方法348 12.2 硬件知识348 12.2.1 CPU及服务器体系结构348 12.2.2 内存349 12.2.3 硬盘350 12.3 文件系统及I/O调优352 12.3.1 文件系统的崩溃恢复352 12.3.2 Ext2文件系统353 12.3.3 Ext3文件系统353 12.3.4 Ext4文件系统354 12.3.5 XFS文件系统355 12.3.6 Barriers I/O355 12.3.7 I/O调优的方法356 12.4 性能监控359 12.4.1 数据库性能视图359 12.4.2 Linux监控工具362 12.5数据库配置优化364 12.5.1内存配置优化364 12.5.2 关于双缓存的优化366 12.5.3 vacuum中的优化367 12.5.4 预写式日志写优化369 第13章Standby数据库的搭建371 13.1 Standby数据库原理371 13.1.1PITR原理371 13.1.2WAL日志归档372 13.1.3流复制372 13.1.4Standby的运行原理373 13.1.5 创建Standby的步骤373 13.2 pg_basebackup命令行工具374 13.2.1 pg_basebackup介绍374 13.2.2 pg_basebackup的命令行参数375 13.2.3 pg_basebackup使用示例376 13.3 异步流复制Hot Standby的示例377 13.3.1 配置环境377 13.3.2 主数据库的配置378 13.3.3 在Standby上生成基础备份378 13.3.4 启动Standby379 13.4 同步流复制的Standby数据库380 13.4.1 同步流复制的架构380 13.4.2 同步复制的配置381 13.4.3 配置实例381 13.5 检查备库及流复制情况383 13.5.1 检查异步流复制的情况383 13.5.2 检查同步流复制的情况384 13.5.3 视图pg_stat_replication详解385 13.5.4 查看备库的状态385 13.6 Hot Standby的限制387 13.6.1 Hot Standby的查询限制387 13.6.2 Hot Standby的查询冲突处理389 13.7 恢复配置详解390 13.7.1 归档恢复配置的配置项390 13.7.2 Recovery Target配置391 13.7.3 Standby Server配置 391 13.8 流复制的注意事项392 13.8.1 wal_keep_segments参数的配置392 13.8.2 vacuum_defer_cleanup_age参数的配置392 第四篇第三方开源软件及架构篇 第14章PgBouncer394 14.1 PgBouncer 介绍394 14.2 PgBouncer中的概念395 14.3 PgBouncer的安装方法395 14.4 PgBouncer的简单使用395 14.5 PgBouncer的配置文件详解399 第15章Slony-I的使用404 15.1Slony-I中的概念404 15.2 Slony-I复制的限制405 15.3 在Windows下使用pgAdminIII安装配置Slony-I406 15.4在Linux下安装配置Slony-I419 第16章Bucardo的使用426 16.1Bucardo中的概念426 16.2Bucardo的安装方法427 16.3Bucardo同步配置429 16.4Bucardo的日常维护434 第17章PL/Proxy的使用436 17.1PL/Proxy中的概念436 17.2PL/Proxy安装及配置438 17.3PL/Proxy的集群配置详解443 17.4PL/Proxy语言详解446 17.5PL/Proxy的一个高可用方案448 17.5.3具体实施步骤449 第18章pgpool-II的使用458 18.1 pgpool-II中的概念458 18.2 pgpool-II安装方法462 18.3 pgpool-II配置快速入门463 18.4 pgpool-II高可用配置方法471 18.5 pgpool-II的总结492 第19章Postgres-XC的使用493 19.1 Postgres-XC中的概念493 19.2 Postgres-XC的安装495 19.3 配置Postgres-XC集群497 19.4 Postgres-XC的使用503 第20章高可用性方案设计516 20.1 高可用架构基础516 20.2 基于共享存储的高可用方案517 20.3 WAL日志同步或流复制同步的方案519 20.4 基于触发器的同步方案520 20.5 基于语句中间件的高可用方案520
1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必下载pdf阅读器
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
同类热门
类似软件
XlsToPG(Excel导入PostgreSQL工具)5.82M102人在用 XlsToPG官方版是一款Excel导入PostgreSQL工具。该软件可以把数据库用户把Excel数据导入到PostgreSQL数据库,而且它的外形简单小巧,对数据库无损伤,运行快速,轻松添加导入。不仅如此,该软件还支持批量操作,您不需要再去使用
查看postgresql中文学习手册4.51M192人在用postgresql 手册是一款全中文界面的软件学习手册,pdf格式,并且是高清版,还附带了相应的pdf阅读器,即下即看。全书讲述了postgresql的数据表、事物隔离、数据库维护、系统表、系统视图、客户端命令、sql语言函数、pl/pgsql过程语言
查看热门标签
网友评论2人参与,2条评论
最新排行
不上班的23种活法pdf版6.47M 不上班的23种活法是一款介绍各种各样的自由职业的图书,作者唐华山,由北京出版社发行。全书为广大网友提供23种活法供参考,选取了自由职业中最具普遍意义的23个方向,并对其进行了具体分析和阐述,包括职业综述、必备素养、现身说法、经验分享、测试、相关链接
查看深入理解计算机系统原书第2版pdf115.32M 工作中有的朋友碰到一些计算机问题可以很快很轻松的解决,有的朋友就算问百度也解决不了,为什么呢,原因是对操作系统没有一个很好的认识。在此小编向广大网友推荐阅读深入理解计算机系统第二版pdf,并且是原书第2版,pdf格式的,该书主要内容是关于计算机体系
查看精通 asp.net mvc 591.3MAdam Freeman pdf扫描版asp.net mvc 5框架是微软ASP.NET Web平台的新进展,它提供了高生产率的编程模型,结合ASP.NET的全部优势,使代码架构更整洁,可进行测试驱动开发,并使程序有强大的可扩展性。但如何才能更好的学习和入门呢?这里小编推荐大家阅读精通 as
查看ASP.NET开发实例大全(基础卷)313.29Mpdf扫描版 ASP.NET开发实例大全(基础卷)是一本ASP.NET开发指导手册,由软件开发技术联盟编著。本书筛选、汇集了ASP.NET开发从基础知识到高级应用各个层面约600个实例及源代码,每个实例都按实例说明、关键技术、设计过程、详尽注释、秘笈心法的顺序进
查看嵌入式linux应用开发完全手册110.85M韦东山pdf扫描版嵌入式linux在嵌入式领域发展迅速,需求旺盛,但是入门却很难,初学者多是自己学习,效率不高,为此小编带来了嵌入式linux应用开发完全手册,这是一本嵌入式linux系统应用开发手册,由韦东山编著。本书以S3C2410、S3C2440开发板为例,从分析硬
查看C/C++软件工程师就业求职手册49.34M胡凌云pdf扫描版 C/C++软件工程师就业求职手册是一本C和C++语言的工程师就业求职指南,由胡凌云编著。本书涵盖C/C++面试中出现的各个知识点,包括C语言编程基础、C++面向对象、算法、数据结构、STL等。所有知识点都结合例题进行说明,每道例题都取材于各大公司的
查看java web整合开发王者归来308.04M刘京华pdf扫描版java web整合开发王者归来是一本备受推崇的Java Web开发经典图书,由刘京华等人编著。本书内容丰富翔实,详细的讲解了包括Sring、Struts、Hibemate、Webword、web service、EJB3、JPA、SSH组合在内的许多主
查看unity 3d游戏开发27.1M宣雨松pdf扫描版 unity 3d游戏开发是一本Unity 3D游戏开发入门书籍,由宣雨松编著。本书从初学者入门角度讲解了Unity游戏开发,让读者快速学会了如何使用Unity制作3D游戏,如何以两种语言去讲解游戏脚本的编写,在入门阶段我们使用JavaScript语
查看maven实战 高清 完整版34.83M许晓斌pdf扫描版maven实战是国内公认Maven专家许晓斌执笔编著的一本Maven实战手册。本书内容丰富翔实,详细的讲解了Maven 3.0的新特性,并与其将Maven2.0做比较,让读者可以非常快速的了解并掌握Maven 3.0。全书详细讲解了坐标和依赖、Maven
查看
第2楼 江苏省苏州市电信 网友
第1楼 台湾省台北市台固媒体股份有限公司(台湾大宽频)BGP节点 网友