-
创建 PgBouncer 配置文件:
首先,创建一个目录来存储 PgBouncer 配置文件:
mkdir -p ~/project/pgbouncer
cd ~/project/pgbouncer
然后,使用 nano
创建配置文件 pgbouncer.ini
:
nano pgbouncer.ini
将以下配置粘贴到 pgbouncer.ini
文件中:
[databases]
mydb = host=127.0.0.1 port=5432 dbname=postgres user=postgres
[pgbouncer]
listen_addr = 127.0.0.1
listen_port = 6432
user = postgres
pool_mode = transaction
server_reset_query = DISCARD ALL
default_pool_size = 20
max_client_conn = 100
[databases]
定义数据库连接。mydb
是一个别名。
[pgbouncer]
配置 PgBouncer。listen_addr
和 listen_port
是 PgBouncer 监听的地址和端口。pool_mode
设置为 transaction
(事务模式)。
按 Ctrl+O
保存文件,然后按 Ctrl+X
退出 nano
。
-
创建用户列表文件:
PgBouncer 需要一个用户列表文件来进行身份验证。创建 userlist.txt
:
nano userlist.txt
添加以下行,将 labex_password
替换为 postgres
用户的实际密码(你可以使用 sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD 'labex_password';"
设置它):
"postgres" "labex_password"
按 Ctrl+O
保存文件,然后按 Ctrl+X
退出 nano
。
-
启动 PgBouncer:
使用配置文件启动 PgBouncer:
pgbouncer pgbouncer.ini
保持此终端打开。打开一个新的终端进行下一步操作。
-
通过 PgBouncer 连接到 PostgreSQL:
在新终端中,使用 psql
通过 PgBouncer 连接到 PostgreSQL:
psql -h 127.0.0.1 -p 6432 -U postgres -d postgres
输入你在 userlist.txt
中设置的密码。如果成功,你将看到 psql
提示符。
psql (13.3, server 1.18.0)
Type "help" for help.
postgres=#