PG数据库部署

发布时间:2020-05-19 10:47:30 作者:Paxpeng
来源:网络 阅读:1485

软件包下载

wgethttp://download.osgeo.org/postgis/source/postgis-2.2.2.tar.gz

wgethttps://ftp.postgresql.org/pub/source/v9.4.8/postgresql-9.4.8.tar.gz

wgethttp://download.osgeo.org/gdal/2.0.0/gdal-2.0.0.tar.gz

wgethttp://download.osgeo.org/geos/geos-3.5.0.tar.bz2

 相关依赖包安装

#yum install -y gcc gdb strace gcc-c++ autoconf libjpeglibjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-develzlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel

#yum install ncurses ncurses-devel curl curl-devel e2fsprogs patche2fsprogs-devel krb5-devel libidn libidn-devel openldap-devel nss_ldapopenldap-clients openldap-servers libevent-devel libevent uuid-devel uuidmysql-devel

#yum install make cmake lrzsz perl perl-ExtUtils-Embed readlinereadline-devl python-devel proj proj-devel screen gmp gmp-devel mpfr mpfr-develdevtoolset-2-gcc devtoolset-2-binutils devtoolset-2-gcc-c++ boost boost-develcmake3 cmake3-gui cmake3-data

--downloadonly--downloaddir=/mnt/yilaibao -y

安装部署

 postgresql安装

 

创建软件包存放目录:

#mkdir  /data

进入目录按上面的链接下载软件包

#cd  /data

解压安装包

#tar zxvf postgresql-9.4.8

#cd postgresql-9.4.8

#./configure --prefix=/usr/local/pgsql9_4_8  --with-python --with-perl

#make

#make install

添加数据库账户

#adduser postgres

添加数据存放路径

#mkdir  -p /usr/local/pgsql9_4_8/data

#chown postgres /usr/local/pgsql9_4_8/datachown postgres /usr/local chmod 777 /usr/local/pgsql9_4_8/

chown postgres /usr/local/pgsql9_4_8/bin

进入普通账号

su - postgres

/usr/local/pgsql9_4_8/bin/initdb -D /usr/local/pgsql9_4_8/data

 

启动

/usr/local/pgsql9_4_8/bin/postgres -D /usr/local/pgsql9_4_8/data>logfile 2>&1 &

停止

cd /usr/local/pgsql9_4_8/bin/

./pg_ctl stop -D /usr/local/pgsql9_4_8/data/ -m {smart| fast}

postgres账号下添加环境变量

export LD_LIBRARY_PATH=/usr/local/pgsql9_4_8/lib

export PATH=/usr/local/pgsql9_4_8/bin:$PATH

---------------------------------------------------------------------------------------------------------------------

//注意:永久添加方法

进入普通账户:su - postgres

#vi ~/.bash_profile

export LD_LIBRARY_PATH=/usr/local/pgsql9_4_8/lib

export PATH=/usr/local/pgsql9_4_8/bin:$PATH

查看环境变量#echo $PATH

保存退出,这样既可永久添加。

 ---------------------------------------------------------------------------------------------------------------

注意在root下要再添加一次环境变量,最好上述的环境变量在普通账户和root账户下都添加。

退出普通账号安装fuzzystrmatch扩展包

cd contrib

make

make install

安装gdalgeos

cd /data

tar zxvf gdal-2.0.0.tar.gz

cd gdal-2.0.0

