学习CentOS下安装使用PostgreSQL
【安装过程】
1.添加RPM
yum install https://download.postgresql.org/pub/repos/yum/9.5/redhat/rhel-7-x86_64/pgdg-centos95-9.5-2.noarch.rpm2.安装PostgreSQL 9.5yum install postgresql95-server postgresql95-contrib
3.初始化数据库
/usr/pgsql-9.5/bin/postgresql95-setup initdb4.设置开机自启动
systemctl enable postgresql-9.5.service5.启动服务
systemctl start postgresql-9.5.service自此,PostgreSQL 9.5 安装完成,以上一直使用的是root用户进行的安装。
【简单的配置】
PostgreSQL 安装完成后,会建立一下‘postgres’用户,用于执行PostgreSQL,数据库中也会建立一个'postgres'用户,默认密码为自动生成,需要在系统中改一下。
6.修改用户密码
su - postgres 切换用户,执行后提示符会变为 '-bash-4.2$' psql -U postgres 登录数据库,执行后提示符变为 'postgres=#' ALTER USER postgres WITH PASSWORD '123456' 设置postgres用户密码 \q 退出数据库 7.开启远程访问 vi /var/lib/pgsql/9.5/data/postgresql.conf 修改#listen_addresses = 'localhost' 为 listen_addresses='*'【前面的注释要去掉哦!】 当然,此处‘*’也可以改为任何你想开放的服务器IP
8.信任远程连接 vi /var/lib/pgsql/9.5/data/pg_hba.conf 修改如下内容,信任指定服务器连接 # IPv4 local connections: host all all 127.0.0.1/32 trust host all all my_remote_client_ip_address/32 trust
my_remote_client_ip_address
是客户端的IP地址。 【host all all 192.168.198.0/24 trust】--虚拟机的IP为192.168.198.128设置成这个可以通过windows下的pgadmin连接VMWare虚拟机上的postgresql,这个IP到底是怎么设置的???【需要研究一下!!】
9.打开防火墙【开发环境或者内网可以直接把防火墙关掉】 CentOS 防火墙中内置了PostgreSQL服务,配置文件位置在/usr/lib/firewalld/services/postgresql.xml,我们只需以服务方式将PostgreSQL服务开放即可。 firewall-cmd --add-service=postgresql --permanent 开放postgresql服务 firewall-cmd --reload 重载防火墙
-------------------------------------
关闭防火墙
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# systemctl disable firewalld.service
10. 重启PostgreSQL数据服务 systemctl restart postgresql-9.5.service
文/lasko(简书作者) 以上原文链接:http://www.jianshu.com/p/7e95fd0bc91a【非常感谢!】
=================================================
默认安装的PostgreSQL字符集的问题
在导入中文字符时,会提示错误,或导进去出现乱码的情况,解决方法有两种:
1、设置postgresql客户端的编码
test=# \encoding GBK test=# show client_encoding; client_encoding ----------------- GBK
[postgres@localhost ~]$ export PGCLIENTENCODING=GBK
2、设置终端的编码为UTF-8
[postgres@localhost ~]$ export LANG=zh_CN.UTF8
SecureCRT终端显示乱码,修改方法为:
Option->Session Option->外观->字符编码,把那个下拉框的内容改成“UTF8”
=================================================
安装PostGIS
yum list postgis*yum -y install postgis2_95.x86_64 postgis2_95-client.x86_64 postgis2_95-debuginfo.x86_64 postgis2_95-devel.x86_64 postgis2_95-docs.x86_64 postgis2_95-utils.x86_64
【安装过程中提示gdal安装不成功,解决方法yum install epel-release.noarch】查看PostGIS相关文件确认安装成功:
/usr/pgsql-9.5/share/extension /usr/pgsql-9.5/share/contrib/postgis-2.2 有相关postgis文件 加载PostGIS插件# psql -d postgres -U postgrespsql (9.5.5)输入 "help" 来获取帮助信息.postgres=# \lpostgres=# create database postgis ;
CREATE DATABASEpostgres=# \c postgis 您现在已经连线到数据库 "postgis",用户 "postgres".postgis=# select * from pg_extension;postgis=# create extension postgis;
CREATE EXTENSIONpostgis=# \dtpostgis=# select count(*) from spatial_ref_sys ;
postgis=# \dn
postgis=# create extension postgis_topology;
CREATE EXTENSIONpostgis=# \dn