PostGIS的安裝與入門使用指南
想學(xué)習(xí)postgis推薦看我翻譯的官方教程文檔:https://blog.csdn.net/qq_35732147/article/details/85256640
一、安裝PostGIS
在安裝PostGIS前首先必須安裝PostgreSQL,然后再安裝好的Stack Builder中選擇安裝PostGIS組件。
1.下載安裝程序
PostgreSQL安裝文件下載地址是https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
這里使用的PostgreSQL版本是9.6。
2.安裝PostgreSQL
雙擊下載的文件,所有設(shè)置都使用默認(rèn)設(shè)置即可,只是需要設(shè)置超級(jí)用戶postgres的密碼。
3.安裝PostGIS
安裝PostgreSQL安裝完成后,提示運(yùn)行Stack Builder。通過該工具安裝PostGIS。
Stack Builder運(yùn)行后,選擇安裝目標(biāo)軟件為PostgreSQL 9.6 on port 5432。然后在安裝程序選擇對(duì)話框中選擇PostGIS 2.3。
然后Stack Builder會(huì)下載PostGIS 2.3的安裝程序。下載后就會(huì)安裝,在設(shè)置安裝組件時(shí),最好選擇"Create spatial database",以便在創(chuàng)建數(shù)據(jù)庫(kù)時(shí)可以以此作為模板。對(duì)于其他步驟的設(shè)置都選擇默認(rèn)值即可。
二、創(chuàng)建空間數(shù)據(jù)庫(kù)
要?jiǎng)?chuàng)建與管理PostGIS空間數(shù)據(jù)庫(kù),可使用PostgreSQL提供的命令行或名為pgAdmin的圖形化管理工具,此外像QGIS等GIS客戶端軟件也提供了管理插件。這里介紹如何使用pgAdmin 4來完成創(chuàng)建空間數(shù)據(jù)庫(kù)以及在數(shù)據(jù)庫(kù)中導(dǎo)入空間數(shù)據(jù)。
1.打開pgAdmin 4
打開位于"開始>所有程序>PostgreSQL 9.6"之中的pgAdmin 4
2.登錄到服務(wù)器
打開pgAdmin 4之后,發(fā)現(xiàn)該程序已經(jīng)將本地安裝的PostgreSQL數(shù)據(jù)庫(kù)服務(wù)器列在了服務(wù)器列表中,將其選中然后選擇右鍵菜單的”連接“命令,以超級(jí)用戶postgres及安裝過程為該用戶設(shè)置的密碼連接數(shù)據(jù)庫(kù)服務(wù)器。連接以后,將列出該服務(wù)器中包含的內(nèi)容,如下圖所示,包含數(shù)據(jù)庫(kù)、表空間和組角色等。
3.創(chuàng)建空間數(shù)據(jù)庫(kù)
選中數(shù)據(jù)庫(kù)服務(wù)器內(nèi)容中的數(shù)據(jù)庫(kù),然后選擇其右鍵菜單中的”新建數(shù)據(jù)庫(kù)“命令,打開”新建數(shù)據(jù)庫(kù)“對(duì)話框。首先在”屬性“面板中設(shè)置數(shù)據(jù)庫(kù)名稱,因?yàn)楸緯鴮⑹褂眉幽么鬁馗缛A市的數(shù)據(jù),因此將數(shù)據(jù)庫(kù)名稱設(shè)置為"Vancouver";并將所有者設(shè)置為”postgres"。然后切換到“定義”面板中,將模板設(shè)置為"postgis_21_sample"。設(shè)置如下圖所示:
三、導(dǎo)入空間數(shù)據(jù)
經(jīng)過前面的步驟,已經(jīng)建好了功能完善的但還沒有空間數(shù)據(jù)的空間數(shù)據(jù)庫(kù),接下來的工作是將空間數(shù)據(jù)導(dǎo)入到剛建立的數(shù)據(jù)庫(kù)中。而最簡(jiǎn)單的方式是導(dǎo)入Shapefile格式的空間數(shù)據(jù)。PostGIS提供了"PostGIS Shape Import/Export Manager"圖形化界面工具來幫助完成Shapefile空間數(shù)據(jù)的導(dǎo)入與導(dǎo)出。
1.獲取數(shù)據(jù)
本實(shí)踐使用的數(shù)據(jù)位于下載文件的"Data\Vancouver"文件夾中,名為Vancouver.shp。
2.確定空間數(shù)據(jù)的投影系統(tǒng)
在使用PostGIS Shapefile Import/Export Manger工具導(dǎo)入空間數(shù)據(jù)時(shí),需要明確設(shè)置空間數(shù)據(jù)的SRID,即空間引用標(biāo)識(shí)符。
要確定空間數(shù)據(jù)的SRID,有好幾種方式。一種是利用QGIS來確定,另一種是利用pgAdmin來確定。
在"Data\Vancouver"文件夾中有一個(gè)名為Vancouver.prj的文本文件。.prj文件指定了數(shù)據(jù)的投影。用文本文件工具打開該文件,可見如下一些文本:
PROJCS["NAD_1983_UTM_Zone_10N",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-123],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["Meter",1]]
在pgAdmin 4中,打開查詢工具,在SQL編輯器中輸入如下SQL語句:
select srid, srtext, proj4text from spatial_ref_sys where srtext ILIKE '%NAD83 / UTM zone 10N%'
查詢結(jié)果如下圖所示,得知該空間數(shù)據(jù)的SRID為26910。
3.導(dǎo)入空間數(shù)據(jù)
打開位于“開始>所有程序>PostGIS 2.3 bundle for PostgreSQL”之中的PostGIS Shapefile Import/Export Manager。
首先單擊"View connection details"按鈕,打開"PostGIS connection"對(duì)話框,輸入用戶名"postgres"及其對(duì)應(yīng)的密碼,設(shè)置連接的數(shù)據(jù)庫(kù)為Vancouver,如下圖所示:
連接數(shù)據(jù)庫(kù)之后,單擊"Add file"按鈕,加入Vancouver.shp文件,并將其SRID設(shè)置為"26910",如下圖所示。這一步絕對(duì)不能省略,否則不能正確導(dǎo)入數(shù)據(jù)。
最后單擊"Import"按鈕導(dǎo)入數(shù)據(jù)。
可以在pgAdmin 4中通過查看Vancouver數(shù)據(jù)庫(kù)在"架構(gòu)“的public數(shù)據(jù)表中是否增加了Vancouver來判斷數(shù)據(jù)是否成功導(dǎo)入。
4.查看導(dǎo)入的空間數(shù)據(jù)
PostGIS并沒有提供工具以地圖的方式查看空間數(shù)據(jù),不過我們可以使用QGIS等客戶端GIS來查看。
打開QGIS,在窗口左邊的”瀏覽器“中選擇PostGIS,然后選擇其右鍵菜單中的"新建連接”命令,打開“創(chuàng)建一個(gè)新的PostGIS連接”對(duì)話框,按下圖設(shè)置參數(shù),最后單擊“確定”按鈕連接數(shù)據(jù)庫(kù)。
建立連接以后,便可以在“瀏覽器”中列出數(shù)據(jù)庫(kù)服務(wù)器中所有的空間圖層,如下圖所示,選中某圖層,將其拖入圖層控制器中便可在地圖中打開該空間數(shù)據(jù)。
到此這篇關(guān)于PostGIS的安裝與入門使用指南的文章就介紹到這了,更多相關(guān)PostGIS安裝使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
PostgreSQL樹形結(jié)構(gòu)的遞歸查詢示例
這篇文章主要給大家介紹了關(guān)于PostgreSQL樹形結(jié)構(gòu)的遞歸查詢的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用PostgreSQL具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05在postgresql數(shù)據(jù)庫(kù)中判斷是否是數(shù)字和日期時(shí)間格式函數(shù)操作
這篇文章主要介紹了在postgresql數(shù)據(jù)庫(kù)中判斷是否是數(shù)字和日期時(shí)間格式函數(shù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-12-12PostgreSQL三種自增列sequence,serial,identity的用法區(qū)別
這篇文章主要介紹了PostgreSQL三種自增列sequence,serial,identity的用法區(qū)別,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-02-02Linux系統(tǒng)安裝PostgreSQL數(shù)據(jù)庫(kù)及配置的詳細(xì)過程
這篇文章主要給大家介紹了關(guān)于Linux系統(tǒng)安裝PostgreSQL數(shù)據(jù)庫(kù)及配置的詳細(xì)過程,PgSQL(全稱PostgreSQL)是一個(gè)功能強(qiáng)大的開源對(duì)象-關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng),結(jié)合了許多安全存儲(chǔ)和擴(kuò)展最復(fù)雜數(shù)據(jù)工作負(fù)載的功能,需要的朋友可以參考下2023-12-12在windows下手動(dòng)初始化PostgreSQL數(shù)據(jù)庫(kù)教程
在windows下手動(dòng)初始化PG,是一件比較麻煩的事,下面我具體寫一下過程,大家做一下參考。2014-09-09Postgresql 檢查數(shù)據(jù)庫(kù)主從復(fù)制進(jìn)度的操作
這篇文章主要介紹了Postgresql 檢查數(shù)據(jù)庫(kù)主從復(fù)制進(jìn)度的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-12-12使用PostgreSQL數(shù)據(jù)庫(kù)建立用戶畫像系統(tǒng)的方法
這篇文章主要介紹了使用PostgreSQL數(shù)據(jù)庫(kù)建立用戶畫像系統(tǒng),下面使用一個(gè)具體的例子來說明如何使用PostgreSQL的json數(shù)據(jù)類型來建立用戶標(biāo)簽數(shù)據(jù),需要的朋友可以參考下2022-10-10