TT Bigdata TT Bigdata
首页
GitHub (opens new window)
JaneTTR

JaneTTR

数据酿造智慧,每一滴都是沉淀!
  • Ambari 安装

    • 常规安装
    • 一键部署
      • Ambari快速部署—3.0.0

      • Ambari快速部署—2.8.0

      • 数据库环境

        • PostgreSQL 快速安装脚本
          • 一、准备环境
          • 二、PostgreSQL 安装步骤
            • 2.1 使用系统软件仓库安装
            • 2.2 初始化数据库
          • 三、服务启动与访问授权
            • 3.1 启动 PostgreSQL 并设置开机自启
            • 3.2 配置监听地址与远程访问
            • 修改监听
            • 设置访问控制(pg_hba.conf)
            • 3.3 重启服务使配置生效
          • 四、设置默认 postgres 密码
          • 五、一键部署脚本(Kylin V10 适配版)
      • JDK环境

      • MAVEN环境

      • GRADLE环境

      • CONDA环境

      • R环境

  • 组件安装

  • Kerberos 旧版专题

  • Ranger 旧版专题

  • 旧版部署
  • Ambari 安装
  • 一键部署
  • 数据库环境
JaneTTR
2025-11-15
目录
一、准备环境
二、PostgreSQL 安装步骤
2.1 使用系统软件仓库安装
2.2 初始化数据库
三、服务启动与访问授权
3.1 启动 PostgreSQL 并设置开机自启
3.2 配置监听地址与远程访问
修改监听
设置访问控制(pg_hba.conf)
3.3 重启服务使配置生效
四、设置默认 postgres 密码
五、一键部署脚本(Kylin V10 适配版)

PostgreSQL 快速安装脚本适用于-kylin10-x86_64

# 一、准备环境 KylinV10

Kylin V10 默认提供 PostgreSQL 版本,但各厂商镜像差异较大,不同 CPU 架构(龙芯、飞腾、兆芯、海光)均保持一致的 rpm 包命名方式。本指导统一基于 系统自带软件仓库,避免自行添加第三方源导致的不兼容。

默认用户:postgres 默认数据库:postgres 默认密码:postgres_pwd
查看系统架构
uname -a
cat /etc/.ky10arch
1
2

# 二、PostgreSQL 安装步骤

# 2.1 使用系统软件仓库安装

Kylin V10 不推荐外接 PGDG(阿里云)源,因此直接从官方源安装即可。

yum clean all && yum makecache
yum install -y postgresql postgresql-server postgresql-contrib
1
2

安装完成后,将会生成以下关键文件:

文件路径 用途
/usr/bin/postgres PostgreSQL 运行主程序
/usr/bin/psql 客户端工具
/var/lib/pgsql/data 默认数据目录(初始化后生成)

# 2.2 初始化数据库

Kylin V10 使用 postgresql-setup 工具初始化数据目录:

postgresql-setup --initdb --unit postgresql
1

初始化完成后,目录结构如下:

/var/lib/pgsql/data/
 ├── postgresql.conf
 ├── pg_hba.conf
 ├── base/
 └── pg_wal/
1
2
3
4
5

提示

如需自定义数据目录,可在初始化前修改 /etc/sysconfig/pgsql/postgresql 中的 PGDATA。


# 三、服务启动与访问授权

# 3.1 启动 PostgreSQL 并设置开机自启

systemctl enable postgresql
systemctl start postgresql
systemctl status postgresql
1
2
3

# 3.2 配置监听地址与远程访问

# 修改监听

sed -i "s/^#listen_addresses.*/listen_addresses = '*'/" /var/lib/pgsql/data/postgresql.conf
1

# 设置访问控制(pg_hba.conf)

echo "host all all 0.0.0.0/0 md5" >> /var/lib/pgsql/data/pg_hba.conf
1

安全提醒

0.0.0.0/0 仅用于内网环境。生产环境请仅允许运维网段。


# 3.3 重启服务使配置生效

systemctl restart postgresql
1

# 四、设置默认 postgres 密码

sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD 'postgres_pwd';"
1

提示

CloudBeaver、Ambari、Superset 等系统均可直接使用该账户连接。


# 五、一键部署脚本(Kylin V10 适配版)

你可以使用以下脚本自动完成 PostgreSQL 安装和配置:

#!/usr/bin/env bash
set -euo pipefail

# ===== 固定配置 =====
PG_PASSWORD="postgres_pwd"        # 固定密码
ALLOW_CIDR="0.0.0.0/0"            # 允许远程访问网段
LISTEN_ADDR="*"                   # 监听地址
PG_SERVICE="postgresql"
PG_DATA_DIR="/var/lib/pgsql/data"
# =====================

echo "=== [1/10] 停止旧服务(如存在) ==="
systemctl stop "${PG_SERVICE}" 2>/dev/null || true

echo "=== [2/10] 卸载旧版 PostgreSQL ==="
if command -v dnf >/dev/null 2>&1; then
  PKG=dnf
