PostGIS 安裝教程(Linux)(一)

2022-03-11 23:17:51 字數 3328 閱讀 1609

##本文分兩部分,第一部分講linux下postgresql的安裝,第二部分講postgis的安裝

centos7-x86_64

postgresql9.4

postgis2.4

[root@psql_master ~]# yum install

*****可以在**上找對應版本

#yum安裝postgresql,缺省會建乙個名為」postgres」的系統賬號,用於執行postgresql;

#同時資料庫中也會生成乙個名為」postgres」的資料庫使用者,且密碼已自動生成,需要進入資料庫後修改;

#postgresql在資料庫使用者同名的系統賬號下登入免密。

[root@psql_master ~]# yum install postgresql94-server

[root@psql_master ~]# /usr/pgsql-9.4/bin/postgresql94-setup initdb

[root@psql_master ~]# systemctl enable postgresql-9.4

[root@psql_master ~]# systemctl start postgresql-9.4

#yum安裝postgresql,缺省會建乙個名為」postgres」的系統賬號,用於執行postgresql;

[root@psql_master ~]# su - postgres

#切換使用者後,提示符變更為「-bash-4.2$」;

#同時資料庫中也會生成乙個名為」postgres」的資料庫使用者,且密碼已自動生成;

#postgresql在資料庫使用者同名的系統賬號下登入免密;

-bash-4.2$ psql -u postgres

#進入資料庫後修改密碼;

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

#配置檔案中,預設只能本機訪問postgresql;

#修改listen_addresses = 'localhost'為listen_addresses = '*',允許所有遠端訪問;

#修改配置檔案需要重啟服務。

[root@psql_master ~]# sed -i "s|#listen_addresses = 'localhost'|listen_addresses = '*'|g" /var/lib/pgsql/9.4/data/postgresql.conf

#在第82行之後,」ipv4 local connections」下新增允許的客戶端;

#「host」 代表主機型別,第乙個「all」代表db ,第二個「all」代表user ,「172.29.3.67/32」 代表client ip(0.0.0.0/0表示不限制),「trust」代表認證方式;

#認證方式除「trust」外,還有「peer」, 「ident」, 「md5」, 「password」等,具體可參考pg-hba檔案:

#修改pg.hba檔案需要重啟服務。

##這裡在後面操作過程中,可能會出現認證失敗的報錯。如下:

##可以在這pg_hba.conf,將peer處改為trust(這裡測試環境,如果正式環境不建議改為trust,可改為md5)

##新增export path=$path:/usr/pgsql-9.4/bin

#postgresql預設開啟tcp5432埠

#這裡可能有部分系統沒有iptables服務,restart時會報錯,重啟機器即可

[root@psql_master ~]# vim /etc/sysconfig/iptables

-a input -m state --state new -m tcp -p tcp --dport 5432 -j accept

[root@psql_master ~]# service iptables restart

#安裝完成後,測試看如果有5432埠即可

[root@psql_master ~]# netstat -tunlp

1)建立使用者

postgres=# create user postuser1 with password 'user1@123';

2)建立資料庫

#同時指定資料庫的所有者

postgres=# create database postdb1 owner postuser1;

3)資料庫賦權

#未賦權則賬戶只能登入控制台

postgres=# grant all privileges on database postdb1 to postuser1;

4)登入新建資料庫

#在作業系統層使用新建的賬號登入新建的資料庫,登入後提示符為「postdb1=>」;

#如果在postgres賬戶下直接使用「postgres=# \c postdb1;」登入,則登入使用者依然是postgres,

-bash-4.2$ psql -u postuser1 -d postdb1 -h 127.0.0.1 -p 5432

5)建立表

postdb1=> create table tb1( id int primary key, name varchar(20), salary real );

6)插入資料

postdb1=> insert into tb1( id, name, salary) values( 101, 'mike', 5000.00 );

7)查詢

postdb1=>select * from tb1;

PostGIS教程二 PostGIS的安裝

目錄 二 安裝postgresql 三 安裝postgis 在安裝postgis前首先必須安裝postgresql,然後在安裝好的stack builder中選擇安裝postgis元件。這裡使用的postgresql版本是9.6。安裝postgresql安裝完成後,提示執行stack builder...

PostGIS教程二 PostGIS的安裝

目錄 二 安裝postgresql 三 安裝postgis 在安裝postgis前首先必須安裝postgresql,然後在安裝好的stack builder中選擇安裝postgis元件。這裡使用的postgresql版本是9.6。安裝postgresql安裝完成後,提示執行stack builder...

PostGIS 安裝教程(Linux)(二)

接上篇,上篇講述了postgresql的安裝,此篇介紹postgis的安裝 網上資料說,由於2.0中引入了gdal和json等依賴關係,postgis有很多依賴關係,因此安裝之前需要先安裝依賴項。root psql master yum y install epel release 版本號格式為 前...