postgresql(tbase)修改最大连接数后节点无法启动

今天postgresql报了个Failed to get pooled connections错误,是最大连接数不够,总集那边让我修改一下最大连接数,然后出了一个问题,简单记录一下。
在这里插入图片描述

  1. 修改最大连接数为3000后,命令查询仍是默认的100;
    原因:postgresql.conf中,max_connections变量有两个,一开始我/max_connections搜索只改了第一个,第二个还是100,所以它还是按100算;
    一个节点有cn和dn一共三个配置文件要改,分别在crood、dn_master和dn_salvey文件夹中(好像是这样写,时间比较紧,简单记录,大概写一下)。
  2. pgxc_ctl 下,执行pgxc stop all然后pgxc start all后,cn和dn节点无法启动;
    当时吓得我,以为整个库挂了,查日志查到了原因:
    postgresql.conf配置文件中,除了max_connections(最大连接数)变量外,还有一个max_pool_size(最大连接池)变量,而日志中报的错就是:max_pool_size不能小于max_connections,我在配置文件中没有修改这个参数,它还是默认的100,小于了上面设置的3000,所以各节点都无法启动。改了后就好了。

记录一下,以备查询。

在Docker环境下部署PostgreSQL,并设置大连为10,可以按照以下步骤操作: 1. **安装Docker**: 首先确保您的系统已经安装了Docker。如果没有,可以从官网下载并安装适用于您操作系统的版本。 2. **拉取PostgreSQL镜像**: 使用Docker命令从Docker Hub拉取PostgreSQL官方镜像,例如 `docker pull postgres`。 3. **创建容器**: 创建一个新的Dockerfile,内容通常类似: ```Dockerfile FROM postgres:latest # 设置环境变量PGDATA用于持久化据卷 ENV PGDATA /var/lib/postgresql/data # 设置大连 COPY pg_hba.conf $PGDATA/pg_hba.conf COPY config.postgres $PGDATA/postgresql.conf CMD ["postgres", "-c", "max_connections=10"] ``` 这里假设你有pg_hba.conf和config.postgres配置文件分别设置了大连。 4. **构建镜像**: 如果有Dockerfile,在其所在的目录运行 `docker build -t your-image-name .` 来构建自定义镜像。 5. **运行容器**: 使用刚刚创建的镜像启动容器,同时挂载据卷以保存据: ```bash docker run -d --name your-postgres-container \ -p <host-port>:5432 \ -v $(pwd)/data:/var/lib/postgresql/data \ -e POSTGRES_USER=<your-user> \ -e POSTGRES_PASSWORD=<your-password> \ your-image-name ``` 替换 `<host-port>` 为你希望暴露给主机的端口,以及 `<your-user>` 和 `<your-password>` 为数据库用户名和密码。 6. **检查配置**: 容器运行后,您可以登录查看配置确认大连已更改: ```bash docker exec -it your-postgres-container psql -U <your-user> \c postgres SELECT * FROM pg_settings WHERE name = 'max_connections'; ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值