CentOS 7 上安装 PostgreSQL

方法一:使用 PostgreSQL 官方仓库(推荐)

1. 安装官方仓库

安装 PostgreSQL 官方仓库

sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

2. 安装 PostgreSQL

查看可用的 PostgreSQL 版本

yum list postgresql*

安装 PostgreSQL 14(推荐用于 SonarQube)

sudo yum install -y postgresql14-server

或者安装其他版本

sudo yum install -y postgresql13-server

sudo yum install -y postgresql15-server

3. 初始化数据库

初始化数据库

sudo /usr/pgsql-14/bin/postgresql-14-setup initdb

启动 PostgreSQL 服务

sudo systemctl start postgresql-14

设置开机自启

sudo systemctl enable postgresql-14

PostgreSQL 基本配置

1. 设置 postgres 用户密码

切换到 postgres 用户

sudo -i -u postgres

进入 PostgreSQL 命令行

psql

在 psql 中设置密码

ALTER USER postgres PASSWORD 'your_password';

\q

exit

2. 配置远程访问(可选)

编辑配置文件

sudo vi /var/lib/pgsql/14/data/postgresql.conf

修改以下行:

listen_addresses = '*' # 允许所有 IP 连接

port = 5432 # 端口号

3. 配置访问权限

编辑 pg_hba.conf

sudo vi /var/lib/pgsql/14/data/pg_hba.conf

在文件末尾添加:

允许所有 IP 通过密码访问

host all all 0.0.0.0/0 md5

或者允许本地网络访问

host all all 192.168.1.0/24 md5

4. 重启服务

sudo systemctl restart postgresql-14

📊 创建 SonarQube 数据库和用户

# 切换到 postgres 用户
sudo -i -u postgres

# 进入 PostgreSQL 命令行
psql

# 创建 SonarQube 数据库用户
CREATE USER sonar WITH PASSWORD 'sonar_password';

# 创建 SonarQube 数据库
CREATE DATABASE sonarqube OWNER sonar;

# 授予权限
GRANT ALL PRIVILEGES ON DATABASE sonarqube TO sonar;

# 退出
\q
exit

🛠️ 常用管理命令

检查服务状态

sudo systemctl status postgresql-14

启动服务

sudo systemctl start postgresql-14

停止服务

sudo systemctl stop postgresql-14

重启服务

sudo systemctl restart postgresql-14

查看版本

sudo -i -u postgres psql -c "SELECT version();"

🔒 防火墙配置

开放 PostgreSQL 端口

sudo firewall-cmd --permanent --add-port=5432/tcp

sudo firewall-cmd --reload

📝 验证安装

测试连接

sudo -i -u postgres psql -c "SELECT version();"

连接 SonarQube 数据库测试

psql -h localhost -U sonar -d sonarqube -W

⚠️ 重要提示

  1. 版本选择:推荐使用 PostgreSQL 12-15,与 SonarQube 9.9 兼容性最好

  2. 安全配置:生产环境请使用强密码,并限制访问 IP

  3. 备份配置:定期备份 PostgreSQL 配置文件和数据

  4. 性能调优:根据服务器配置调整 PostgreSQL 内存参数

推荐使用方法一,这样可以获得更新的 PostgreSQL 版本和更好的性能。安装完成后,您就可以配置 SonarQube 使用这个 PostgreSQL 数据库了

相关推荐
Yana.nice3 小时前
Linux 只保留 30 天内日志(find命令删除日志文件)
linux·运维·chrome
DFT计算杂谈7 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
Zhang~Ling8 小时前
从 fopen 到 struct file:从零开始拆解 Linux 文件 I/O
linux·运维·服务器
DeeplyMind8 小时前
Linux 深入 per-VMA lock:Linux 缺页路径如何摆脱 mmap_lock
linux·per-vma lock
爱写代码的森8 小时前
蒙三方库 | harmony-utils之FileUtil文件重命名与属性查询详解
linux·运维·服务器·华为·harmonyos·鸿蒙·huawei
XMAIPC_Robot9 小时前
软硬协同实时控制|RK3588业务调度+FPGA硬件时序,ethercat实现半导体设备微秒级响应(125us)
linux·arm开发·人工智能·fpga开发
重生的黑客10 小时前
Linux 进程优先级、切换与调度:从孤儿进程到 O(1) 调度模型
linux·运维·服务器·进程优先级·nice
骑上单车去旅行11 小时前
MD5校验对比脚本
linux·服务器·windows
平生幻11 小时前
Linux 常用命令
linux
ShirleyWang01212 小时前
让headlamp控制台能访问
linux·服务器·python·k8s·k3s