由于公司服务器换系统从Ubuntu换到centos上,所以在此做下笔记,方便他人与自己,哪里如果写错,希望指出,切勿狂喷
1.首先到官网看下流程 传送门https://www.postgresql.org/download/linux/redhat/
按说明来(这就是照着官方抄,小伙伴们最好自己去选择自己要的版本或者架构包),我选择的9.6版本
1.选个自己要安装的版本
2.选你要安装的服务器的系统
3.选架构
4.安装存储库 一直执行到
yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
5.安装客户端软件包
yum install postgresql96
6.安装服务器软件包
yum install postgresql96-server
7.初始化数据库并启用自动启动
/usr/pgsql-9.6/bin/postgresql96-setup initdb
systemctl enable postgresql-9.6
systemctl start postgresql-9.6
8.(可选项,如果用到了地理信息方面的就要安装此包)
8.1.查看系统是否有要此lib
8.2.**安装contrib **
# 版本不同记得换下里面的数字就可以了
yum install -y postgresql96-server postgresql96-contrib
9.安装postgis和pgRouting,开始安装postgis插件之前,因为插件中有依赖的内容,需要先安装
yum -y install epel-release
9.1先查询postgis 对应的postgresql 版本
yum list postgis* --自己找到自己对应的选择安装
我的是9.6的所以选择以下版本(图片上的这个版本有点老,我自己选择的是最新的postgis版本 觉得高版本不靠谱的话可以选那个2.5的版本) 我最终选择postgis30_96
yum install postgis30_96
yum install postgis30_96-client
#安装pgRouting
yum install pgrouting_96
这里就安装完了,但是还要配置
10.配置
10.1切换到postgre用户
su - postgres
# -d 后面的参数是默认的数据库
psql -d postgres
# 添加数据库密码
ALTER USER postgres with encrypted password '自己数据库的密码';
# 开启pgsql的插件
postgres=# create extension postgis;
postgres=# create extension postgis_topology;
postgres=# create extension fuzzystrmatch;
postgres=# create extension address_standardizer;
postgres=# create extension address_standardizer_data_us;
postgres=# create extension postgis_tiger_geocoder;
postgres=# CREATE EXTENSION pgrouting;
\q
\exit
11.修改配置文件,配置远程访问
vi /var/lib/pgsql/9.6/data/pg_hba.conf
按i键进入插入编辑模式,在IPv4 local connections下方添加允许连接的IP。
如果想允许所有IPv4地址,则加入一行host all all 0.0.0.0/0 md5。IPv6方法类似
vi /var/lib/pgsql/9.6/data/postgresql.conf
找到listen_addresses,按i键进入插入编辑模式,如果想对所有IP开放,则将localhost改为*即可
12.添加到防火墙
firewall-cmd --zone=public --list-ports
# 5432为postgresql端口
firewall-cmd --zone=public --add-port=5432/tcp --permanent
firewall-cmd --reload
13.重启服务
systemctl restart postgresql-9.6.service