相關閱讀: 王宇,公眾號:IT那活兒pgbouncer的簡單使用(上篇)
su - postgres /usr/local/pgbouncer/bin/pgbouncer -d /usr/local/pgbouncer/conf/pgbouncer.ini [postgres@localhost config]$ pgbouncer -d pgbouncer.ini 2012-08-21 00:29:55.573 4247 LOG File descriptor limit: 1024 (H:1024), max_client_conn: 100, max fds possible: 130 查看日志 tail -f /home/postgres/pgbouncer/pgbouncer.log |
命令介紹
-d 后臺運行
-R 在線重啟
-v 增加冗余信息,會消耗比較多的時間
-u 切換到指定的用戶啟動
-q 靜默方式,不記錄到stdout。請注意這并不影響記錄詳細,只是stdout是不被使用。在init.d腳本使用
-V 展示版本
-h 展示幫助命令
pgbouncer -d pgbouncer.ini -v ##加-v 可以打印出很多檢查信息,對初使用者,是個不錯的選擇
psql -h 127.0.0.1 -p 6432 -u pgbouncer pgbouncer
(-u 后面接管理員用戶)
[postgres@localhost pgbouncer]$ psql -h 127.0.0.1 -p 1999 -U u_kenyon f_game
Password for user u_kenyon:
psql (9.1.2)
Type "help" for help.
f_game=> d
List of relations
Schema | Name | Type | Owner
------------+-------------+--------+-------------
public | t_kenyon | table | postgres
public | test | table | test
public | test2 | table | postgres
(3 rows)
f_game=> q
參數使用例子
連接pgbouncer本身的DB
[postgres@localhost config]$ psql -h 127.0.0.1 -p 1999 -U u_kenyon pgbouncer
Password for user u_kenyon:
psql (9.1.2, server 1.5.2/bouncer)
WARNING: psql version 9.1, server version 1.5.
Some psql features might not work.
Type "help" for help.
pgbouncer=# show help;
NOTICE: Console usage
DETAIL:
SHOW HELP|CONFIG|DATABASES|POOLS|CLIENTS|SERVERS|VERSION
SHOW STATS|FDS|SOCKETS|ACTIVE_SOCKETS|LISTS|MEM
SHOW DNS_HOSTS|DNS_ZONES
SET key = arg
RELOAD
PAUSE [ ]
RESUME [ ]
KILL SUSPEND
SHUTDOWN
SHOW
[postgres@localhost config]$ psql -h 127.0.0.1 -p 666 -U u_kenyon pgbouncer Password for user u_kenyon:
psql (9.1.2, server 1.5.2/bouncer)
WARNING: psql version 9.1, server version 1.5.
Some psql features might not work.
Type “help” for help.
pgbouncer=# show help;
NOTICE: Console usage
DETAIL:
SHOW HELP|CONFIG|DATABASES|POOLS|CLIENTS|SERVERS|VERSION
SHOW STATS|FDS|SOCKETS|ACTIVE_SOCKETS|LISTS|MEM
SHOW DNS_HOSTS|DNS_ZONES
SET key = arg
RELOAD
PAUSE [ ]
RESUME [ ]
KILL SUSPEND
SHUTDOWN
SHOW如果在pgbouncer.ini文件進行了參數修改,則使用以下命令重新加載即可:
pgbouncer=# RELOAD;
2) 查看配置文件:
pgbouncer=# show config;
key | value | changeable
----------------------------------+------------------------------------------------------+------------
job_name | pgbouncer | no
conffile | pgbouncer.ini | yes
logfile | /home/postgres/pgbouncer/pgbouncer.log | yes
pidfile | /home/postgres/pgbouncer/pgbouncer.pid | no
listen_addr | 127.0.0.1 | no
listen_port | 1999 | no
listen_backlog | 128 | no
unix_socket_dir | /tmp | no
unix_socket_mode | 511 | no
unix_socket_group | | no
auth_type | md5 | yes
auth_file | /home/postgres/pgbouncer/user.txt | yes
pool_mode | transaction | yes
max_client_conn | 100 | yes
default_pool_size | 20 | yes
min_pool_size | 0 | yes
reserve_pool_size | 0 | yes
reserve_pool_timeout | 5 | yes
syslog | 0 | yes
syslog_facility | daemon | yes
syslog_ident | pgbouncer | yes
user | | no
autodb_idle_timeout | 3600 | yes
server_reset_query | DISCARD ALL | yes
server_check_query | select 1 | yes
server_check_delay | 30 | yes
query_timeout | 0 | yes
query_wait_timeout | 0 | yes
client_idle_timeout | 0 | yes
client_login_timeout | 60 | yes
idle_transaction_timeout | 0 | yes
server_lifetime | 3600 | yes
server_idle_timeout | 600 | yes
server_connect_timeout | 15 | yes
server_login_retry | 15 | yes
server_round_robin | 0 | yes
suspend_timeout | 10 | yes
ignore_startup_parameters | | yes
disable_pqexec | 0 | no
dns_max_ttl | 15 | yes
dns_zone_check_period | 0 | yes
pkt_buf | 2048 | no
sbuf_loopcnt | 5 | yes
tcp_defer_accept | 1 | yes
tcp_socket_buffer | 0 | yes
tcp_keepalive | 1 | yes
tcp_keepcnt | 0 | yes
tcp_keepidle | 0 | yes
tcp_keepintvl | 0 | yes
verbose | 0 | yes
admin_users | u_kenyon | yes
stats_users | | yes
stats_period | 60 | yes
log_connections | 1 | yes
log_disconnections | 1 | yes
log_pooler_errors | 1 | yes
(56 rows)
pgbouncer=# reload;
RELOAD
pgbouncer=#
pgbouncer=# reload;
RELOAD
pgbouncer=#
f_game=> select count(1) from pg_stat_activity;
count
---------------------
2
(1 row)
通過pgbouncer數據庫show clients; 和 server_main 數據庫中select count (1) from pg_stat_activity;可以看到,DB的連接大幅下降了,轉到pgbouncer了。
psql -h 127.0.0.1 -p 6000 -U user pgbouncer
pgbouncer=# show config;
pgbouncer=# show stats;
database :數據庫名稱
total_requests:
pgbouncer匯聚SQL請求的總數
total_received:
pgbouncer 接收網絡請求總字節數
total_sent::
pgbouncer 發送到網絡的總字節數
total_query_time:
pgbouncer 連接到PG數據庫所使用的總時間數,單位微秒
avg_req:
上一個時刻,每秒請求平均數
avg_recv:
平均每秒鐘在客戶端那接收到的字節數
avg_sent:
平均每秒發送到客戶端的字節數
avg_query:
每微秒平均查詢數
#其余運行參數可以通過如下命令查看
pgbouncer=# show help;
PAUSE[db]:
這個命令嘗試終止所有的到服務器端連接,首先會等待所有的查詢都完成后,這個命令只有等到所有的查詢都結束時才會返回,用于數據庫重啟。如果有指定[db] 則是終止指定的數據庫;
KILL db:
刷新所有的套接字緩沖區,pgbouncer 將停止對其的監聽,這個命令只有將所有的緩沖區都清空后才會返回。用于pgbouncer 在線重啟
resume [db]:
這個命令配合 pause 跟 suspend 使用的,解除pgbouncer 的終止狀態
shutdown:
關閉pgbouncer
reload:
重載配置文件,并更新所有的已更改的設置
DISABLE:
拒絕指定數據庫上所有新客戶端連接
ENALBLE:
test=# begin;
ERROR: Long transactions not allowed
server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
The connection to the server was lost. Attempting reset: Succeeded.
$dbh = DBI -> connect(dbi:Pg:dbname=test;host=127.0.0.1;port=6000, postgres, ) or die
$DBI::errstr;
更多精彩干貨分享
點擊下方名片關注
IT那活兒
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/129811.html
摘要:這可以通過負載平衡來實現數據分片當問題不是并發查詢的數量,而是數據庫的大小和單個查詢的速度時,可以實現不同的方法。 showImg(https://segmentfault.com/img/remote/1460000018875091); 來源 | 愿碼(ChainDesk.CN)內容編輯 愿碼Slogan | 連接每個程序員的故事 網站 | http://chaindesk.cn...
摘要:這可以通過負載平衡來實現數據分片當問題不是并發查詢的數量,而是數據庫的大小和單個查詢的速度時,可以實現不同的方法。 showImg(https://segmentfault.com/img/remote/1460000018875091); 來源 | 愿碼(ChainDesk.CN)內容編輯 愿碼Slogan | 連接每個程序員的故事 網站 | http://chaindesk.cn...
摘要:作用域閉包裝飾器話聊下篇作用域閉包裝飾器的基礎篇,請看作用域閉包裝飾器話聊上篇我經常看到有人的裝飾器是帶參數的,這又是咋回事呢這個其實很簡單的,你還記得上次我說相當于那么相當于也就是說,返回的是一個裝飾器函數,然后再去裝飾其他函數。 Python Enclosing作用域、閉包、裝飾器話聊下篇 Python Enclosing作用域、閉包、裝飾器的基礎篇,請看Python Enclos...
摘要:進行異常的捕捉與錯誤信息頁面的定制。告訴,這是一個對象,該對象應該被注冊為在應用程序上下文中的。不同框架的不同配置這里以作為演示默認情況下,保護已啟用。你必須配置包含令牌的所有的網頁來工作。該命名結構旨在幫你找到需要的。 導讀: 在上篇文章中我們了解到Spring Boot 的一些常用的外部化配置,在本篇中我們將會繼續對類的配置進行了解 一個簡單的例子[錯誤頁面定制]: 在 Spr...
閱讀 1346·2023-01-11 13:20
閱讀 1684·2023-01-11 13:20
閱讀 1132·2023-01-11 13:20
閱讀 1860·2023-01-11 13:20
閱讀 4100·2023-01-11 13:20
閱讀 2704·2023-01-11 13:20
閱讀 1385·2023-01-11 13:20
閱讀 3597·2023-01-11 13:20