准备工作
源码文件下载地址 postgresql 12.2
安装步骤
- 文件上传至服务器(我是上传到/app目录下,用户可以自己指定),解压
tar -zxvf postgresql-12.2.tar.gz
- 服务器依赖包检查(保证最小依赖的安装,不然后续安装会出现缺少依赖的提示)
rpm -qa | grep gcc rpm -qa | grep zlib rpm -qa | grep readline
3. 创建postgres用户加入postgres组
-
在/usr/local目录下创建postgres12.2文件夹
mkdir postgres12.2
-
给postgres分配postgres12.2文件夹操作权限
sudo chown -R postgres:postgres postgres12.2
-
在postgres用户所在目录下找到.bash_profile文件,配置环境变量
export PGPORT=1922 export LANG=en_US.utf8 export PG_HOME=/usr/local/postgres12.2 export PGDATA=$PG_HOME/data export LD_LIBRARY_PATH=$PG_HOME/lib export PATH=$PG_HOME/bin:$PATH
-
cd到安装包解压的位置,使用postgres用户依次执行下列命令安装
./configure --prefix /usr/local/postgres12.2 make make install
-
检查是否安装成功,安装成功该命令会打印postgresql的版本信息
psql --version
建库步骤
-
将所在目录切换到/usr/local/postgres12.2,使用postgres用户创建DATA目录
mkdir $PGDATA
-
初始化DB(- -data-checksums 在主从复制的时候用,单机学习时可以省略)
initdb -W
执行上述命令时,默认为数据库创建postgres用户,会提示输入postgres用户的密码,不回显。
-
启动数据库(停止的话使用 pg_ctl stop )
pg_ctl start
-
检查数据库进程
ps -ef |grep postgres
- 使用psql命令登录到数据库
问题记录
- 安装过程中缺少最小依赖readline-devel(提示啥装啥)
pyum install -y readline-devel ```
- 安装结束使用查看版本命令提示 未找到命令,可能是用户配置文件.bash_profile中PATH路径有问题,需要认真排查一下看看