欢迎光临
免费的PDF电子书下载网站

PostgreSQL 9 Administration Cookbook (第2版)中文版 PDF下载

编辑推荐

PostgreSQL是一款功能丰富的、支持大量平台的高级数据库服务软件,而本书是一本能帮你快速成长为一名合格的PostgreSQL DBA的经典管理书籍。

本书的作者是PostgreSQL的主要开发人员,译者是PostgreSQL中国社区和中国用户会的核心成员。

本书前6章介绍了PostgreSQL基础,后6章由浅入深地介绍了PostgreSQL日常维护技巧、性能分析、备份恢复和重量级的复制技术。是一本不可多得的管理类书籍。

 ;

内容简介

 ; ; ; 本书提供了在线生产环境的PostgreSQL数据库的常见问题和故障快速解答,这些都基于作者作为PostgreSQL数据库培训师、用户和核心开发人员时的经验积累。每个技术都被拆分为小的方法或建议,先给出包含可工作代码的演示解决方案,然后解释这样做的原因及工作原理。本书意在成为新用户和技术专家的桌面参考手册。本书涵盖了PostgreSQL 9 所有的新功能。

作者简介

 ; ; ; Simon Riggs 是2ndQuadrant 的CTO,PostgreSQL 社区活跃的代码提交者。作为PostgreSQL 的主要开发人员,他为PostgreSQL 的贡献超过十年时间,期间,他为每个发行版本都设计开发了很多新功能。他擅长的领域包括复制、性能调优、商业智能、管理和安全。在他的领导下,2ndQuadrant 现在已经成为开源PostgreSQL 的领导开发者和PostgreSQL 项目的白金赞助商,并广泛服务于欧美、亚太、中东和非洲地区成百上千的用户。
Simon 在很多交流会上都是活跃的发言者,并因在PostgreSQL 功能和复制方面的发言而被广泛知晓。作为多种数据库的开发工程师、架构师、数据分析师和系统设计师,他在近三十年间为遍布欧美的公司提供过服务。
Gianni Ciolli 是2ndQuadrant 意大利分公司的首席咨询师,从2008 年开始就从事开发、咨询和培训工作。他在欧洲和海外的PostgreSQL 峰会中都有发言,他还擅长于函数语言和符号计算(Symbolic Computing)等IT 技能。
Gianni 拥有数学博士学位,并在代数几何、理论物理和形式证明理论方面发表过研究报告。他之前在佛罗伦萨大学任教师和研究员。
Gianni 在自由软件和开源软件领域工作了近二十年。在2001 到2004 年期间,他是PLUG(Prato Linux User Group)公司的联合创始人和总裁。他曾多次组织意大利的PostgreSQL 交流大会,在2013 年,他获选加入ITPUG(Italian PostgreSQL Users Group)董事会。
现在,他和他的儿子居住在伦敦。他兴趣广泛,主要包括音乐、戏剧、诗歌,尤其喜欢体育竞技,他还参加过全能竞赛。
Hannu Krosing 是2ndQuadrant 的首席咨询师以及Ambient Sound Investments 的技术顾问。作为Skype 公司的最初数据库架构师,他负责设计了用于复制和扩展技术的SkyTools套件,为PostgreSQL 项目工作和贡献十二余年。
Gabriele Bartolini 是一个资深开源开发人员,2ndQuadrant 首席咨询师, 国际PostgreSQL 社区的活跃成员。
Gabriele 拥有佛罗伦萨大学的统计学学位。他擅长于数据挖掘和数据仓库,在澳大利亚和意大利从事过网页流量分析工作。
他现在居住于普拉托(Prato),一个位于意大利托斯卡纳(Tuscany)地区北部的小而充满活力的城市。他的另一个家位于澳大利亚的墨尔本,他在那里的莫纳什大学学习,并在那里的信息通信行业工作。
Gabriele 的兴趣包括演奏他的Fender Stratocaster 电吉他,以及踢卡尔乔(calcio)足球联赛。

PostgreSQL 9 Administration Cookbook (第2版)中文版 PDF下载

目录

