環境:
系統:centos7.9
數據庫:postgresql18beta1
#PostgreSQL 18 已轉向 DocBook XML 構建體系(SGML 未來將被棄用)。需要安裝 XML 工具鏈,如下:
yum install -y docbook5-style-xsl libxslt docbook-style-xsl xmlto fop
一、postgresql18beta1一鍵安裝腳本如下,以root用戶執行:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#!/bin/bash
# 一鍵安裝 PostgreSQL 18腳本
# 請先將 postgresql-18beta1.tar.gz 放在當前目錄下,本腳本中上傳至/root目錄下
# 1. 創建 postgres 用戶(如已存在則跳過)
if ! id postgres &>/dev/null; then
? ? useradd postgres
? ? echo "postgres" | passwd --stdin postgres 2>/dev/null || echo "postgres:postgres" | chpasswd
fi
# 2. 創建目錄
mkdir -p /postgresql/{pg18,pgdata,arch,soft}
chown -R postgres. /postgresql/
chmod -R 700 /postgresql/
mv /root/postgresql-18beta1.tar.gz /postgresql/soft/
chown postgres. /postgresql/soft/postgresql-18beta1.tar.gz
# 3. 安裝依賴
yum install -y docbook5-style-xsl libxslt docbook-style-xsl xmlto fop bison perl-ExtUtils-Embed readline-devel zlib-devel pam-devel tcl-devel libxml2-devel perl-devel libxml2-devel libxslt-devel openldap-devel python-devel gcc gcc-c++ openssl-devel make cmake ?libicu libicu-devel flex wget
# 4. 解壓并編譯安裝 PostgreSQL
su - postgres <<EOF
cd /postgresql/soft
tar zxvf postgresql-18beta1.tar.gz
cd postgresql-18beta1
./configure --prefix=/postgresql/pg18
make world && make install-world
EOF
# 5. 配置環境變量
su - postgres <<EOF
cat >> ~/.bash_profile <<'EOP'
export LANG=en_US.UTF-8
export PGHOME=/postgresql/pg18
export PGDATA=/postgresql/pgdata
export LD_LIBRARY_PATH=\$PGHOME/lib:\$LD_LIBRARY_PATH
export PATH=\$PGHOME/bin:\$PATH
EOP
source ~/.bash_profile
EOF
echo "PostgreSQL 18 安裝完成。請以 postgres 用戶登錄并初始化數據庫。"
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
二、手動初始化數據庫集簇
根據需要,修改postgresql.conf和pg_hba.conf,修改完成后,啟動數據庫。