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 数据库了

相关推荐
2401_862880821 小时前
Linux应用层开发 --- 管道
linux·运维·c语言
NJCloud1 小时前
OpenStack(四)——进阶篇之私有网络配置与块存储服务(Cinder)部署
linux·网络·云计算·openstack
raindayinrain1 小时前
深入理解Linux内核--ext文件系统,open/write/read/close执行流程,性能优化
linux·性能优化·文件系统·文件系统调用
jing.wang_20252 小时前
制作一个带用户操作界面的精简Linux操作系统
linux·服务器
沫璃染墨2 小时前
《从零入门Linux系统篇(三十二):文件篇·五——深入理解磁盘:从物理结构到LBA寻址》
linux·运维·服务器·系统架构·硬件架构
chen<>3 小时前
malloc 和 free 背后发生了什么?
java·linux·服务器·操作系统
小二李3 小时前
第12章 nestjs服务端开发:RBAC权限系统设计
java·linux·前端
feilieren3 小时前
ubuntu 安装 docker
linux·ubuntu·docker
Tanner_SL3 小时前
Linux笔记之BASH命令行操作
linux·bash
raindayinrain3 小时前
深入理解Linux内核--文件描述符,文件对象,索引节点,虚拟文件系统,性能优化
linux·虚拟文件系统