问题标签 [pgbouncer]
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.
linux - 如何以 root 以外的普通用户启动 pgbouncer
我在我的 Linux 机器上安装了 postgres-9.2.13 和 pgbouncer。我在“postgres”用户中的数据库管理员。当我尝试分别使用以下命令启动 postgres 或 pgbouncer 时,它会询问 root 密码,并且只有在命令前使用“su root”时我才能运行该命令。
但我不希望它仅与 root 用户一起运行。如何让我的 postgres 用户能够运行 postgres 服务和 pgbouncer 服务?
postgresql - 如何限制特定主机连接到 pgbouncer?
我在 6432 端口上运行我的 postgres-9.2,在 5432 端口上运行 pgbouncer。我的同事客户端机器很少有服务器机器上 5432 端口的防火墙连接权限。但作为数据库管理员,我想限制某些 IP 地址访问数据库。
但是,尽管我阻止了 pg_hba.conf 文件,但由于允许 pgbouncer 端口,他们能够访问。
我可以在操作系统防火墙级别进行阻止,但我不想寻求系统管理员的帮助。那么,有什么方法可以限制和拒绝 IP 地址访问 pgbouncer,就像我们通常通过 pg_hba.conf 对 postgresql 所做的那样。
请建议。
postgresql - 安装 pgBouncer 以获得最佳性能的最佳位置(网络服务器或数据库)
我有以下情况:
- 2 到 5
WebServers Apache
+php
连接单个postgresql
数据库。(服务器的数量可能因流量而异)。 - 专用
PostgreSQL
(9.3) 安装在同一网络上。
在这种情况下,最好的安装位置是pgBouncer
什么?
- 在多个网络服务器上安装
pgBouncer
(每个网络服务器都有您自己的安装) - 安装
pgBouncer
在数据库机器上。
knex.js - 带有 pgbouncer 的 knex.js
我正在考虑实施 pgbouncer。我们在我们的节点应用程序中使用 knex.js,据我所知,没有办法禁用它内置的连接池。处理这个问题的最佳选择是什么?
haproxy - haproxy pgsql-check 和 eof 消息
我正在使用 haproxy 1.5.4 。在 pgbouncer 前面。
我的配置启用了 pgsql-check。启用检查后,我会在pgbouncer 日志中看到这些消息。
这些是我在默认检查存在时收到的相同消息。我的意思是当没有选项 pgsql-check 时。
我还尝试在 pgsql-check 中提供一个有效用户,但我仍然看到这样的 eof 消息。
选项 pgsql-检查用户 pg
我的问题是pgsql-check
与默认的tcp check
. 我的印象是它会正确关闭连接,我不会在日志中看到这些消息。
我们是否看到了这些消息pgsql-check
?
postgresql - Pgbouncer 超时
我尝试使用 pgBouncer 来消除短暂的网络断开连接。我做了一个测试,在那里我有 Clinet->pgBouncer->Postgresql。当从客户端建立连接时,我断开网络电缆,如果我连接它的速度快于 ~15 秒,它仍然可以工作。如果没有,我完全断开连接,并且 pgBouncer 记录:
db/user@server.address.com:5432 关闭,因为:服务器连接崩溃?db/user@127.0.0.1:49837 关闭,因为:服务器连接崩溃?db/user@127.0.0.1:49837 Pooler 错误:服务器连接崩溃?
我如何控制该超时?
PS:在我pglib
的客户端,连接字符串超时设置为 60 秒。
卢卡斯
java - JDBC 和 pgbouncer 可以与 createStatement 一起使用吗
我了解到 JDBCPreparedStatement
和 PGBouncer 不能一起工作,因为PreparedStatement
使用会话池并且是预编译的,而 PGBouncer 使用事务级池。
我的问题是可以createStatement
与 PGBouncer 一起使用,因为它没有预编译?如果没有,有人可以将我指向另一个可以连接到数据库并可以使用 PGbouncer 的 Java api 吗?
c - 无法在 linux 和 windows 中编译 pgbouncer
我正在尝试编译 pgbouncer 以在 windows server 2008 中运行的 PostgreSQL 服务器中使用。但是我根本无法编译 dll,并且在 linux (ubuntu) 和 windows 中出现了相同的错误:
检查 libevent... 配置:错误:未找到:无法继续
我正在关注这个 howto。我已经使用mingw在 windows 中编译了libevent ,并将生成的 dll 复制到 System32、SysWOW64 甚至在自己的 pgbouncer 目录中。我究竟做错了什么?
python - Postgres 咨询锁不起作用
我在 postgres 9.4.4 上无法正确获取 postgres 咨询锁的问题。如果我在两个屏幕上 ssh 进入 postgres 服务器并打开 psql 以获取一个锁定并尝试获取另一个锁定它可以完美地工作。但是,如果我从指向该服务器的另一台服务器执行此操作,我可以自由地“获取”锁,但它实际上从未从数据库中获取锁。
通常,我们使用 python 来获取锁,这就是我们最初注意到问题的地方。要手动获取锁,我正在使用select pg_advisory_lock(123456789);
检查当前正在使用的锁select objid from pg_locks where locktype = 'advisory';
我将在这里播放它,以便您可以直观地看到它并告诉我我在做什么。
尝试使用 app_server(使用 pgbouncer 的远程服务器)获取锁,但它失败了。
使用 db_server 获取锁,然后尝试再次在 app_server(远程)上但在同一个数据库上获取锁。
在这里您可以看到 db_server 有锁,所以我现在将返回 app_server 并尝试获取相同的锁,但这次它将按预期工作,它将等待来自 db_server 的解锁。
同时,我会从 db_server 去解锁它。
立即 app_server 获取并释放锁。
django - django、pgBouncer 和 CONN_MAX_AGE
类似但未回答的问题具有 Django 的 CONN_MAX_AGE 的 pgbouncer 的理想设置
我想知道使用两者是否真的有益,还是我们应该只使用其中一种?