PostgreSQL 9X之巅(原书第2版)

PostgreSQL 9X之巅(原书第2版)
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
2018-05
版次: 1
ISBN: 9787111596196
定价: 89.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 331页
15人买过
  • 本书从操作系统到数据库实现的多个层面,讲解了PostgreSQL数据库进行常规性能调优的各个场景。无论对于从其他数据库转战PostgreSQL的DBA还是使用过PostgreSQL一段时间的DBA,它都是一本不可多得的参考资料。 Contents?目  录 

    赞誉 

    推荐序 

    译者序 

    译者简介 

    中文版序 

    关于作者 

    关于审校者 

    前言 

    第1章 PostgreSQL版本 1 

    1.1 PostgreSQL历代版本的性能 2 

    1.1.1 选择要部署的版本 3 

    1.1.2 升级到一个新的主版本 3 

    1.2 选择PostgreSQL还是其他数据库 4 

    1.3 PostgreSQL工具 5 

    1.3.1 PostgreSQL contrib 5 

    1.3.2 pgFoundry 8 

    1.3.3 其他PostgreSQL相关软件 8 

    1.4 PostgreSQL应用程序的扩展生命周期 8 

    1.5 在实践中做性能优化 9 

    1.6 小结 10 

    第2章 数据库硬件 11 

    2.1 平衡硬件支出 11 

    2.1.1 CPU 11 

    2.1.2 内存 13 

    2.1.3 磁盘 13 

    2.1.4 磁盘控制器 17 

    2.2 可靠的控制器及磁盘安装 21 

    2.2.1 驱动器可靠性研究 21 

    2.2.2 回写缓存 22 

    2.2.3 直写式缓存的性能影响 25 

    2.3 小结 25 

    第3章 数据库硬件的基准评测 27 

    3.1 CPU和内存基准评测 27 

    3.1.1 Memtest86+ 28 

    3.1.2 STREAM内存测试 28 

    3.1.3 CPU基准评测 29 

    3.1.4 内存及处理器速度慢的根源 31 

    3.2 物理磁盘的性能 32 

    3.2.1 随机存取和IOPS 32 

    3.2.2 顺序存取和ZCAV 33 

    3.2.3 提交率 34 

    3.3 硬盘基准评测工具 34 

    3.3.1 使用HD Tune进行硬盘基准评测 35 

    3.3.2 磁盘顺序读写吞吐量 38 

    3.3.3 Bonnie++ 38 

    3.3.4 sysbench 42 

    3.3.5 寻道速率 43 

    3.3.6 复杂磁盘基准评测 45 

    3.4 样品磁盘测试结果 45 

    3.5 小结 48 

    第4章 磁盘设置 50 

    4.1 文件系统最大值 50 

    4.2 文件系统的崩溃恢复 51 

    4.3 Linux文件系统 52 

    4.3.1 ext2 52 

    4.3.2 ext3 53 

    4.3.3 ext4 54 

    4.3.4 XFS 55 

    4.3.5 其他Linux文件系统 56 

    4.3.6 写入屏障 56 

    4.3.7 常规Linux文件系统调优 58 

    4.4 Solaris与FreeBSD文件系统 62 

    4.4.1 Solaris UFS 62 

    4.4.2 FreeBSD UFS2 64 

    4.4.3 ZFS 64 

    4.4.4 FAT32 66 

    4.4.5 NTFS 66 

    4.5 PostgreSQL的磁盘布局 67 

    4.5.1 符号链接 67 

    4.5.2 表空间 67 

    4.5.3 数据库目录树 68 

    4.5.4 磁盘阵列、RAID和磁盘布局 69 

    4.6 小结 71 

    第5章 数据库缓存内存 72 

    5.1 postgresql.conf中的内存单位 72 

    5.2 增加UNIX共享内存参数以增大共享内存块 73 

    5.2.1 内核信号量 74 

    5.2.2 估算共享内存块的分配 75 

    5.2.3 检查数据库缓存 76 

    5.2.4 在数据库中安装pg_buffercache模块 76 

    5.2.5 数据库磁盘布局 77 

    5.2.6 在数据库中创建新块 80 

    5.2.7 写脏块到磁盘 80 

    5.3 崩溃恢复和缓冲区缓存 81 

    5.3.1 检查点处理基础 81 

    5.3.2 预写日志和恢复处理 81 

    5.3.3 检查点的时间选择 82 

    5.3.4 数据库块的生命周期 84 

    5.4 数据库缓存与操作系统缓存对比 85 

    5.4.1 双重缓存数据 85 

    5.4.2 检查点开销 86 

    5.4.3 起始大小指导 86 

    5.5 分析缓存内容 87 

    5.5.1 检查缓冲区缓存查询 88 

    5.5.2 使用缓冲区缓存检查来调整反馈 91 

    5.6 小结 92 

    第6章 服务器配置调优 93 

    6.1 与实时配置交互 93 

    6.1.1 默认值和重置值 94 

    6.1.2 允许更改的上下文信息 94 

    6.1.3 重新加载配置文件 95 

    6.1.4 数据库连接 97 

    6.1.5 共享内存 98 

    6.1.6 日志记录 98 

    6.1.7 Vacuuming和统计 100 

    6.1.8 检查点 101 

    6.1.9 PITR和WAL复制 103 

    6.1.10 调整以防患于未然 106 

    6.2 小结 109 

    第7章 日常维护 110 

    7.1 事务可见性与多版本并发控制 110 

    7.1.1 可见性的内部计算 111 

    7.1.2 更新 111 

    7.1.3 行锁的冲突 113 

    7.1.4 删除操作 114 

    7.1.5 MVCC的优点 115 

    7.1.6 MVCC的缺点 115 

    7.1.7 事务ID重叠 116 

    7.2 vacuum 117 

    7.2.1 vacuum实现 117 

    7.2.2 基于开销的vacuum 119 

    7.2.3 autovacuum 120 

    7.2.4 vacuum和autovacuum的常见问题 123 

    7.3 自动分析 126 

    7.4 索引膨胀 127 

    7.4.1 测定索引膨胀 127 

    7.4.2 修复索引膨胀 128 

    7.5 转储和恢复 129 

    7.6 清空数据库/表 129 

    7.7 CLUSTER命令 129 

    7.8 重建索引 130 

    7.9 详细数据和索引页的监控 131 

    7.10 监控查询日志 131 

    7.10.1 基本的PostgreSQL日志设置 131 

    7.10.2 对棘手的查询进行日志记录 134 

    7.10.3 日志文件分析 136 

    7.11 小结 140 

    第8章 数据库基准评测 141 

    8.1 pgbench默认测试 141 

    8.1.1 表的定义 141 

    8.1.2 规模检测 143 

    8.1.3 查询脚本定义 143 

    8.1.4 为pgbench配置数据库服务器 145 

    8.2 使用pgbench-tools图形化输出结果 147 

    8.3 pgbench测试结果样例 148 

    8.3.1 只读测试 148 

    8.3.2 类TPC-B测试(读、写) 149 

    8.3.3 延迟分析 150 

    8.4 导致不良结果以及变化的缘由 152 

    8.4.1 PostgreSQL开发人员模式 153 

    8.4.2 worker线程和pgbench程序的限制 154 

    8.5 自定义pgbench测试 154 

    8.6 TPC基准评测 155 

    8.7 小结 156 

    第9章 数据库索引 157 

    9.1 索引例子详解 158 

    9.1.1 测量查询的磁盘和索引块统计信息 158 

    9.1.2 运行例子 159 

    9
  • 内容简介:
    本书从操作系统到数据库实现的多个层面,讲解了PostgreSQL数据库进行常规性能调优的各个场景。无论对于从其他数据库转战PostgreSQL的DBA还是使用过PostgreSQL一段时间的DBA,它都是一本不可多得的参考资料。
  • 目录:
    Contents?目  录 

    赞誉 

    推荐序 

    译者序 

    译者简介 

    中文版序 

    关于作者 

    关于审校者 

    前言 

    第1章 PostgreSQL版本 1 

    1.1 PostgreSQL历代版本的性能 2 

    1.1.1 选择要部署的版本 3 

    1.1.2 升级到一个新的主版本 3 

    1.2 选择PostgreSQL还是其他数据库 4 

    1.3 PostgreSQL工具 5 

    1.3.1 PostgreSQL contrib 5 

    1.3.2 pgFoundry 8 

    1.3.3 其他PostgreSQL相关软件 8 

    1.4 PostgreSQL应用程序的扩展生命周期 8 

    1.5 在实践中做性能优化 9 

    1.6 小结 10 

    第2章 数据库硬件 11 

    2.1 平衡硬件支出 11 

    2.1.1 CPU 11 

    2.1.2 内存 13 

    2.1.3 磁盘 13 

    2.1.4 磁盘控制器 17 

    2.2 可靠的控制器及磁盘安装 21 

    2.2.1 驱动器可靠性研究 21 

    2.2.2 回写缓存 22 

    2.2.3 直写式缓存的性能影响 25 

    2.3 小结 25 

    第3章 数据库硬件的基准评测 27 

    3.1 CPU和内存基准评测 27 

    3.1.1 Memtest86+ 28 

    3.1.2 STREAM内存测试 28 

    3.1.3 CPU基准评测 29 

    3.1.4 内存及处理器速度慢的根源 31 

    3.2 物理磁盘的性能 32 

    3.2.1 随机存取和IOPS 32 

    3.2.2 顺序存取和ZCAV 33 

    3.2.3 提交率 34 

    3.3 硬盘基准评测工具 34 

    3.3.1 使用HD Tune进行硬盘基准评测 35 

    3.3.2 磁盘顺序读写吞吐量 38 

    3.3.3 Bonnie++ 38 

    3.3.4 sysbench 42 

    3.3.5 寻道速率 43 

    3.3.6 复杂磁盘基准评测 45 

    3.4 样品磁盘测试结果 45 

    3.5 小结 48 

    第4章 磁盘设置 50 

    4.1 文件系统最大值 50 

    4.2 文件系统的崩溃恢复 51 

    4.3 Linux文件系统 52 

    4.3.1 ext2 52 

    4.3.2 ext3 53 

    4.3.3 ext4 54 

    4.3.4 XFS 55 

    4.3.5 其他Linux文件系统 56 

    4.3.6 写入屏障 56 

    4.3.7 常规Linux文件系统调优 58 

    4.4 Solaris与FreeBSD文件系统 62 

    4.4.1 Solaris UFS 62 

    4.4.2 FreeBSD UFS2 64 

    4.4.3 ZFS 64 

    4.4.4 FAT32 66 

    4.4.5 NTFS 66 

    4.5 PostgreSQL的磁盘布局 67 

    4.5.1 符号链接 67 

    4.5.2 表空间 67 

    4.5.3 数据库目录树 68 

    4.5.4 磁盘阵列、RAID和磁盘布局 69 

    4.6 小结 71 

    第5章 数据库缓存内存 72 

    5.1 postgresql.conf中的内存单位 72 

    5.2 增加UNIX共享内存参数以增大共享内存块 73 

    5.2.1 内核信号量 74 

    5.2.2 估算共享内存块的分配 75 

    5.2.3 检查数据库缓存 76 

    5.2.4 在数据库中安装pg_buffercache模块 76 

    5.2.5 数据库磁盘布局 77 

    5.2.6 在数据库中创建新块 80 

    5.2.7 写脏块到磁盘 80 

    5.3 崩溃恢复和缓冲区缓存 81 

    5.3.1 检查点处理基础 81 

    5.3.2 预写日志和恢复处理 81 

    5.3.3 检查点的时间选择 82 

    5.3.4 数据库块的生命周期 84 

    5.4 数据库缓存与操作系统缓存对比 85 

    5.4.1 双重缓存数据 85 

    5.4.2 检查点开销 86 

    5.4.3 起始大小指导 86 

    5.5 分析缓存内容 87 

    5.5.1 检查缓冲区缓存查询 88 

    5.5.2 使用缓冲区缓存检查来调整反馈 91 

    5.6 小结 92 

    第6章 服务器配置调优 93 

    6.1 与实时配置交互 93 

    6.1.1 默认值和重置值 94 

    6.1.2 允许更改的上下文信息 94 

    6.1.3 重新加载配置文件 95 

    6.1.4 数据库连接 97 

    6.1.5 共享内存 98 

    6.1.6 日志记录 98 

    6.1.7 Vacuuming和统计 100 

    6.1.8 检查点 101 

    6.1.9 PITR和WAL复制 103 

    6.1.10 调整以防患于未然 106 

    6.2 小结 109 

    第7章 日常维护 110 

    7.1 事务可见性与多版本并发控制 110 

    7.1.1 可见性的内部计算 111 

    7.1.2 更新 111 

    7.1.3 行锁的冲突 113 

    7.1.4 删除操作 114 

    7.1.5 MVCC的优点 115 

    7.1.6 MVCC的缺点 115 

    7.1.7 事务ID重叠 116 

    7.2 vacuum 117 

    7.2.1 vacuum实现 117 

    7.2.2 基于开销的vacuum 119 

    7.2.3 autovacuum 120 

    7.2.4 vacuum和autovacuum的常见问题 123 

    7.3 自动分析 126 

    7.4 索引膨胀 127 

    7.4.1 测定索引膨胀 127 

    7.4.2 修复索引膨胀 128 

    7.5 转储和恢复 129 

    7.6 清空数据库/表 129 

    7.7 CLUSTER命令 129 

    7.8 重建索引 130 

    7.9 详细数据和索引页的监控 131 

    7.10 监控查询日志 131 

    7.10.1 基本的PostgreSQL日志设置 131 

    7.10.2 对棘手的查询进行日志记录 134 

    7.10.3 日志文件分析 136 

    7.11 小结 140 

    第8章 数据库基准评测 141 

    8.1 pgbench默认测试 141 

    8.1.1 表的定义 141 

    8.1.2 规模检测 143 

    8.1.3 查询脚本定义 143 

    8.1.4 为pgbench配置数据库服务器 145 

    8.2 使用pgbench-tools图形化输出结果 147 

    8.3 pgbench测试结果样例 148 

    8.3.1 只读测试 148 

    8.3.2 类TPC-B测试(读、写) 149 

    8.3.3 延迟分析 150 

    8.4 导致不良结果以及变化的缘由 152 

    8.4.1 PostgreSQL开发人员模式 153 

    8.4.2 worker线程和pgbench程序的限制 154 

    8.5 自定义pgbench测试 154 

    8.6 TPC基准评测 155 

    8.7 小结 156 

    第9章 数据库索引 157 

    9.1 索引例子详解 158 

    9.1.1 测量查询的磁盘和索引块统计信息 158 

    9.1.2 运行例子 159 

    9
