PostGIS je bezplatný a open source databázový extender pro systém správy databáze PostgreSQL. Pomůže vám přidat některé další funkce, jako je oblast, sjednocení, průnik, vzdálenost, datové typy, a umožnit spouštění dotazů na umístění v SQL. Pomocí PostGIS můžete ukládat polygonové a bodové typy dat v databázi PostgreSQL.
V tomto tutoriálu vám ukážeme, jak nainstalovat PostGIS s PostgreSQL na CentOS 8.
Předpoklady
- Server se systémem CentOS 8.
- Na vašem serveru je nakonfigurováno heslo uživatele root.
Začínáme
Než začnete, budete muset nainstalovat PostGIS a EPEL repo do vašeho systému. Oba můžete nainstalovat spuštěním následujícího příkazu:
dnf -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Dále povolte úložiště Powertool a deaktivujte výchozí úložiště PostgreSQL pomocí následujícího příkazu:
dnf config-manager --set-enabled PowerTools
dnf -qy module disable postgresql
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Instalovat PostGIS
Nyní můžete nainstalovat PostGIS spuštěním následujícího příkazu:
dnf install postgis25_12
Po dokončení instalace můžete balíček PostGIS ověřit pomocí následujícího příkazu:
rpm -qi postgis25_12
Měli byste získat následující výstup:
Name : postgis25_12 Version : 2.5.5 Release : 2.rhel8 Architecture: x86_64 Install Date: Monday 01 February 2021 11:59:37 PM EST Group : Unspecified Size : 29832534 License : GPLv2+ Signature : DSA/SHA1, Tuesday 10 November 2020 01:36:47 PM EST, Key ID 1f16d2e1442df0f8 Source RPM : postgis25_12-2.5.5-2.rhel8.src.rpm Build Date : Tuesday 10 November 2020 01:30:09 PM EST Build Host : koji-rhel8-x86-64-pgbuild Relocations : (not relocatable) Vendor : PostgreSQL Global Development Group URL : http://www.postgis.net/ Summary : Geographic Information Systems Extensions to PostgreSQL Description : PostGIS adds support for geographic objects to the PostgreSQL object-relational database. In effect, PostGIS "spatially enables" the PostgreSQL server, allowing it to be used as a backend spatial database for geographic information systems (GIS), much like ESRI's SDE or Oracle's Spatial extension. PostGIS follows the OpenGIS "Simple Features Specification for SQL" and has been certified as compliant with the "Types and Functions" profile.
Dále inicializujte PostgreSQL databázi pomocí následujícího příkazu:
/usr/pgsql-12/bin/postgresql-12-setup initdb
Dále spusťte službu PostgreSQL a povolte její spuštění při restartu systému pomocí následujícího příkazu:
systemctl start postgresql-12.service
systemctl enable postgresql-12.service
Vytvořte rozšíření
V tomto okamžiku byly nainstalovány PostgreSQL a PostGIS. Nyní budete muset vytvořit rozšíření pro PostGIS.
Nejprve se přihlaste k uživateli Postgres pomocí následujícího příkazu:
su - postgres
Dále vytvořte uživatele a databázi postgres pomocí následujícího příkazu:
createuser test_usr
createdb test_postgis -O test_usr
Dále se připojte k databázi pomocí následujícího příkazu:
psql -d test_postgis
Měli byste vidět následující výstup:
psql (12.5) Type "help" for help.
Dále vytvořte rozšíření PostGIS pomocí následujícího příkazu:
CREATE EXTENSION postgis;
Dále můžete ověřit verzi PostGIS pomocí následujícího příkazu:
select PostGIS_Full_Version();
Verzi PostGIS byste měli vidět v následujícím výstupu:
postgis_full_version ----------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------- POSTGIS="2.5.5" [EXTENSION] PGSQL="120" GEOS="3.8.1-CAPI-1.13.3" PROJ="Rel. 7.2.1, January 1st, 2021" GDAL="GDAL 3.2.1, released 2020/12/29" L IBXML="2.9.7" LIBJSON="0.13.1" LIBPROTOBUF="1.3.0" RASTER (1 row)
Dále ukončete prostředí Postgres pomocí následujícího příkazu;
exit
exit
Závěr
Ve výše uvedené příručce jste se naučili, jak nainstalovat PostGIS s PostgreSQL na CentOS 8. Nyní můžete použít PostGIS k přidání geometrie do vaší databáze.