postgresql-13.1源码包编译安装(必定成功)

 

前言:

  这个版本是安装在centos 7.4 的服务器上面,已经清理了防火墙策略,但是没有修改内核文件数,安装的难点在于环境变量配置,非安装配置本身。

1、安装准备

登录官网下载需要的版本,现在用的是13.1, https://www.postgresql.org/ftp/source/v13.1/ssss
postgresql-13.1源码包编译安装(必定成功)

2、安装依赖包

yum install  -y gcc gcc-c++ cmake ncurses-devel perl zlib*

yum -y install -y readline-devel readline 

因为依赖包没弄好,编译时./configure --prefix=/app/pg13.1/pgdata;

出现过的报错
postgresql-13.1源码包编译安装(必定成功)

3、配置安装、运行用户pgsql

useradd pgsql

usermod -G pgsql pgsql

mkdir  -p /app/pg13.1/

#若是pgsql没有这个目录的权限,会导致最后的make insall 失败

chown -R pgsql.pgsql /app/pg13.1/

修改安装目录权限

chown -R pgsql.pgsql postgresql-13.1

4、开始安装

su - pgsql,切换用户,

然后进入安装目录,开始安装,一般装好了依赖包,不会出现什么意外

注意:下面的操作都是使用 pgsql进行的,若是需要安装依赖包,再另外切回root

./configure --prefix=/app/pg13.1/pgdata

make
postgresql-13.1源码包编译安装(必定成功)
make install
postgresql-13.1源码包编译安装(必定成功)

5、初始化数据库

su - pgsql

创建数据库目录data

mkdir -p /app/pg13.1/pgdata/data

给/home/pgsql/.bash_profile文件添加下面的内容,

注意:这个初始化的格式配置,网上很多版本都不行,这个是多次尝试最终可以成功的版本

export PGHOME=/app/pg13.1/pgdata

export PGDATA=/app/pg13.1/pgdata/data

export PATH=$PGHOME/bin:$PATH

export MANPATH=$PGHOME/share/man:$MANPATH

export LANG=en_US.utf8

export DATE=`date +"%Y-%m-%d %H:%M:%S"`

export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH

生效环境变量配置

source /home/pgsql/.bash_profile

若是可以tab出 initdb 命令,那么代表配置生效,若是不行,重新su - pgsql 试一试

开始初始化数据库

initdb -D /app/pg13.1/pgdata/data/
postgresql-13.1源码包编译安装(必定成功)

创建日志目录空文件,主要是用于记录数据库的启动以及运行日志

mkdir /app/pg13.1/log/

touch  /app/pg13.1/log/server.log

6、启动数据库

pg_ctl -D /app/pg13.1/pgdata/data/ -l /app/pg13.1/log/server.log  start # 启动数据库

  pg_ctl -D /app/pg13.1/pgdata/data/ -l /app/pg13.1/log/server.log  stop #关闭数据库

postgresql-13.1源码包编译安装(必定成功)

postgresql-13.1源码包编译安装(必定成功)postgresql-13.1源码包编译安装(必定成功)

7、基本配置


在这个配置文件pg_hba.conf里的host,换成截图的配置

postgresql-13.1源码包编译安装(必定成功)

  修改这个文件的postgresql.conf port,数据库访问端口,默认端口是5432

postgresql-13.1源码包编译安装(必定成功)
修改这个文件的postgresql.conf 的数据库访问地址,可以保持默认或者按需要填写地址
postgresql-13.1源码包编译安装(必定成功)

 然后启动数据库,让配置生效;

 登入数据库,第一次登录会报错,那是因为,没有那个库,所以需要先创建库;

  \l #列出里面的库

  \q # 退出

  createdb --port=6666 pgsql

  psql --port=6666

  postgresql-13.1源码包编译安装(必定成功)

 

 至此,数据库安装完成。

 

postgresql-13.1源码包编译安装(必定成功)

上一篇:SQL实战 9.网站访客最近登录日期系列


下一篇:mysql使用optimize释放空间