postgresql源码编译安装(centos)

centos6.8安装postgresql-9.6.8

一、环境

centos6.8

postgresql-9.6.8

二、准备工作

虚拟机可以连接外网

三、先安装make,gcc,gcc-c++,readline-devel,zlib,zlib-devel,openssl,openssl-devel,pam,pam-devel,libxml2,libxml2-devel,libxslt,libxslt-devel,perl-ExtUtils-Embed软件包

如果已经安装,可以忽略

四、开始安装

4.1 解压tar -zvxf postgresql-9.6.8.tar.gz

postgresql安装包放到opt目录下

4.2 创建postgres用户,密码设置为123456

4.3 开始安装

将数据库安装到/opt/pgsql/目录下

./configure --prefix=/opt/pgsql --with-pgport=5432 --with-perl --with-python --with-openssl --with-pam --without-ldap --with-libxml --with-libxslt --enable-thread-safety

备注:在执行configure命令时,如提示找不到python的库,则需要重新安装python,并加上--enable-shared选项

重装python

到官网下载python-2.7.14,地址https://www.python.org/getit/

将安装包上传到/opt/目录并解压,解压后会生成目录Python-2.7.14

进入目录编译安装

完成python的安装。

python安装完成后还需创建软连接,不然在/usr/local/lib/python2.7/config/目录下还是找不到python的共享库,具体创建过程如下图所示:

软连接创建好后,重新执行下面的configure命令即可成功。

 

执行make world命令

备注:执行make world命令后会报“postgresql ‘jade’ is missing on your system ”错误

解决办法:参照链接

执行下面几个命令,安装相应的软件包即可

 

执行完命令后重新执行configure命令,然后在执行make world命令

执行中会报如下错误

出现该错误还是由于python安装有问题导致的,解决办法:参考链接

1.删除python安装目录下Objects文件夹下面的所有.o文件

2.执行configure命令,然后执行make,make install命令

3.拷贝安装目录下的libpython2.7.a文件

以上步骤执行完成后,然后在重新执行postgresql的make world和make install-world命令。

4.4 配置环境变量

在环境变量/etc/profile/文件中加入PATH=$PATH:/opt/pgsql/bin

source环境变量,使配置生效

4.5 初始化数据库

4.6 复制并修改配置文件(修改存放数据目录)

切换到root,复制安装目录下的linux文件到/etc/init.d/中,并将linux名称重命名为postgresql

修改配置文件,并添加执行权限

4.7 启动数据库,并设置开机自启

4.8 创建数据库操作的历史文件

4.9 测试数据库是否创建成功,并且连接数据库

使用\q即可退出数据库连接

 

五、修改数据库外网访问

主要修改pg_hba.conf,postgresql.conf两个配置文件

5.1 先关闭数据库服务

5.2 修改pg_hba.conf文件

将默认的host all all 127.0.0.1/32 md5修改为

0.0.0.0/0 表示全部允许访问

或192.168.1.10/32 表示只允许192.168.1.10这个ip访问

或192.168.1.1/24 表示允许192.168.1.x的ip访问

5.3 修改postgresql.conf 文件

listen_addresses默认是注释掉的,打开即可,修改默认的listen_addresses=‘localhost’为listen_addresses='*'

5.4 重启postgresql服务

5.5 测试本地连接

 参考连接

1

2

3

4

posted @ 2018-07-05 10:05  Luis Yang  阅读(307)  评论(0编辑  收藏  举报