./configure --prefix=/usr/local/gdal --with-xml2=/usr/bin/xml2-config --with-static-proj4=/usr/bin/proj  (编译安装proj

 

make

make install

 

cd /data

tar jxvf geos-3.5.0.tar.bz2

cd geos-3.5.0

./configure --prefix=/usr/local/geos3

make

make install

 

vi /etc/ld.so.conf

/usr/local/pgsql9_4_8/lib(根据自己安装的路径改动)

/usr/local/gdal/lib  (根据自己安装的路径改动)

/usr/local/geos3/lib (根据自己安装的路径改动)

/usr/local/lib

PG数据库部署

等最后安装好后要以 root 的身份运行 #ldconfig

 

 postgis安装

#cd /data

#tar zxvfpostgis-2.2.2.tar.gz

# cdpostgis-2.2.2/

./configure--with-pgconfig=/usr/local/pgsql9_4_8/bin/pg_config--with-gdalconfig=/usr/local/gdal/bin/gdal-config--with-geosconfig=/usr/local/geos3/bin/geos-config

 

make

 

cd extensions

cd postgis

make clean

make

make install

 

cd ..

cdpostgis_topology

make clean

make

make install

 

cd ..

cd postgis_tiger_geocoder

make clean

make

make install

 

cd ../..

make install

 

进入控制台执行以下语句:

CREATE EXTENSIONpostgis;

CREATE EXTENSIONfuzzystrmatch;

CREATE EXTENSIONpostgis_tiger_geocoder;

CREATE EXTENSIONpostgis_topology;

pgrouting安装

yum -y install bzip2

cd /data

tar xvJf CGAL-4.8.1.tar.xz

cd CGAL-4.8.1

yum install gmp gmp-devel

yum install mpfr mpfr-devel

cmake .

make

make install

 

wget http://people.centos.org/tru/devtools-2/devtools-2.repo -O/etc/yum.repos.d/devtools-2.repo

yum install devtoolset-2-gcc devtoolset-2-binutilsdevtoolset-2-gcc-c++

PATH=/opt/rh/devtoolset-2/root/usr/bin/:$PATH

 

cd ..

tar zxvf pgrouting-2.2.0.tar.gz

cd pgrouting-pgrouting-2.2.0/

mkdir build

cd build/

cmake3 ..

make

make install

 

su - postgres

psql

CREATE EXTENSION pgrouting;

postgres用户设置密码:

alter user postgres with password 'postgres';

test!@#

Pg数据库设置远程连接:

1、#cd /usr/local/pgsql9_4_8/data

 #vi pg_hba.conf

PG数据库部署

2、#vipostgresql.conf

PG数据库部署

3、设置防火墙(在root下)

#vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT

4、停止,再启动(在postgres账户)

$pg_ctl stop -D /usr/local/pgsql9_4_8/data/ -m  fast

$/usr/local/pgsql9_4_8/bin/postgres -D /usr/local/pgsql9_4_8/data>logfile 2>&1 &

 

Pg数据库设置开机自启动:

 

 

设置PostgreSQL开机自启动

PostgreSQL的开机自启动脚本位于PostgreSQL源码目录的contrib/start-scripts路径下

PG数据库部署


linux文件即为linux系统上的启动脚本

1)修改linux文件属性,添加X属性

#chmod a+x linux

2) 复制linux文件到/etc/init.d目录下,更名为postgresql

#cp linux/etc/init.d/postgresql

3)修改/etc/init.d/postgresql文件的两个变量

prefix设置为postgresql的安装路径:/opt/pgsql-9.1.2

PGDATA设置为postgresql的数据目录路径:

PG数据库部署


4) 执行service postgresqlstart,就可以启动PostgreSQL服务

#service postgresqlstart

 

PG数据库部署


5)设置postgresql服务开机自启动

#chkconfig --addpostgresql

执行上面的命令,就可以实现postgresql服务的开机自启动。

 

 注意事项

在部署前请检查系统是否安装了postgresqlpostgis等上述软件,如果有请先卸载、不同Linux发行版本在安装过程中可能会遇到其他软件依赖关系需要根据安装过程中提示的问题解决。


推荐阅读:
  1. 【PostgreSQL】数据库备份与恢复(pg_rman)
  2. zabbix监控数据存放pg的数据库配置

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux 数据库 postgres

上一篇:使用sqlserver模仿mysql函数FIND_IN_SET实现group_concat功能

下一篇:redis内存淘汰机制是什么?

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》