目录
第1章 迈出第一步...................................................................................................................1
1.1 介绍 ..................................................................................................................................1
1.2 获取PostgreSQL ..............................................................................................................7
1.3 连接到PostgreSQL服务 ..................................................................................................8
1.4 启用网络/远程用户访问 ............................................................................................... 11
1.5 使用图形化管理工具 ....................................................................................................12
1.6 使用 psql 查询和脚本工具 ...........................................................................................16
1.7 安全地修改你的密码 ....................................................................................................19
1.8 避免硬编码你的密码 ....................................................................................................20
1.9 使用连接服务文件 ........................................................................................................22
1.10 连接失败故障排除 ......................................................................................................23
第2章 浏览数据库.................................................................................................................25
2.1 介绍 ................................................................................................................................25
2.2 当前服务程序的版本号是多少 ....................................................................................26
2.3 服务程序运行时间是多少? ........................................................................................27
2.4 定位数据库服务的数据文件 ........................................................................................28
2.5 定位数据库服务的日志文件 ........................................................................................31
2.6 定位数据库的系统标识 ................................................................................................33
2.7 列出数据库服务中的数据库 ........................................................................................35
2.8 数据库中有多少张表 ....................................................................................................38
2.9 一个数据库占用了多少磁盘空间 ................................................................................40
PostgreSQL 9 Administration Cookbook(第2版)中文版
XX
2.10 一张表占用了多少磁盘空间 ......................................................................................41
2.11 哪张表是最大的表 ......................................................................................................42
2.12 表里有多少行记录 ......................................................................................................43
2.13 快速估算表里的记录总数 ..........................................................................................44
2.14 列出数据库中的扩展模块 ..........................................................................................48
2.15 理解对象的依赖关系 ..................................................................................................49
第3章 配置............................................................................................................................ 52
3.1 介绍 ................................................................................................................................52
3.2 阅读手册(RTFM) .....................................................................................................53
3.3 规划一个新数据库 ........................................................................................................54
3.4 在程序中更改参数 ........................................................................................................55
3.5 查看当前的配置参数 ....................................................................................................57
3.6 哪些参数为非默认设置 ................................................................................................58
3.7 更新参数文件 .........................

媒体评论

前沿

