问题标签 [pgpool]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
845 浏览

spring - 使用 pgpool 版本 3.3.1 从 postgres DB 9.3 读取数据的问题

我们正在使用 jdbc 通过 pgpool 连接到 postgresql 9.3 数据库。当我们试图在java中读取从DB发送的数据时,有时数据被正确读取,有时我们会得到这个异常。

我们在 DAO 类中使用此代码:

函数 executeStoredProcedureSpring

pgpool 的版本如下:

但是当我们删除 pgpool 并直接访问数据库时,我们能够正确读取数据。

请建议解决此问题。

0 投票
3 回答
6348 浏览

linux - 使用 ubuntu 和 postgresql 启动 pgpool 后,pid 文件消失

我已经使用 pgpoolII-3.3.3 和 pgPoolAdmin 在 ubuntu 12.04 上安装了 postgresql 9.1

如果我尝试使用 sudo pgpool 从终端运行 pgpool,它似乎开始了。查看 ubuntu 文件资源管理器我可以看到如何在 /var/run/pgpool/pgpool.id 中创建 pgpool.pid 文件(这是 pgpool.conf 中的路径)

但是一秒钟后文件消失了。

我试图更改目录的所有者和目录权限,但似乎没有任何解决办法。

如果在那之后我尝试使用 sudo pgpool -m fast stop 停止 pgpool,我得到一个错误:错误。找不到pid文件

似乎该文件已创建并突然销毁。我想知道为什么。

如果我尝试从 pgPoolAdmin 运行 pgpool,我会收到此错误:pgpool start failed。未找到 pgpool.pid。

像其他时候一样,这可能是一个愚蠢的问题,我无法解决它,因为我对这些系统没有高水平的知识。

关于尝试什么的任何想法?

Xrry 圣诞节

0 投票
1 回答
768 浏览

postgresql - 关系“分支”不存在 pgbench-tools 和 postgresql 数据库规模返回“”

我已经使用 pgpoolII-3.3.3 和 pgPoolAdmin 在 ubuntu 12.04 上安装了 postgresql 9.1。

我正在尝试使用 pgbench-tools 进行测试以测量 postgresql 的性能。

所以我移动到 pgbench-tools 所在的目录并配置配置文件。

我尝试执行此命令:

在此之后,它会出现一条消息“正在删除旧的 pgbench 表”

第一条错误消息(似乎并不重要)是:ERROR: table "accounts does not exist"

之后会出现一条消息:VACUUM creating new pgbench tables

在这之后

在此之后它是“崩溃”:

这可能是一个愚蠢的问题,我无法解决它,因为我对这些系统没有高水平的知识。

关于尝试什么的任何想法?

0 投票
1 回答
1916 浏览

postgresql - PGpool 升级为 master 并且 Slave 不会在失败时复制

(版本 pgpool-II-pg93-3.4.0-3pgdg.rhel6.x86_64.rpm)

不久前我在网上看到过一些关于这个问题的讨论,但我还没有找到解决办法。

我有 2 台 pgpool 服务器运行流复制和负载平衡。它们连接到 3 个 postgres 服务器。2 台是虚拟机,1 台是物理机。

我希望物理机成为主服务器。我已经使用 pcp_promote_node 命令完成了测试,我看到了 show pool_nodes; 显示我选择为主节点,但是在 postgres 端,命令 SELECT pg_is_in_recovery(); 显示该服务器仍在恢复中。

pcp_promote 命令所做的就是分离主节点。然后阻止插入数据库。

其次,如果主服务器发生故障,另一台服务器确实会成为主服务器,但是另一个从服务器对此一无所知,并且在我从新主服务器恢复之前不会复制任何新数据。

是否有解决上述两个问题的方法。如果您需要更多信息,例如日志等,请告诉我。

谢谢

0 投票
1 回答
897 浏览

mysql - 类似于 MySQL 的 PgPool 故障转移 - 目前使用 HAProxy

我正在通过 HAProxy 运行 MySQL 服务器负载平衡。但是每当一个节点(MySQL)出现故障或出现时,我都需要执行一些操作,就像我们在 PgPool-II 中所做的那样。

例子:

当 MySQL-1 出现故障时,我也想关闭我的 WebServer-1。(STONITH 喜欢)在 PgPool-II for PostgreSQL 中,我可以做到这一点。我不知道是否有类似的 MySQL 工具。

这在 HAProxy 本身中是否可能:

比如说,当我的 DB-1 出现故障时,将 Web 服务器流量路由到 WebServer-2。

