CentOS7使用yum安装PostgreSQL和PostGIS的方法
1.更新yum源
CentOS7默认yum源的PostgreSQL版本过低,不适合在本版本上使用。在https://yum.postgresql.org/repopackages.php上找到适合CentOS7的RPM源,复制其url地址,使用yum安装。
同时安装epel(ExtraPackagesforEnterpriseLinux7),为了稳定性,CentOS7的默认yum源缺少很多组件,这些组件可以在epel上找到。
命令:
yuminstall-yhttps://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm yum-yinstallepel-release
2.安装PostgreSQL
使用yumsearchpostgre命令可以看到多个版本的PostgreSQL,这里我选择了PostgreSQL10。 yuminstall-ypostgresql10-serverpostgresql10-contrib 初始化 /usr/pgsql-10/bin/postgresql10-setupinitdb 设置开机启动 systemctlenablepostgresql-10 启动数据库 systemctlstartpostgresql-10
3.配置数据库
- 配置远程访问,编辑/var/lib/pgsql/10/data/postgresql.conf,找到listen_addresses,如果想对所有IP开放,把listen_addresses的值改为‘*',如果只对部分IP开放,多个IP之间用,(逗号加空格)隔开。
- 配置账户访问权限,编辑/var/lib/pgsql/10/data/pg_hba.conf,文件分为5列,分别是TYPE、DATABASE、USER、ADDRESS、METHOD,可以对不同IP地址的用户设置不同数据库的访问权限。最后一列METHOD的解析如下:
- trust任何连接都允许,不需要密码
- reject拒绝符合条件(前面几个条件)的请求
- MD5接收一个MD5加密过的密码
- password接收一个密码来登陆,只在可信的网络使用这种方式
- gss使用gssapi认证,只在tcp/ip连接可用
- sspi只在windows可用的一种方式
- krb5不常用,只在TCP/IP可用
- ident使用操作系统用户名认证,验证它是否符合请求的的数据库用户名
- ldap使用LDAP服务器认证
- cert使用ssl客户端认证
- pam使用操作系统的pam模块服务
如果要求所有IP都是使用密码登录,则配置为hostallall0.0.0.0/0md5。
4.安装PostGIS
使用yumsearchpostgis命令可以看到多个版本的PostGIS,这里我选择postgis25,yuminstall-ypostgis25_10,安装完毕后切换为postgres用户,开启扩展。
//开启插件 #supostgres #psql //开启pgsql的插件 postgres=#createextensionpostgis; postgres=#createextensionpostgis_topology; postgres=#createextensionfuzzystrmatch; postgres=#createextensionaddress_standardizer; postgres=#createextensionaddress_standardizer_data_us; postgres=#createextensionpostgis_tiger_geocoder;
至此,PostgreSQL和PostGIS安装完毕。
总结
以上所述是小编给大家介绍的CentOS7使用yum安装PostgreSQL和PostGIS,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!