# 1. 添加 PostgreSQL 官方仓库
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# 2. 禁用冲突模块
sudo dnf -qy module disable postgresql
# 3. 安装 PostgreSQL 17 服务器
sudo dnf install -y postgresql17-server
# 4. 创建自定义数据目录
sudo mkdir -p /mnt/data/pg_data
sudo chown postgres:postgres /mnt/data/pg_data
sudo chmod 700 /mnt/data/pg_data
# 5. 初始化数据库到指定目录
sudo -u postgres /usr/pgsql-17/bin/initdb -D /mnt/data/pg_data
# 6. 配置 systemd 服务使用自定义目录
sudo mkdir -p /etc/systemd/system/postgresql-17.service.d
sudo tee /etc/systemd/system/postgresql-17.service.d/override.conf <<EOF
[Service]
Environment=PGDATA=/mnt/data/pg_data
EOF
# 7. 重新加载 systemd 并启动服务
sudo systemctl daemon-reload
sudo systemctl enable postgresql-17
sudo systemctl start postgresql-17
# 8. 验证安装
sudo systemctl status postgresql-17
# 9. 连接数据库
sudo -i -u postgres psql
# 10. 修改管理员密码
ALTER USER postgres WITH PASSWORD '你的新密码';
# 11. 创建应用数据库和用户
-- 创建新用户并设置密码
CREATE USER myuser WITH PASSWORD 'StrongPassword123!';-- 创建数据库并指定所有者
CREATE DATABASE mydb OWNER myuser;-- 授予用户所有权限
GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;
# 12. 配置远程访问
修改监听地址:
编辑 /mnt/data/pg_data/postgresql.conf 文件listen_addresses = '*' # 取消注释并修改为'*'以监听所有IP
配置客户端认证:
编辑pg_hba.conf文件(与postgresql.conf同目录):# 在文件末尾添加一行
host all all 0.0.0.0/0 md5重启服务使配置生效:
sudo systemctl restart postgresql-17
4486

被折叠的 条评论
为什么被折叠?



