CentOS 7 安裝、配置、使用 PostgreSQL 9.5及PostGIS2.2


學習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.rpm
2.安裝PostgreSQL 9.5

    yum install postgresql95-server postgresql95-contrib

3.初始化數據庫
    /usr/pgsql-9.5/bin/postgresql95-setup initdb

4.設置開機自啟動
    systemctl enable postgresql-9.5.service

5.啟動服務
    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 postgres
psql (9.5.5)
輸入 "help" 來獲取幫助信息.
postgres=# \l

postgres=# create database postgis ;
CREATE DATABASE
postgres=# \c postgis
您現在已經連線到數據庫 "postgis",用戶 "postgres".
postgis=# select * from pg_extension;

postgis=# create extension postgis;
CREATE EXTENSION
postgis=# \dt

postgis=# select count(*) from spatial_ref_sys ;

postgis=# \dn

postgis=# create extension postgis_topology;
CREATE EXTENSION
postgis=# \dn

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM