Ubuntu 24.04 26.04上安装 PostgreSQL 主要有两种推荐方式:使用系统默认源(最简单、稳定)或使用 PostgreSQL 官方 APT 源(获取最新版本和及时补丁)
方法一:使用 Ubuntu/Lubuntu 默认软件源(推荐新手)
这是最简便的方法,Lubuntu 26.04 默认仓库中通常包含经过测试的稳定版本(根据当前时间点,通常为 PostgreSQL 18)。
1. 更新软件包列表
打开终端,执行以下命令以确保获取最新的软件索引:
sudo apt update
sudo apt upgrade -y
2. 安装 PostgreSQL 及其贡献包
postgresql-contrib 包含许多有用的扩展和工具(如 pgcrypto),建议一并安装:
sudo apt install postgresql postgresql-contrib
3. 验证安装与服务状态
安装完成后,PostgreSQL 服务通常会自动启动。你可以检查其状态:
sudo systemctl status postgresql
如果显示 active (exited) 或 active (running),则表示服务运行正常。
4. 查看版本信息
psql --version
# 或者
sudo -u postgres psql -c "SELECT version();"
方法二:使用 PostgreSQL 官方 APT 源(推荐生产环境/需要最新版)
如果你需要比 Ubuntu 默认源更新的版本,或者希望获得 PostgreSQL 社区直接提供的最新安全补丁,建议使用官方仓库。
1. 安装必要的依赖工具
sudo apt install -y curl ca-certificates gnupg lsb-release
2. 导入 PostgreSQL 官方 GPG 密钥
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --dearmor -o /usr/share/keyrings/postgresql-archive-keyring.gpg
注意:上述命令将密钥保存为现代 APT 推荐的格式。
3. 添加官方仓库并更新索引
echo "deb [signed-by=/usr/share/keyrings/postgresql-archive-keyring.gpg] http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
sudo apt update
4. 安装指定版本的 PostgreSQL
你可以安装默认的最新版,也可以指定版本(例如 PostgreSQL 18):
# 安装最新稳定版
sudo apt install postgresql
# 或者指定版本,例如 PostgreSQL 18
sudo apt install postgresql-18 postgresql-contrib-18
基础配置与使用
安装完成后,你需要了解如何登录和管理数据库。
1. 切换到 postgres 用户
PostgreSQL 安装后会自动创建一个名为 postgres 的系统用户。默认情况下,你无法直接使用 root 或其他用户登录数据库,必须切换到该用户:
sudo -i -u postgres
2. 进入 PostgreSQL 命令行界面
在 postgres 用户下,输入以下命令进入 SQL 交互界面:
psql
退出界面请输入 q。
3. 修改 postgres 用户密码(可选但推荐)
为了安全起见,建议为数据库超级用户设置密码:
-- 在 psql 界面中执行
ALTER USER postgres WITH PASSWORD '你的强密码';
4. 创建新用户和数据库(可在navicat实现)
允许远程连接(如需从其他机器访问)
默认情况下,PostgreSQL 仅监听本地连接(localhost)。如果需要远程访问,需修改配置文件。
1. 修改 postgresql.conf
找到配置文件路径(通常在 /etc/postgresql/<版本号>/main/postgresql.conf):
sudo nano /etc/postgresql/18/main/postgresql.conf
找到 listen_addresses 行,取消注释并修改为:
listen_addresses = '*'
2. 修改 pg_hba.conf
编辑同目录下的 pg_hba.conf 文件,添加允许远程 IP 连接的规则:
sudo nano /etc/postgresql/18/main/pg_hba.conf
在文件末尾添加(请根据实际安全需求限制 IP 范围):
# 类型 数据库 用户 地址 认证方法
host all all 0.0.0.0/0 md5
注意:使用 md5 或 scram-sha-256 进行密码认证。
3. 重启 PostgreSQL 服务
sudo systemctl restart postgresql
4. 配置防火墙(UFW)
如果启用了防火墙,需开放 PostgreSQL 默认端口 5432:
sudo ufw allow 5432/tcp
|
华旅网络 |