在腾讯云服务器(CVM)上安装 PostgreSQL 是非常常见的操作。根据你的需求,主要有两种推荐方式:
✅ 推荐方案一:使用腾讯云数据库 PostgreSQL(PaaS 服务)
适合场景:生产环境、需要高可用、自动备份、监控、无需运维数据库服务器。
- 优点:开箱即用、自动备份、弹性扩容、官方技术支持。
- 缺点:按量付费或包年包月,成本相对较高;无法直接登录服务器内部操作文件系统。
- 操作:登录 腾讯云控制台 → 云产品 → 数据库 → PostgreSQL → 创建实例。
✅ 推荐方案二:在 CVM 上自行安装(IaaS 方式)
适合场景:开发测试、低成本部署、需要自定义配置、学习用途。
以下以 Ubuntu/Debian 和 CentOS/RHEL 为例,提供详细步骤。
🐧 方法一:Ubuntu/Debian 系统安装
1. 更新软件源
sudo apt update
sudo apt upgrade -y
2. 安装 PostgreSQL
sudo apt install postgresql postgresql-contrib -y
3. 启动并设置开机自启
sudo systemctl enable postgresql
sudo systemctl start postgresql
sudo systemctl status postgresql
4. 验证安装
sudo -u postgres psql -c "SELECT version();"
5. 配置远程访问(可选)
默认只允许本地连接。如需远程访问:
(1)修改监听地址
编辑文件 /etc/postgresql/<version>/main/postgresql.conf:
sudo nano /etc/postgresql/14/main/postgresql.conf # 版本号可能不同
找到 listen_addresses,改为:
listen_addresses = '*'
(2)配置客户端认证
编辑文件 /etc/postgresql/<version>/main/pg_hba.conf:
sudo nano /etc/postgresql/14/main/pg_hba.conf
在末尾添加一行(允许所有 IP 连接,生产环境建议指定 IP):
host all all 0.0.0.0/0 md5
(3)重启 PostgreSQL
sudo systemctl restart postgresql
(4)开放安全组端口
在腾讯云控制台 → 你的 CVM → 安全组 → 入方向规则 → 添加 TCP 协议,端口 5432。
(5)设置密码
sudo -u postgres psql
ALTER USER postgres WITH PASSWORD 'your_strong_password';
q
🐧 方法二:CentOS/RHEL 系统安装
1. 安装 PostgreSQL 仓库(RHEL/CentOS 8+)
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
2. 安装 PostgreSQL
sudo dnf install -y postgresql-server postgresql-contrib
3. 初始化数据库
sudo /usr/pgsql-14/bin/postgresql-14-setup initdb # 注意版本号
4. 启动并设置开机自启
sudo systemctl enable postgresql-14
sudo systemctl start postgresql-14
sudo systemctl status postgresql-14
5. 配置远程访问
类似 Ubuntu,需修改:
/var/lib/pgsql/14/data/postgresql.conf→listen_addresses = '*'/var/lib/pgsql/14/data/pg_hba.conf→ 添加host all all 0.0.0.0/0 md5
6. 重启并设置密码
sudo systemctl restart postgresql-14
sudo -u postgres psql
ALTER USER postgres WITH PASSWORD 'your_strong_password';
q
🔒 安全建议
- 不要使用默认端口暴露公网:除非必要,建议通过 SSH 隧道连接。
- 强密码:确保
postgres用户密码复杂。 - 最小权限原则:为每个应用创建独立数据库和用户,而非共用
postgres超级用户。 - 防火墙/安全组:仅开放必要的 IP 到 5432 端口。
- 定期备份:使用
pg_dump或腾讯云提供的备份功能。
🧪 测试连接
从另一台机器测试连接:
psql -h <你的CVM公网IP> -U postgres -d postgres -p 5432
输入密码后若能进入 SQL 提示符,则安装成功。
如你需要更详细的配置(如主从复制、性能调优),请告诉我你的具体场景!
云知识CLOUD