0 投票
1 回答
738 浏览

postgresql - 主从延迟(激活同步提交)和单独磁盘中的pg_xlog

我们正准备将 repmgr 添加到现有的 Postgresql 9.3 两节点流复制集群中。

之前我们有一个严重的问题影响了我们的主要业务,问题是主从之间的延迟,我们通过调整配置解决了这个问题:

掌握 postgresql 配置:

从属recovery.conf:

slave1 通过 NFS 从 master 挂载 /walshare:

通过同步提交的激活,我们终于解决了主从之间的延迟问题。

不,我们想将当前集群重新配置为由 repmgr 管理,以便于管理任务和故障转移。

我已经创建了一个新的虚拟机(使用 PG-9.4)并计划将数据库从旧集群迁移到新集群。

为了避免 pg_xlog 磁盘空间问题,我决定将 pg_xlog 目录放在与 PGDATA 逻辑卷相同的卷组上的单独逻辑卷中。

我的问题是:

  1. repmgr 是本机激活同步提交,还是应该在主 postgresql.conf 中手动添加它?
  2. 开启同步提交,如果slave没有响应,Master会失败,repmgr如何处理这种情况?
  3. 当 repmgr 创建新的从属(克隆主)时,它是否删除 /var/lib/pgsql/9.4/data/pg_xlog 并重新创建一个新的?
  4. 在同一个卷组上拥有 pgsqllv 和 pgxloglv 不会影响 I/O 性能?我应该为 pg_xlog 使用专用磁盘吗?
  5. 按照 repmgr 官方文档,wal_keep_segments = 5000 这需要 pg_xlog 需要 80 GB,80Gb 是固定的,或者我应该创建足够大的逻辑卷 100Gb 的最小空间,例如管理 pg_xlog 磁盘空间增长?

感谢您的帮助,

0 投票
1 回答
851 浏览

database - Pgpool-II。同一 pgpool 服务器上的两个数据库

我的问题是关于 Postgres Databse pgpool 可以管理的数量。我有两台服务器:

我有两个数据库:DB1 和 DB2。

我可以通过端口 9999 上的 pgpool 从应用服务器连接到 DB1,但我无法连接到端口 9999 上的 DB2。

如果我尝试将端口 5432 连接到 DB2,它工作正常。

我的问题是 pgpool 是否可以使用两个数据库,或者只能连接其中一个。

0 投票
1 回答
140 浏览

postgresql - pgpool 可以管理会话,因为服务器应用程序在它们不再活动后保持连接?

我有一个带有 datasnap 和 delphi 2010 的服务器应用程序(这个版本在管理会话方面存在一些问题),我必须每天终止一次 postgres 中的空闲会话。

我已经安装了 pgpool 但它没有任何区别,所以,我是不是配置错了,或者因为它是保持这些连接处于活动状态的服务器,所以 pgpool 不能做“魔法”来管理它?

0 投票
1 回答
550 浏览

postgresql - PgPool Replication - 直接插入Master,会不会复制到Slave

我正在查看使用 PgPool 进行负载平衡的 PostgreSQL 9.4 流复制与使用 PgPool 复制。由于 PgPool 复制是基于语句/中间件的,这是否意味着如果我直接在 PgPool 之外更新 Master 它将不会复制?PgPool 会检测到主从不同步吗?

在此先感谢您的帮助。

0 投票
2 回答
1006 浏览

postgresql - 无法连接到虚拟机中的 PGpool

我正在尝试在两个 PostgreSQL 实例之间设置一个简单的主/从复制,每个实例在两个不同主机的虚拟机中运行。

两个虚拟机都具有 NAT 配置,具有以下端口转发规则:

我可以使用 PGAdmin III 从主机和来宾操作系统很好地连接到两个 PostgreSQL 实例。pgpool2 服务也可以正常启动,但我无法使用 pgAdmin 或 psql 连接到它。

当我尝试使用 psql 连接到 pgpool 时会发生这种情况:

两个后端都在 pgpool.conf 中定义:

在同一个文件中,replication_mode 和 load_balance_mode 都设置为 true。

我相信 pgpool 可能存在一些配置问题,因为在启用调试标志的情况下手动运行时,我可以看到正在选择后端:

但是,在日志的下方,可以找到以下行:

我在这里做错了吗?我已经学习了几个关于 pgpool 的教程,而且我主要使用默认设置,但我仍然无法让它运行。任何帮助表示赞赏。