PostgreSQL教程

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

本文主要是介绍postgresql-13.1源码包编译安装(必定成功),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

 

前言:

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

1、安装准备

登录官网下载需要的版本,现在用的是13.1, https://www.postgresql.org/ftp/source/v13.1/ssss


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;

出现过的报错

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

make install

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/

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

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 #关闭数据库

7、基本配置

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


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

修改这个文件的postgresql.conf 的数据库访问地址,可以保持默认或者按需要填写地址

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

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

  \l #列出里面的库

  \q # 退出

  createdb --port=6666 pgsql

  psql --port=6666

  

 

 至此,数据库安装完成。

 

这篇关于postgresql-13.1源码包编译安装(必定成功)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!