在本书的前几章,您已经学习了各种复制以及如何配额制各种类型的场景。现在是时候通过增加监控来让您的设置更加可靠了。

在本章中,您将学习监控什么以及如恶化实施合理的监控车辆。您将学习:

• 检查您的 XLOG 归档

• 检查 pg_stat_replication 系统视图

• 检查操作系统级别复制相关的进程

在本章的最后您应该能够正确地监控任何类型的复制设置。

6.1 检查您的归档

如果您计划使用即时恢复(PITR, Point-In-Time-Recovery)或如果您想使用XLOG归档来帮助您的流设置,各种事情都可能出错,例如:

• 传送XLOG 可能失败

• 清理存档可能失败

6.1.1 检查archive_command

一个失败的 archive_command 可能是您的设置中的最大的搅局者之一。

archive_command 的思想是传送 XLOG到一些归档并在那里存储数据。但是,如果由于某些原因这些XLOG不能被传送会发生什么?

答案很简单:master必须保持这些XLOG文件,以确保没有XLOG文件丢失。必须始终有一个不间断的XLOG文件的序列-如果序列文件中有一个文件丢失,您的slave将不能被恢复。例如,如果您的网络发生故障,master将积累这些文件并保留它们。从逻辑上讲,不能永远这样做,因此,在有些时候,您将面临您的master服务器磁盘空间不足的问题。

这是很危险的,因为您正在用尽您的磁盘空间,没有办法保持写入到数据库。尽管读取仍然是可能的,大多数的写肯定会亏失败,并会严重干扰您的系统。PostgreSQL不会失败,在一个磁盘被填满之后您的实例将完好无损,但是,正如之前所说的,您的服务将被中断。

为了防止这种事情 发生,建议监控您的pg_xlog目录并检查:

• 异常地高数量的XLOG文件

• 托管pg_xlog分区的可用磁盘空间

这里的核心问题是:检查出来的什么数字才是一个合理的数字?在PostgreSQL的标准配额制中不应该使用超过checkpoint_segments * 2 + wal_keep_segments这么多的XLOG文件。如果XLOG文件数开始大规模地增长,您会遇到一些奇怪的问题。

确保archive_command正常工作。

如果您正确地执行这些检查,在这方面不会发生不好的事情-如果您无法检查这些参数,您离危险就不远了。

6.1.2 监控事物日志归档

磁盘空间耗尽不只会发生在master上。同样的事情也会发生在您的归档上。所以,建议您也监控磁盘空间。

除了无论如何都要监控的磁盘空间,有一件事情您应该注意您的雷达。您必须拿出一个像样的策略来处理基础备份。请记住,只允许您删除比您想保存的最早的基础备份的XLOG还要早的XLOG。这个小东西会破坏您的磁盘空间监控。为什么呢?因为您必须保持一定量的数据,知道您正在耗尽磁盘空间是一件好事,但是就不能为之做点什么吗?强烈建议您确保您的归档有足够的备用容量。万一您的数据库系统需要写大量的事务日志,这是很重要的。

