安装postgresql 9.5

 

安装PostgreSql 9.5

 

 yum install 安装因pgsql数据库跟postgis数据库版本不兼容 不使用

 

参考 :https://blog.csdn.net/yzj_xiaoyue/article/details/84936530

1 . 下载rpm 

根路径:https://yum.postgresql.org/9.5 https://yum.postgresql.org/9.5/redhat/rhel-7.3-x86_64/

各组件版本兼容情况

postgresql95-server-9.5.15-1PGDG.rhel7.x86_64.rpm

postgresql95-debuginfo-9.5.15-1PGDG.rhel7.x86_64.rpm

postgresql95-libs-9.5.15-1PGDG.rhel7.x86_64.rpm

postgresql95-contrib-9.5.15-1PGDG.rhel7.x86_64.rpm

postgresql95-9.5.15-1PGDG.rhel7.x86_64.rpm

postgresql95-devel-9.5.15-1PGDG.rhel7.x86_64.rpm

rpm -ivh postgresql95-*.rpm

 

通过RPM包安装, Postgres安装程序会在/var和/usr下创建文件夹.
/var/lib/pgsql: 用于存放Postgres数据库默认的数据文件夹
/usr/pgsql-9.6: 用于存放Postgres数据库的命令、依赖库及文档目录等信息
/var/lib/pgsql/9.6/data : 用户存放PG默认配置的pg_hba.conf,postgresql.conf配置文件。

2. 下载组件

http://download.osgeo.org/gdal/2.4.0/gdal-2.4.0.tar.gz
http://download.osgeo.org/proj/proj-5.2.0.tar.gz
http://download.osgeo.org/geos/geos-3.6.3.tar.bz2
http://download.osgeo.org/postgis/source/postgis-2.5.1.tar.gz 

 安装组件 :

tar xf gdal-2.4.0.tar.gz && cd gdal-2.4.0 && ./configure --prefix=/usr/local/gdal && make && sudo make install

tar xf proj-5.2.0.tar.gz && cd proj-5.2.0 && ./configure --prefix=/usr/local/proj && make && sudo make install

yum -y install bzip2

tar xf geos-3.6.3.tar.bz2 && cd geos-3.6.3 && ./configure --prefix=/usr/local/geos && make && sudo make install

 

yum install libxml2-devel -y # 修复 could not find xml2-config from libxml2 within the current path

tar xf postgis-2.5.1.tar.gz && cd postgis-2.5.1 && ./configure -prefix=/usr/local/postgis --with-geosconfig=/usr/local/geos/bin/geos-config --with-projdir=/usr/local/proj --with-gdalconfig=/usr/local/gdal/bin/gdal-config && make && sudo make install

 

 

# 如果使用上述脚本, 因为lib 找不到,需要将相关lib配置指向

echo "/usr/local/proj/lib" >> /etc/ld.so.conf

echo "/usr/local/geos/lib" >> /etc/ld.so.conf

echo "/usr/local/gdal/lib" >> /etc/ld.so.conf

echo "/usr/local/geos/lib" >> /etc/ld.so.conf

ldconfig

 

 网上的人员遇到的问题 http://blog.sina.com.cn/s/blog_8acf1be10101lbfc.html

 

 

3. 初始化数据库

/usr/pgsql-9.5/bin/postgresql95-setup initdb

4. 添加开机启动

systemctl enable postgresql-9.5.service

 

5. 登录数据库

su - postgres

psql -U postgres

 

 

6.启动服务,首次启动服务时,可以配置端口密码 以及是否开机启动,并自动初始化数据库:

[root@rojectluo-htted ~]# systemctl start|restart|stop  postgresql-9.5.service

7.配置登录权限

修改 pg_hba.conf 配置文件,将 local 一项其中的 md5 (支持密码登录)改为 trust ,保存退出后重启服务:

[root@rojectluo-htted ~]# vi  /var/lib/pgsql/9.5/data/pg_hba.conf

# pg_hba.conf 

修改 pg_hba.conf 配置文件,找到 # IPv4 local connections: ,在下面添加规则 host all all 10.0.0.1/8 md5 ,允许外部用户登录:

[root@rojectluo-htted ~]# vi /opt/postgresql/pg95/bin/data/pg_hba.conf

8.修改  postgresql.conf 配置文件

修改 listen_addresses = '*' 一项并去掉注释,令其监听整个网络的连接请求:

[root@rojectluo-htted ~]# vi /var/lib/pgsql/9.5/data/postgresql.conf

 

使用 postgres 用户的身份登录 psql 控制台:

[root@rojectluo-htted ~]# sudo -u postgres

修改用户 postgres 的密码,并创建新用户 admin 以及新数据库 test :

postgres=# alter role postgres with password '123456';

postgres-# create user admin with password '123456';

postgres-# create database test owner admin;

postgres-# grant all privileges on database test to admin;

切换到新创建的数据库 test,检查并安装 PostGIS  :

postgres=# \c test

test=# select * from pg_available_extensions where name like 'postgis%';

# 如果已有数据库不需要安装下面的插件

test=# CREATE EXTENSION postgis;

#如果提示libgeos-2.3.so.0: undefined symbol: GEOSClipByRect

#geos版本有冲突,删除不兼容版本

test=# CREATE EXTENSION postgis_topology;

依次使用命令查列出当前的数据库中的数据库列表以及用户列表,确认无误后退出当前 psql 环境:

test=# \du

test=# \l

# q退出

test=# \q

尝试使用新用户登录

[root@rojectluo-htted data]# psql -U admin -d test -h 127.0.0.1 -p 5432

最后在自己的机器上安装一个 navicat for postgresql ,使用我们刚才创建的用户连接数据库:

 

执行下面的命令,查看 PostGIS 是否配置成功:

 

 

[root@rojectluo-htted ~]# sudo -u postgres ./pg_ctl restart -D

 

 

你可能感兴趣的:(数据库)