暂无图片
pgbouncer 启动报 ERROR evdns_base_new failed
我来答
分享
墨天轮福利君
2024-07-15
pgbouncer 启动报 ERROR evdns_base_new failed

pgbouncer 启动报 ERROR evdns_base_new failed。这个报错,有遇到过吗? pgbouncer-1.21.0 libevent-2.1.12-

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
龙镇君

ERROR evdns_base_new failed 这个错误通常与 PgBouncer 使用的 libevent 库中的异步 DNS 解析功能有关。这个错误可能由几个不同的原因引起,包括系统配置问题、资源限制、或者 libevent 和 PgBouncer 之间的兼容性问题。以下是一些可能的解决步骤:

  1. 检查 libevent 版本
    确保你使用的 libevent 版本与 PgBouncer 兼容。虽然你提到使用的是 libevent-2.1.12,但最好查看 PgBouncer 的官方文档或源代码注释,看看是否有推荐的 libevent 版本。

  2. 系统资源限制
    检查系统是否对进程打开了足够的文件描述符或其他资源限制。你可以使用 ulimit -a 命令来查看当前的限制,并根据需要调整。

  3. DNS 配置
    检查系统的 DNS 配置是否正确。PgBouncer 依赖于 DNS 来解析服务器地址。如果 DNS 服务器不可达或配置错误,可能会导致 evdns_base_new 失败。

  4. 使用静态 IP 地址
    如果可能,尝试在 PgBouncer 配置文件中使用数据库的静态 IP 地址而不是主机名。这可以绕过 DNS 解析的问题。

  5. 重新编译 libevent 和 PgBouncer
    有时候,从源代码重新编译 libevent 和 PgBouncer 可以解决兼容性问题或编译时的配置错误。确保在编译时使用正确的选项和依赖项。

  6. 查看日志和错误消息
    详细查看 PgBouncer 和系统日志,看是否有更详细的错误信息或堆栈跟踪,这可以帮助你更准确地定位问题。

  7. 搜索类似问题
    在互联网上搜索 ERROR evdns_base_new failed 和相关的错误消息,看看是否有其他用户遇到并解决了相同的问题。

  8. 更新或降级软件
    如果可能,尝试更新到最新版本的 PgBouncer 和 libevent,或者如果当前版本太新,尝试降级到一个更稳定的版本。

  9. 联系支持
    如果上述步骤都不能解决问题,考虑联系 PgBouncer 的支持团队或社区寻求帮助。

  10. 考虑使用其他工具
    如果问题持续存在且对你的应用有严重影响,考虑使用其他数据库连接池工具,如 HAProxy、pgpool-II 等。

希望这些步骤能帮助你解决问题!

暂无图片 评论
暂无图片 有用 2
打赏 1
Z·A·Q

vim /etc/resolv.conf

添加 nameserver 127.0.0.1

然后重启pgbouncer

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
pgsql里设置了用户的访问IP限制策略,只给了某个库的权限,但是程序报错,提示无法访问 template1,必须同时给template1权限才正常,这是什么原因?
回答 1
template1也是要用到的。如果再建立database,建库时如果不指定TEMPLATE属性,默认用的是template1模板库
pg如果在匿名块insert传入的是参数而不是具体值时,会有个数限制吗?
回答 1
已采纳
postgresql源代码为:publicvoidsendInteger2(intval)throwsIOException{if(val>32768&&val<32767
数据采集完写入postgreSQL数据库,怎么操作比较稳妥?
回答 1
采集完的数据如果是文件比如excel,可以直接用pgfdw读取数据文件
postgres rpmgrd 在2个节点中的一个备节点无法启动,也没有输出
回答 6
我重新编译了一遍那个软件就好了
Oracle 数据迁移到 postgreSQL,有没有开源工具推荐?
回答 4
已采纳
阿里datax
pg中如何判断一个索引的选择性?
回答 1
看执行计划中有
postgreSQL 有时间段合并的函数吗?
回答 1
是的,PostgreSQL有时间段合并的函数。您可以使用datetrunc函数来实现这一点。例如,如果您想要将一个时间戳截断为天,您可以使用以下查询:SELECTdatetrunc('day',tim
postgreSQL 的mvcc怎么实现cache,fusion,维护一个page的所有权表吗?
回答 1
PostgreSQL的MVCC机制是通过维护一个page的所有权表来实现的。当一个事务开始时,它会创建一个新的page,并将该页面的所有行标记为“未锁定”。然后,事务会读取或写入这些行,并将它们标记为
oracle的游标在pg中怎么用啊?%NOTFOUND在pg中用not found不管用
回答 1
已采纳
PostgreSQL游标步骤:1、定义一个游标:declare游标名cursor2、打开一个游标3、从结果集抓取行到游标4、检查是否还有行需要抓取,如果是返回第三步执行抓取,如果不是,执行第五条5、关
postgresql在执行存储过程时,为什么没有输出,执行完成后,才有输出?
回答 1
已采纳
pg中一个存储过程一般是一个事务,所以raise在一个事务中,一般是不打印,只有在事务结束后才打印输出可以分多个子存储过程,切割事务
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~