https://pgbouncer.github.io/config.html

参考 《PostgreSQL修炼之道》之pgbouncer

配置文件分为[databases] 和 [pgbouncer]两部分,这个前面说过。现在我们来详细讲解一下里面的配置。

在上面的部分我们已经看到了一部分的[databases]部分的参数配置,都是以键值对的形式出现的,例如dbname、host、port、user、password,这几个参数都比较好理解。还有几个额外的配置我们接着看一下:

(1) pool_size 用来配置连接池的大小。连接池的含义上面说过,如果没有这个值则使用[pgbouncer]部分的default_pool_size的值。

(2)connect_query :后面跟一个SQL语句字符串,用于探测这个连接是否正常,如果执行SQL语句出错,则换一个连接。

(3)client_encoding:指定连接的客户端使用的字符集编码

(4)datestyle:指定日期类型

(5)timezone:指定时区。

[pgbouncer]部分的配置

这个部分的配置项比较多,主要分为下面几类:

通用配置项

日志配置项

控制界面访问控制配置项

连接健康检查和超时配置项

危险的超时配置项

底层网络配置项

通用配置

logfile 指定日志文件,默认值是/var/log/pgbouncer/pgbouncer.log

pidfile 指定pid文件位置,默认值是/var/run/pgbouncer/pgbouncer.pid

listen_addr  监听的地址,默认值是127.0.0.1,可以使用*号表示监听所有IP地址。

listen_port 监听的端口,默认值是6432

unix_socket_dir 指定unix socket文件的目录,默认为/tmp目录

unix_socket_mode 指定unix socket文件的权限,默认值为0777

unix_socket_group 指定unix socket文件的组,默认无

user  指定启动PgBouncer的用户名,windows系统不支持此设置

auth_type 认证的类型,默认是trust,其他值包括md5,crypt,plain,any,hba。用的较多的是md5

auth_file 认证文件的位置,默认值是/etc/pgbouncer/userlist.txt

pool_mode 指定池的模式,默认是session模式,还可以是transaction和statement

max_client_conn  允许的最大连接数

default_pool_size  默认的池大小,默认值20

min_pool_size  最小的池大小,每个连接池至少会向后端数据库保持多少个连接

reserve_pool_size  连接池的保留连接数

reserve_pool_timeout  保留连接的超时时间

server_round_robin  负载均衡的方式是否设置为“round robin”,默认为关闭,即后进先出

ignore_startup_parameters 默认情况PgBouncer只会跟踪一些默认参数,并且能检测这些参数的变化,保持这些参数和客户端的一致。在这个配置后面跟的配置后被PgBouncer忽略,不会被检查。

disable_pqexec  是否禁止简单查询协议,默认值为0。简单查询协议允许一个请求发送多个SQL,容易导致SQL注入攻击。

max_db_connections 此数据库允许的最大连接数,全局或每个数据库

日志配置项:

syslog  是否打开syslog,windows下打开eventlog,默认值为0,表示不打开。

syslog_ident  默认为PgBouncer

syslog_facility

log_connections  是否记录连接成功的日志,默认值为1,表示记录

log_disconnections 是否记录断开连接的日志,默认值为1,表示记录

log_pooler_errors 连接池法网客户端的错误是否记录在日志中,默认值为1,表示记录

stats_period 把汇总的统计信息写入日志的时间周期,默认是60s

控制界面访问控制配置项:

admin_users  管理用户名,默认值是postgres

stats_users  允许连接到控制界面,查看连接池只读信息的用户列表。可以执行除“SHOW FDS”以外的其他“SHOW”命令

server_reset_query

server_check_delay 空闲的连接多长时间进行一次健康检测,判断连接是否可用。如果设置为0,则立即检测,默认值为30s

server_check_query,进行健康检查的SQL语句,如果为0,表示不检测,默认值为“select 1;”

server_lifetime  连接的存活时间,连接超过这个时间就会被关闭,默认为3600,设置为0表示只使用一次。

server_idle_timeout  连接的idle时间,超过此时间,连接会被关闭。默认为600

server_connect_timeout  后端数据库的login时间超过这个值就会被关闭。默认为15s

server_login_retry  传教到后端数据库的连接失败后,等多长时间后重试,默认为15s

client_login_timeout  客户端与PgBouncer建立连接后,如果无法在这段时间内完成登录,那么连接会断开,默认为60s

危险超时配置项

指的是为防止一些未知错误或者原因导致系统卡住的针对性配置。

query_timeout  允许超过该时间值的SQL会被断开,应该比SQL实际的执行时间稍长,也需要比数据库的statement_timeout参数值更大。为了应付一些未知的网络问题。默认为0.0,禁止使用

query_wait_timeout  请求在队列中等待被执行的最长时间,如果超过该时间还没有分配到连接,就会断开。默认为0,禁止使用。

client_idle_timeout  客户端连接空闲超过该时间,则断开连接。默认值为0,禁止使用

idle_transaction_timeout 客户端启动事务后,超过这个时间没有结束事务,则关闭这个客户端连接。默认值为0,禁止使用

底层网络连接配置

pkt_buf  用于网络包的内部缓冲区大小,会影响发出的TCP包的大小即内存的使用,默认值为2048,一般保持默认值

max_packet_size  通过PgBouncer最大的包大小,包可以是一个SQL,也可以是返回的结果,默认值是2147483647

listen_backlog  TCP监听函数listen的Backlog参数,默认值为128

sbuf_loopcnt   处理过程中,每个连接处理多少数据就切换到下一个连接。默认为5,如果设置为0,表示不限制。不限制时,一个连接发送大量数据,另外的连接可能就会空闲,导致被结束掉。

tcp_defer_accept linux下,默认为45,其他平台为0。详细解释用man 7 tcp来查看

