PostgreSQL 操作系统准备
1 背景知识
本文主要介绍在 LInux 上准备 PostgreSQL 的安装环境。
2 执行优化脚本
sh optimize_system_conf.sh
关于一键优化脚本的具体说明请参见:optimize_system_conf
脚本说明:
- 创建kingbase 用户并 密码永不过期。
- 配置 LInux 内核参数。
- 配置文件打开数和进程打开数。
- 检查文件打开数和进程打开数。
- 关闭 Remove IPC 功能。
- 配置 sshd 超时 断开会话的问题,并允许
root
用户登录,还有一些提高连接速度的一些参数。 - 关闭操作系统自动维护任务。
- 关闭 SEliux MAC功能。
- 关闭防火墙。
- 关闭Uos 的激活程序。
3 创建相关目录
#root>
mkdir -p /soft
mkdir -p /usr/local/pgsql
chown postgres:postgres /soft /usr/local/pgsql
4 配置用户环境变量
su - postgres
#postgresql>
cat >> ~/.bash_profile << EOF
export PGPORT=5432
export PGHOME=/usr/local/pgsql
export PATH=\$PGHOME/bin:\$PATH
export PGDATA=\$PGHOME/data
export LD_LIBRARY_PATH=\$PGHOME/lib
export LANG=en_US.UTF-8
EOF
source ~/.bash_profile
5 安装软件依赖包
5.1 最小依赖包
#root>
dnf install gcc gcc-c++ zlib-devel readline-devel wget psmisc tcl tcl-devel tk-devel -y
5.2 全部依赖包
5.2.1 PG12
#root>
dnf install gcc gcc-c++ zlib-devel readline-devel psmisc perl-ExtUtils-Embed pam-devel libxml2-devel libxslt-devel openldap-devel python39-devel python2-devel openssl-devel cmake tcl tcl-devel tk-devel libicu-devel bash-completion systemd-devel bison flex docbook-dtds docbook-style-xsl libxslt lz4-devel libzstd-devel wget git vim -y
5.2.2 PG15
#root>
dnf install gcc gcc-c++ zlib-devel readline-devel psmisc perl-ExtUtils-Embed pam-devel libxml2-devel libxslt-devel openldap-devel python39-devel python2-devel openssl-devel cmake tcl tcl-devel tk-devel libicu-devel bash-completion systemd-devel bison flex docbook-dtds docbook-style-xsl libxslt lz4-devel libzstd-devel wget git vim krb5-devel libuuid-devel perl-App-cpanminus.noarch -y
Warning
这里用python2 还是python3 ,官网两种都支持。所以都安装。
5.2.3 PG16
#root>
dnf install gcc gcc-c++ zlib-devel readline-devel psmisc perl-ExtUtils-Embed pam-devel libxml2-devel libxslt-devel openldap-devel python3-devel openssl-devel cmake tcl tcl-devel tk-devel libicu-devel bash-completion systemd-devel bison flex docbook-dtds docbook-style-xsl libxslt lz4-devel libzstd-devel wget git vim -y
5.2.4 PG17
#root>
dnf install gcc gcc-c++ zlib-devel readline-devel psmisc perl-ExtUtils-Embed pam-devel libxml2-devel libxslt-devel openldap-devel python3-devel openssl-devel cmake tcl tcl-devel tk-devel libicu-devel bash-completion systemd-devel bison flex docbook-dtds docbook-style-xsl libxslt lz4-devel libzstd-devel krb5-devel libuuid-devel perl-FindBin wget git vim -y
5.3 LLVM JIT 环境配置
想要让postgresql 支持JIT ,请配置 LLVM 环境。
6 配置中文环境(option)
7 源码下载
7.1 PG12
#postgres>
cd /soft
wget https://ftp.postgresql.org/pub/source/v12.19/postgresql-12.19.tar.gz
7.2 PG15
#postgres>
cd /soft
wget https://ftp.postgresql.org/pub/source/v15.7/postgresql-15.7.tar.gz
7.3 PG16
#postgres>
cd /soft
wget https://ftp.postgresql.org/pub/source/v16.3/postgresql-16.3.tar.gz
7.4 Lastest
#postgres>
cd /soft
git clone git://git.postgresql.org/git/postgresql.git
git tag
git checkout -b REL_17_RC1
git branch
* REL_17_RC1
master
Note
到此为止打快照为 DB_INSTALL_ENV
。