前言
PostgreSQL 是一款支持大量平台的高级SQL 数据库服务软件,并快速成为世界上最流行
的服务端数据库之一,尤其是在性能、稳定性以及丰富功能方面享誉盛名。PostgreSQL 是历史
非常悠久的开源数据库之一,完全免费使用,由一个非常多元化的全球性社区开发。总之,它
就是一个很酷的东西!
PostgreSQL 最明显的一个好处是,它是开源的,也就是说,你拥有一个非常宽松的许可
证来安装、使用以及发布PostgreSQL,而不需要付给任何人任何费用或版税。另外,众所周知,
PostgreSQL 是能长时间稳定运行的数据库,而且在很多情况下只需要少量维护甚至不需要维护。
总之,PostgreSQL 的保有成本很低。
《PostgreSQL 9 Administration Cookbook( 第2 版)》提供了管理你的在线生产环境的
PostgreSQL 数据库所需要的信息。本书包含的一些见解直接来自于PostgreSQL 复制和恢复
功能的主要作者,以及来自最成功的创业公司Skype 的使用PostgreSQL 数据库的架构师。这
本最实际的指南将帮助开发人员操作在线数据库,以及通过任何开发框架使用Java、Python、
Ruby 以及.Net 支撑Web 或者企业软件应用。《PostgreSQL 9 Administration Cookbook(第2 版)》
在手,数据库管理工作万事不愁。
本实用指南为你的常见问题和故障提供快速解答,这些都基于作者作为PostgreSQL 数据
库培训师、用户和核心开发人员的经验积累。
每个技术方面都被拆分为小的方法或建议,先给出包含可工作代码的演示解决方案,然后
解释这样做的原因及工作原理。本书意在成为新用户和技术专家的桌面参考手册。
本书涵盖了PostgreSQL 9 所有的新功能。很快,你将能轻松自如地运行数据库了。
本书包含哪些内容
第1 章,迈出第一步。包含的主题有介绍PostgreSQL 9,下载及安装,连接到PostgreSQL
PostgreSQL 9 Administration Cookbook(第2版)中文版
XIV
服务,为网络/ 远程用户启用服务,使用图形化管理工具,使用psql 这个查询及脚本工具,安
全地修改你的密码,避免硬编码你的密码,使用连接服务文件,以及在连接失败时进行排错。
第2 章,浏览数据库。帮助你获得你正在使用的数据库服务版本以及服务时长。本章帮
助你定位数据库服务的文件,数据库服务的消息日志,以及数据库的系统标识符。这里还为你
展示如何列出数据库服务中的数据库,并提供一些方法,让你知道数据库中表的数量,数据库
和表占用的磁盘空间,以及谁是最大的表,表中有多少行,如何估计表中的行数,以及如何理
解对象的依赖关系。
第3 章,配置。包含的主题包括阅读手册(RTFM,Read The Fine Manual),规划一个新
数据库,在你的程序中更改参数,查看当前的配置参数,非默认的参数,更新参数文件,为特
定用户组设置参数,基本服务配置清单,以及添加一个外部模块到PostgreSQL 服务中。
第4 章,服务控制。主要内容包括手动启动数据库服务,快速安全地停止服务,紧急情
况下停止服务,重新加载服务配置文件,快速重启服务,拒绝新连接,限制用户只用一个会话,
以及强制用户从系统中退出。这里包含一些方法,用于帮助你确定你的多租户系统设计。你可
以学习如何使用多模式(schema),给用户他们自己的私有数据库,在一个系统中运行多个数
据库服务,以及建立连接池。
第5 章,表和数据。引导你贯穿数据库设计的整个过程,包括选择恰当的数据库对象名,
处理使用引号引用的名称的对象,确保列(指在不同表中相同意义的列)的名称和定义相同,
标记和删除重复数据,避免重复的行,为一组数据找到唯一键,生成测试数据,随机采样数据,
从电子表格中导入数据,以及从扁平文件(txt、csv 一类的文件)中导入数据。
第6 章,安全。提供的方法包括撤销用户对表的访问权限,赋予用户对表的访问,建立
一个新用户,临时避免用户连接,删除用户而不删除其数据,检查是否所有的用户都使用安全
的密码,给指定用户受限的超级用户权限,审计DDL 变化,审计数据变化,与LDAP 集成,
使用SSL 进行连接,以及加密敏感数据。
第7 章,数据库管理。涵盖很多有用的方法,包括写一个要么全部执行成功要么全部失
败的脚本,编写一个psql 脚本,一遇到错误就退出,在多张表上执行操作,添加/ 删除表上的
列,更改列的数据类型,添加/ 删除模式,在不同模式之间移动对象,添加/ 删除表空间,在
不同表空间之间移动对象,访问其他 PostgreSQL 数据库中的对象,并使视图可更新。
第8 章,监控和诊断。提供用于回答一些问题的方法,例如:“某个用户是否已经连接上
来?他们在运行什么?他们正在运行还是被阻塞了?是谁阻塞了他们?有人在使用某张表吗?
最后一次使用它是什么时候?临时数据使用了多少磁盘空间?为什么我的查询变慢了?”。它
还帮助你调查和报告bug,生成每日的日志文件错误信息摘要,杀掉一个指定的会话,以及处
理未决的准备事务。
第9 章,日常维护。包含一些有用的方法,包括控制自动数据库维护,避免自动冻结和
前言
XV
页损坏,避免事务重叠,移除过期的准备事务(prepared transactions),对于大量使用临时表时
需要的操作,识别和修复膨胀的表和索引,维护索引,寻找未使用的索引,谨慎删除不需要的
索引以及规划维护。
第10 章,性能和并发。包含的主题包括发现执行缓慢的SQL 语句,从pg_stat* 视图收集
常规统计信息,研究是什么让SQL 变得缓慢,减少返回的行数,简化复杂的 SQL,提高查询
速度而无须重写它,找出为什么某个查询不使用索引,强制让一个查询使用一个索引,使用乐
观锁并报告性能问题。
第11 章,备份及恢复。提供非常有用的用于备份和恢复你的PostgreSQL 数据库的信息,
包括理解和控制崩溃恢复,计划备份,对一个数据库进行热逻辑备份,对所有数据库进行热逻
辑备份,对一个表空间中的所有表进行热逻辑备份,备份数据库对象的定义,独立的数据库热
物理备份,热物理备份和持续归档。它还包括以下主题:恢复所有的数据库,恢复到一个时间
点,恢复一个被删除/ 损坏的表、数据库或表空间,为备份/ 恢复提速,增量/ 差异备份和恢复。
第12 章,复制和升级。涵盖复制最佳实践,建立基于文件的复制和流复制,流复制安全设置,
热备机及读可扩展性,管理流复制,使用repmgr,使用复制槽位,监控复制,性能和同步复制,
延迟、暂停和同步复制,逻辑复制,双向复制(Bi-Directional Replication),归档事务日志数据,
升级到一个新的小版本,主版本原地升级和在线升级。
你需要为本书准备什么
你需要为本书准备以下软件:
? PostgreSQL 9.4 服务端软件
? psql客户端工具(9.4 自带)
? pgAdmin3 1.20
这本书的读者对象是谁
本书为系统管理员、数据库管理员、架构师、开发人员以及任何对其开始感兴趣并计划使
用、或已经在运行,甚至已经用于在线生产的人员而准备。本书特别适用于有一些技术经验
的人。
小节
在本书中,你会发现有几个标题会经常出现(准备,该如何做,如何实现的,更多内容以
及参考)。
为明确给出某个技术建议该怎么做,我们使用了以下小节。
PostgreSQL 9 Administration Cookbook(第2版)中文版
XVI
准备
这部分将告诉你你期待的技术建议会是什么样的,以及描述如何设置软件或任何其他本建
议需要的初步设置。
该如何做……
这部分包含本技术建议需要进行的步骤。
如何实现的……
本节通常包含前一节发生的内容的详细解释。
更多内容……
本节包含一些关于本技术建议的附加信息,让你能深入理解本建议。
参考
本节提供一些有用的链接或者其他有用的信息。
约定
在本书中,你会发现很多文本样式,用以区分不同类型的信息。以下是一些样式的示例以
及对它们的解释。
文本的代码单词、数据库表名、目录名、文件名、文件扩展名、路径名、假设的
URL、用户输入以及Twitter 的句柄通常以以下方式显示:“The service can also be set using an
environment variable named PGSERVICE.”
代码段的格式为:
[dbservice1]
host=postgres1
port=5432
dbname=postgres
当我们想提醒你注意一个代码段的特定部分时,相关的行或项目会被设置为粗体:
Database system identifier: 5805760367713220187
Database cluster state: in production
命令行的输入和输出通常是这样的:
$ psql -c “SELECT current_time”
新的术语和重要的词语会以粗体显示。例如,你在屏幕上的菜单或对话框中看到的某些文
前言
XVII
字,会以以下方式出现:“确保Guru Hints 选项已开启。”
警告或重要注释会出现在这样一个框中。
提示或技巧会是这样。
用户反馈
非常欢迎读者的反馈。这可以让我们了解你对本书的看法—哪些你喜欢,哪些你不喜欢。
读者的反馈可以帮助我们调整内容,从而使读者能够获得更多收益。
准备发送给我们的一般的反馈,只需发送电子邮件到feedback@packtpub.com,并在邮件
内容中指出书名即可。
如果你在某个方面有所专长,并且你有兴趣写书或者为一本书贡献内容,请阅读我们的作
者向导:www.packtpub.com/authors
客户支持
现在,你可以自豪

免费在线读

PostgreSQL 9 Administration Cookbook (第2版)中文版 pdf下载声明

本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版

pdf下载地址

版权归出版社和作者所有,下载链接已删除。如果喜欢,请购买正版!

链接地址:PostgreSQL 9 Administration Cookbook (第2版)中文版