tcp_socket_buffer  默认没有设置

tcp_keepalive 是否以操作系统的默认值打开基本的keepalive 设置,在linux下,操作系统的keepalive里,默认值时tcp_keepidle=7200, tcp_keepintvl-75,tcp_keepcnt=9,其他操作系统类型,默认值为1

tcp_keepcnt  默认未设置

tcp_keepidle 默认未设置

tcp_keepintvl 默认未设置
   来源:https://blog.csdn.net/zhaowenzhong/article/details/89308593
https://blog.csdn.net/zhaowenzhong/article/details/89308412

  

(转)pgbouncer常用配置项详解的更多相关文章

  1. ehcache 常用配置项详解(三)

    EhCache 给我们提供了丰富的配置来配置缓存的设置: 这里列出一些常见的配置项: cache元素的属性: name:缓存名称 maxElementsInMemory:内存中最大缓存对象数 maxE ...

  2. Storm配置项详解【转】

    Storm配置项详解 ——阿里数据平台技术博客:storm配置项详解 什么是Storm? Storm是twitter开源的一套实时数据处理框架,基于该框架你可以通过简单的编程来实现对数据流的实时处理变 ...

  3. PHP常用设计模式,PHP常用设计模式详解,PHP详解设计模式,PHP设计模式

    PHP常用设计模式详解 单例模式: php交流群:159789818 特性:单例类只能有一个实例 类内__construct构造函数私有化,防止new实例 类内__clone私有化,防止复制对象 设置 ...

  4. logback 常用配置详解<appender>

    logback 常用配置详解 <appender> <appender>: <appender>是<configuration>的子节点,是负责写日志的 ...

  5. 【转】logback logback.xml常用配置详解(三) <filter>

    原创文章,转载请指明出处:http://aub.iteye.com/blog/1110008, 尊重他人即尊重自己 详细整理了logback常用配置, 不是官网手册的翻译版,而是使用总结,旨在更快更透 ...

  6. 【转】logback logback.xml常用配置详解(二)<appender>

    原创文章,转载请指明出处:http://aub.iteye.com/blog/1101260, 尊重他人即尊重自己 详细整理了logback常用配置, 不是官网手册的翻译版,而是使用总结,旨在更快更透 ...

  7. 【转】logback logback.xml常用配置详解(一)<configuration> and <logger>

    原创文章,转载请指明出处:http://aub.iteye.com/blog/1101260, 尊重他人即尊重自己 详细整理了logback常用配置, 不是官网手册的翻译版,而是使用总结,旨在更快更透 ...

  8. 【转】logback 常用配置详解(序)logback 简介

    原创文章,转载请指明出处:http://aub.iteye.com/blog/1101222, 尊重他人即尊重自己 详细整理了logback常用配置, 不是官网手册的翻译版,而是使用总结,旨在更快更透 ...

  9. chattr的常用参数详解

    chattr的常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在实际生产环境中,有的运维工程师不得不和开发和测试打交道,在我们公司最常见的就是部署接口.每天每个人部署的 ...

随机推荐

  1. vue 学习记录

    模板:通常是指html模板 组件component的概念: 在 Vue 里,一个组件本质上是一个拥有预定义选项的一个 Vue 实例, 将组件看作自定义的HTML元素.使用组件的前提是创建并注册组件 v ...

  2. 阿里云RDS数据库备份同步到自建库方法(SHELL脚本)

    一.背景: 由于阿里云RDS生产库每天都需要备份且拷贝到自建读库,而如果使用阿里云的自动拷贝到只读实例, 费用太高, 故采用自编写同步脚本方法实现. 二.前提: 1). 已开通阿里云RDS, 且开启定 ...

  3. Server SQL2008对文件的基础操作—01

    1.一个文件的基本框架为:文件名.文件地址.文件大小.文件最大的大小.文件的增量(Filegrowth). 2.文件有mdf.ndf.ldf 三种文件的区别. 3.文件组可以进行文件的管理 FileG ...

  4. selenium登录爬取知乎出现:请求异常请升级客户端后重试的问题(用Python中的selenium接管chrome)

    一.问题使用selenium自动化测试爬取知乎的时候出现了:错误代码10001:请求异常请升级客户端后重新尝试,这个错误的产生是由于知乎可以检测selenium自动化测试的脚本,因此可以阻止selen ...

  5. Python的设计哲学--zen of Python

               Python的设计哲学--zen of Python Beautiful is better than ugly. 优美胜于丑陋 Explicit is better than ...

  6. IIS8.5中的强制https直接修改web.config文件和顶级域名跳转www和过滤子目录不强制跳转

    亲测可用 <?xml version="1.0" encoding="UTF-8"?> <configuration> <syst ...

  7. StackExchange.Redis 封装

    博主最近开始玩Redis啊~~ 看了很多Redis的文章,感觉有点云里雾里的,之前看到是ServiceStack.Redis,看了一些大佬封装的Helper类,还是懵懵的QAQ 没办法啊只能硬着**上 ...

  8. VS报错,Metadata file 'xxx.dll' could not be found

    错误提示“Metadata file 'xxx.dll' could not be found”步骤如下:1.右键单击解决方案,然后单击“属性”.2.单击左侧的配置.3.确保选中了它找不到的项目的“生 ...

  9. 我是如何一步步编码完成万仓网ERP系统的(四)登录的具体实现

    https://www.cnblogs.com/smh188/p/11533668.html(我是如何一步步编码完成万仓网ERP系统的(一)系统架构) https://www.cnblogs.com/ ...

  10. python 数据结构之图的储存方式

    参考链接:https://blog.csdn.net/u014281392/article/details/79120406 所描述的图的结构为: 下面介绍不同的储存方式,我想不必详细分别是每个名称都 ...