elif command -v yum >/dev/null 2>&1; then
  PKG=yum
else
  echo "❌ 未发现 dnf/yum,脚本仅适用于 Kylin V10(RPM 系)" >&2
  exit 1
fi
$PKG remove -y postgresql postgresql-server postgresql-contrib postgresql-libs || true

echo "=== [3/10] 清理旧数据目录 ==="
rm -rf "${PG_DATA_DIR}" /var/lib/pgsql /var/run/postgresql /etc/postgresql /etc/systemd/system/${PG_SERVICE}.service || true
mkdir -p "${PG_DATA_DIR}"
chown -R postgres:postgres /var/lib/pgsql || true

echo "=== [4/10] 安装 Kylin 官方 PostgreSQL(系统源) ==="
$PKG install -y postgresql postgresql-server postgresql-contrib

echo "=== [5/10] 初始化数据库 ==="
postgresql-setup --initdb --unit "${PG_SERVICE}"

echo "=== [6/10] 修改配置:监听与认证 ==="
CONF="${PG_DATA_DIR}/postgresql.conf"
HBA="${PG_DATA_DIR}/pg_hba.conf"

# 修改监听地址
if grep -q "^[#]*listen_addresses" "$CONF"; then
  sed -i "s/^[#]*listen_addresses.*/listen_addresses = '${LISTEN_ADDR}'/" "$CONF"
else
  echo "listen_addresses = '${LISTEN_ADDR}'" >>"$CONF"
fi

# 修改认证方式为 md5(保证用户名密码能登录)
cp -a "$HBA" "${HBA}.bak.$(date +%F-%H%M)"
sed -ri "s/^(local[[:space:]]+all[[:space:]]+all[[:space:]]+).*/\1md5/" "$HBA"
sed -ri "s/^(host[[:space:]]+all[[:space:]]+all[[:space:]]+127\.0\.0\.1\/32[[:space:]]+).*/\1md5/" "$HBA"
sed -ri "s/^(host[[:space:]]+all[[:space:]]+all[[:space:]]+::1\/128[[:space:]]+).*/\1md5/" "$HBA"
grep -q "host all all ${ALLOW_CIDR} md5" "$HBA" || echo "host all all ${ALLOW_CIDR} md5" >>"$HBA"

command -v restorecon >/dev/null 2>&1 && restorecon -R /var/lib/pgsql || true

echo "=== [7/10] 启动服务并设置开机自启 ==="
systemctl enable "${PG_SERVICE}"
systemctl start "${PG_SERVICE}"

echo "=== [8/10] 临时放开本地认证以重置密码 ==="
if ! grep -q "local   all             postgres                                trust" "$HBA"; then
  echo "local   all             postgres                                trust" | sed -i '1i\'"$(
    echo 'local   all             postgres                                trust'
  )" "$HBA"
fi
systemctl reload "${PG_SERVICE}"

echo "=== [9/10] 设置 postgres 密码 ==="
sudo -iu postgres psql -tAc "ALTER USER postgres WITH PASSWORD '${PG_PASSWORD}';" >/dev/null 2>&1 || true

# 恢复 md5 认证
sudo sed -i '/local   all             postgres                                trust/d' "$HBA"
systemctl reload "${PG_SERVICE}"

echo "=== [10/10] 开放防火墙端口 5432 ==="
if command -v firewall-cmd >/dev/null 2>&1; then
  firewall-cmd --add-service=postgresql --permanent || firewall-cmd --add-port=5432/tcp --permanent || true
  firewall-cmd --reload || true
fi

echo ""
echo "✅ PostgreSQL 已成功安装并可使用用户名密码连接"
echo "-------------------------------------------"
echo " - 服务名: ${PG_SERVICE}"
echo " - 数据目录: ${PG_DATA_DIR}"
echo " - 监听: ${LISTEN_ADDR}:5432"
echo " - 允许网段: ${ALLOW_CIDR}"
echo " - 用户: postgres"
echo " - 密码: ${PG_PASSWORD}"
echo "-------------------------------------------"
echo ""
echo "▶ 测试命令(本机):"
echo "  psql -U postgres -h 127.0.0.1 -p 5432 -W"
echo "▶ 测试命令(远程):"
echo "  psql -U postgres -h <服务器IP> -p 5432 -W"
echo ""
echo "输入密码:postgres_pwd,即可连接。"

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#Ambari#一键部署#自动化部署#PostgreSQL#CloudBeaver#Kylin V10
【Centos7.9】强力卸载脚本
安装JDK1.8

← 【Centos7.9】强力卸载脚本 安装JDK1.8→

最近更新
01
当前版本 2026/08
08-29
02
把 Ambari Server HA 稳稳地跑起来
08-17
03
从一次启用操作追到主备就绪
08-17
更多文章>
Theme by Vdoing | Copyright © 2017-2026 JaneTTR | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式