地図情報を外部へ提供し、JavaScriptやQGIS等と連携させるために、PostgreSQLでジオメトリ情報が扱えるように拡張するPostGISを使用する。
インストールと初期設定
外部からのサーバへの接続を許可する
/var/lib/pgsql/data/pg_hba.conf
# vi /var/lib/pgsql/data/postgresql.conf
サービスの起動と動作確認
DBの作成
pgAdmin3をインストールする。
pgAdmin: Download - Windows ™
shapeファイルのコンバータをプラグインとして利用する。PostGISの本体に入っている。
Windows版のzipをダウンロードして、binの下のpostgisguiディレクトリをpgAdmin3のインストールディレクトリにコピーする。
Index of /postgis/windows
C:\Program Files (x86)\pgAdmin III\1.18\plugins.d\plugins.iniに下記を追加する。
pgAdmin3を起動して、[ファイル]-[オプション]で、PG binパスを確認する。
PostGISに接続する。
プラグインを起動する。
[Add File]をクリックして、読み込むShapeファイルを選択する。
日本語のファイル名は読み込めないので、下記を参考にリネームしておく。
[Options]をクリックし、エンコーディングをCP932(or SHIFT-JIS)指定する。
[Import]をクリックすると読み込みが始まる。完了するとテーブルができている。
動作確認はQGISでやるとよい。
データの格納と表示 — Let's Postgres
Read more ...
インストールと初期設定
# yum install postgis postgresql-server
# postgresql-setup initdb
Initializing database ... OK
# passwd postgres
ユーザー postgres のパスワードを変更。
新しいパスワード:
新しいパスワードを再入力してください:
passwd: すべての認証トークンが正しく更新できました。
外部からのサーバへの接続を許可する
# firewall-cmd --permanent --add-service=postgresql
# firewall-cmd --add-service=postgresql
/var/lib/pgsql/data/pg_hba.conf
:
:
# IPv4 local connections:
host all all 127.0.0.1/32 ident
host all all 192.168.1.0/24 md5
:
:
# vi /var/lib/pgsql/data/postgresql.conf
:
:
#listen_addresses = 'localhost' # what IP address(es) to listen on;
listen_addresses = '*' # comma-separated list of addresses
:
:
サービスの起動と動作確認
# systemctl start postgresql
# systemctl enable postgresql
# su - postgres
$ echo "select * from postgis_version();" | psql gis
postgis_version
---------------------------------------
2.1 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
DBの作成
$ createdb gis -E UTF-8
$ psql -d gis -c "CREATE EXTENSION postgis;"
$ psql -d gis -c "CREATE EXTENSION postgis_topology;"
$ psql -d gis -c "ALTER USER postgres PASSWORD '********';"
pgAdmin3をインストールする。
pgAdmin: Download - Windows ™
shapeファイルのコンバータをプラグインとして利用する。PostGISの本体に入っている。
Windows版のzipをダウンロードして、binの下のpostgisguiディレクトリをpgAdmin3のインストールディレクトリにコピーする。
Index of /postgis/windows
C:\Program Files (x86)\pgAdmin III\1.18\plugins.d\plugins.iniに下記を追加する。
;
;PostGIS shp2pgsql-gui (Windows):
;
Title=PostGIS Shapefile and DBF loader
Command="$$PGBINDIR\postgisgui\shp2pgsql-gui.exe" -h "$$HOSTNAME" -p $$PORT -U "$$USERNAME" -d "$$DATABASE" -W "$$PASSWORD"
Description=Open a PostGIS ESRI Shapefile or Plain dbf loader console to the current database.
KeyFile=$$PGBINDIR\postgisgui\shp2pgsql-gui.exe
Platform=windows
ServerType=postgresql
Database=Yes
SetPassword=Yes
pgAdmin3を起動して、[ファイル]-[オプション]で、PG binパスを確認する。
PostGISに接続する。
プラグインを起動する。
[Add File]をクリックして、読み込むShapeファイルを選択する。
日本語のファイル名は読み込めないので、下記を参考にリネームしておく。
海岸線 | CstLine |
街区の代表点 | SBAPt |
街区線 | SBBdry |
基準点 | GCP |
軌道の中心線 | RailCL |
建築物 | BldA |
建築物の外周線 | BldL |
行政区画 | AdmArea |
行政区画界線 | AdmBdry |
行政区画代表点 | AdmPt |
水域 | WA |
水涯線 | WL |
水部構造物線 | WStrL |
水部構造物面 | WStrA |
町字の代表点 | CommPt |
町字界線 | CommBdry |
等高線 | Cntr |
道路縁 | RdEdg |
道路構成線 | RdCompt |
標高点 | ElevPt |
[Options]をクリックし、エンコーディングをCP932(or SHIFT-JIS)指定する。
[Import]をクリックすると読み込みが始まる。完了するとテーブルができている。
動作確認はQGISでやるとよい。
データの格納と表示 — Let's Postgres