PostgreSQL Replication之第六章 监控您的设置(1)的更多相关文章

  1. PostgreSQL Replication之第六章 监控您的设置(4)

    6.4 处理监控工具 还有几个监控工具可以使您的日常生活更轻松. 其中最流行的监控工具是Nagios.它被广泛地使用,也支持各种软件组件. 要使用 Nagios 来监控您的 PostgreSQL 集群 ...

  2. PostgreSQL Replication之第六章 监控您的设置(2)

    6.2 检查pg_stat_replication 检查归档以及 archive_command主要用于即时恢复( PITR,Point-In-Time- Recovery).如果您想监控一个基于流的 ...

  3. PostgreSQL Replication之第六章 监控您的设置(3)

    6.3 检查操作系统进程 一旦我们检查了归档以及我们的系统视图,我们就准备检查系统 进程.检查系统进程可能看起来有点粗糙,但它被证明非常有效. 在master上,我们可以简单地检查一个名为wal_se ...

  4. PostgreSQL Replication之第四章 设置异步复制(1)

    执行完您的第一个即时恢复(PITR,Point-In-Time-Recovery),我们准备在一个真正的复制设置上工作.在本章,您将学会如何设置异步复制和流.我们的目标是确保您可以实现更高的高可用和更 ...

  5. PostgreSQL Replication之第十三章 使用PL/Proxy扩展(3)

    13.3 聪明地扩展与处理集群 建立集群不是您面临的唯一任务.如果所有的事情都做完了并且系统已经运行了,您可能需要到处调整配置. 13.3.1 添加和移动分区 一旦一个集群启动并运行,您可能会发现您的 ...

  6. PostgreSQL Replication之第五章 设置同步复制(3)

    5.3 冗余和停止复制 谈到同步复制,有一个现象一定不能被遗漏.想象一下,我们有一个同步复制的双节点集群.如果slave故障会发生什么?答案是master不能容易地区分慢slave和故障slave,因 ...

  7. PostgreSQL Replication之第四章 设置异步复制(4)

    4.4 基于流和基于文件的恢复 生活并不总只是黑色或白色:有时也会有一些灰色色调.对于某些情况下,流复制可能恰到好处.在另一些情况下,基于文件复制和PITR是您所需要的.但是也有许多情况下,您既需要流 ...

  8. PostgreSQL Replication之第四章 设置异步复制(2)

    4.2 配置级联复制 正如您在本章已经看到的,设置流复制真的很容易.只需要设置几个参数,做一个基础备份,并享受您的复制设置. 在许多情况下,这种情况更有一点点微妙.在这个例子中我们假设:我们要使用一个 ...

  9. PostgreSQL Replication之第三章 理解即时恢复(4)

    3.4 重放事务日志 一旦我们创建了一个我们自己的初始基础备份,我们可以收集数据库创建的XLOG.当时间到时,我们可以使用所有这些XLOG 文件并执行我们所期望的恢复进程.这就像本节描述的一样工作. ...

随机推荐

  1. [AH2017/HNOI2017] 礼物 解题报告 (FFT)

    题目链接: https://www.luogu.org/problemnew/show/P3723 题目: 我的室友最近喜欢上了一个可爱的小女生.马上就要到她的生日了,他决定买一对情侣手环,一个留给自 ...

  2. SAS小记

    2011年8月13日 最近一直在跟着李东风的<统计软件教程>学习SAS,刚刚学完初等统计,感觉还没入门,找不到matlab编程时那种手顺的感觉.继续学习吧,加油!     最近用spss处 ...

  3. Wordcount 和 shuffle的流程

  4. HttpWebRequest 表单提交

    /// <summary> /// http请求 /// </summary> public static class ZkWebRequestHelp { /// <s ...

  5. UVa 10801 Lift Hopping【floyd 】

    题意:给出n个电梯,每个电梯的运行时间,每个电梯只能在相应的楼层停靠,而且没有楼梯,再给出想去的楼层,问从0层能否到达想去的楼层,求到达的最短时间 建图还是没有建出来--- 因为n<100,可以 ...

  6. QT+OpenCV进行图像采集最小时延能够达到20ms

    得到“算法高性能”项目的支持,目前成功地在Win10上运行WB2,感觉目前的代码速度慢.响应慢.CPU占用比例高.这种情况下3399上能够运行,说明这个平台已经是很强的了.下一步,首先在Windows ...

  7. Visual Studio中C++工程的环境配置方法

    在Visual Studio的C++工程设置 1.添加工程的头文件目录:工程---属性---配置属性---c/c++---常规---附加包含目录. 2.添加文件引用的lib静态库路径:工程---属性- ...

  8. oracle查询优化之子查询条件优化

    环境:oracle 11g 现有a表与b表通过a01字段关联,要查询出a表的数据在b表没有数据的数据:sql如下 ) ) 因为flag是虚拟字段没有走不了索引导致这条sql执行起来特别慢 310W条数 ...

  9. 仿百度排列图片预览插件-Simple Lightbox

    很久以前遇到过这样的一个面试题,要求手写代码,实现百度图片的排列预览,并且可以左右点击查看下一张照片,当时没有做出来,这个问题也就一直放在了脑后,工作之后,遇到这样的需求之后,第一反应想到的是在源码网 ...

  10. 【BZOJ 1196】[HNOI2006]公路修建问题

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 二分最后选的边中的最大值是多少. mid 则所有边权小于等于mid的边都可以用了. 那么我们要怎么选择呢? ->优先选择一级的 ...