查看详情
系列丛书 / 更多
PostgreSQL 9X之巅(原书第2版)
Redis设计与实现
黄健宏 著
PostgreSQL 9X之巅(原书第2版)
MySQL技术内幕:InnoDB存储引擎(第2版)
姜承尧 著
PostgreSQL 9X之巅(原书第2版)
Redis开发与运维
付磊、张益军 著
PostgreSQL 9X之巅(原书第2版)
Oracle高性能自动化运维
冷菠 著
PostgreSQL 9X之巅(原书第2版)
MySQL DBA修炼之道
陈晓勇 编
PostgreSQL 9X之巅(原书第2版)
mysql管理之道:性能调优、高可用与监控
贺春旸 著
PostgreSQL 9X之巅(原书第2版)
MySQL技术内幕:InnoDB存储引擎
姜承尧 著
PostgreSQL 9X之巅(原书第2版)
DBA修炼之道:数据库管理员的第一本书(原书第2版)
[美]穆林斯(Craig S. Mullins) 著;褚晓霞 译
PostgreSQL 9X之巅(原书第2版)
Oracle达人修炼秘籍:Oracle 11g数据库管理与开发指南
孙风栋、王澜 著
PostgreSQL 9X之巅(原书第2版)
PostgreSQL修炼之道:从小工到专家
唐成 著
PostgreSQL 9X之巅(原书第2版)
数据模型资源手册(卷1)(修订版)
希尔瓦斯顿、林友芳 著
PostgreSQL 9X之巅(原书第2版)
构建最高可用Oracle数据库系统:Oracle 11gR2 RAC管理、维护与性能优化
刘炳林 著
相关图书 / 更多
PostgreSQL 9X之巅(原书第2版)
Power BI商业数据分析与可视化
孟庆娟 李刚
PostgreSQL 9X之巅(原书第2版)
Power Query实战:Excel智能化数据清洗神器应用精讲
陈平
PostgreSQL 9X之巅(原书第2版)
PowerPoint多媒体课件制作实用教程(第4版·微课视频版)
缪亮;孙毅芳
PostgreSQL 9X之巅(原书第2版)
PostgreSQL数据库实战派
赵渝强
PostgreSQL 9X之巅(原书第2版)
Power Query数据智能清洗应用实操
王晓均
PostgreSQL 9X之巅(原书第2版)
PowerPoint多媒体课件制作实例教程(第4版)(微课版)
方其桂;张青;唐小华
PostgreSQL 9X之巅(原书第2版)
Pop:波普艺术小史
[英]阿拉斯泰尔·苏克
PostgreSQL 9X之巅(原书第2版)
PostGIS实战(第3版)
利欧·许(Leo Hsu)著 王亮 杜朋 但波 译;[美]里贾纳·奥伯(Regina Obe)
PostgreSQL 9X之巅(原书第2版)
Power Query M函数语言:基于Excel和Power BI的数据清理轻松入门》
侯翔宇
PostgreSQL 9X之巅(原书第2版)
Power BI数据挖掘与可视化分析
裴丽丽
PostgreSQL 9X之巅(原书第2版)
Power BI 零售数据分析实战
郑志刚
PostgreSQL 9X之巅(原书第2版)
Power Query M函数语言:基于Excel和Power BI的数据清理进阶实战
侯翔宇 著;颉腾文化 出品
您可能感兴趣 / 更多
PostgreSQL 9X之巅(原书第2版)
孩子,把你的手给我1:怎么说孩子才爱听,怎么教孩子才肯学?帮助每一位3-12岁孩子的父母结束与孩子的所有冲突!
[美]海姆·G.吉诺特
PostgreSQL 9X之巅(原书第2版)
怎样做成大事
[美]丹·加德纳(Dan Gardner) 著;贾拥民 译;湛庐文化 出品;[丹麦]傅以斌(Bent Flyvbjerg)
PostgreSQL 9X之巅(原书第2版)
1200年希腊罗马神话
[美]伊迪丝·汉密尔顿
PostgreSQL 9X之巅(原书第2版)
爱情心理学(新编本)
[美]罗伯特·J. 斯腾伯格 (美)凯琳·斯腾伯格 倪爱萍 译
PostgreSQL 9X之巅(原书第2版)
黄金圈法则
[美]西蒙·斯涅克 著;磨铁文化 出品
PostgreSQL 9X之巅(原书第2版)
汤姆·索亚历险记 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]马克 吐温
PostgreSQL 9X之巅(原书第2版)
富兰克林自传 名家全译本 改变无数人命运的励志传奇 埃隆马斯克反复推荐 赠富兰克林签名照及精美插图
[美]本杰明·富兰克林 著;李自修 译
PostgreSQL 9X之巅(原书第2版)
意大利文艺复兴新艺术史
[美]迈克尔·韦恩·科尔 著;[美]斯蒂芬·J·坎贝尔;邵亦杨
PostgreSQL 9X之巅(原书第2版)
汤姆素亚历险记:中小学生课外阅读快乐读书吧 儿童文学无障碍有声伴读世界名著童话故事
[美]马克·吐温
PostgreSQL 9X之巅(原书第2版)
老人与海 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]海明威
PostgreSQL 9X之巅(原书第2版)
养育的觉醒:全面激发孩子自驱力,教你如何心平气和做妈妈
[美]凯文·莱曼 著;唐晓璐 译;斯坦威 出品
PostgreSQL 9X之巅(原书第2版)
国际大奖图画书系列 共11册(小老鼠的恐惧的大书,大灰狼,红豆与菲比,别烦我,下雪了 ,穿靴子的猫 ,先有蛋,绿 ,特别快递,如果你想看鲸鱼 ,一个部落的孩子 ) 麦克米伦世纪
[美]莱恩·史密斯 (英)埃米莉·格雷维特 (美)劳拉·瓦卡罗·等/文 (英)埃米莉·格雷维特 等/图 彭懿 杨玲玲 阿甲 孙慧阳 白薇 译