Примеры использования инструментов PostGIS: различия между версиями

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Строка 37: Строка 37:
<pre>sudo -u postgres psql -d testdb -f /usr/share/postgresql/9.1/contrib/postgis-2.0/postgis.sql</pre>
<pre>sudo -u postgres psql -d testdb -f /usr/share/postgresql/9.1/contrib/postgis-2.0/postgis.sql</pre>


===Загрузка данных===
====shp2pgsql====
Загрузка данных в базу проводится в 2 этапа, сначала слой выгружается в sql, а затем он грузится в базу
Загрузка данных в базу проводится в 2 этапа, сначала слой выгружается в sql, а затем он грузится в базу
<pre>shp2pgsql -i -D -s 4326 -W cp1251 topo250m-rus.shp > topo250-rus.sql
<pre>shp2pgsql -i -D -s 4326 -W cp1251 topo250m-rus.shp > topo250-rus.sql
psql -U pgsql -f topo250-rus.sql -d testdb </pre>
psql -U pgsql -f topo250-rus.sql -d testdb </pre>


Разрешение подключаться к базе пользователю с определенным именем (пользователь уже заведен в базе):
====ogr2ogr====
<pre></pre>
 
Разрешение подключаться к определенной таблице базы пользователю с определенным именем (пользователь уже заведен в базе):
<pre>psql -U pgsql -d gen -c 'GRANT SELECT ON TABLE "topo250m-rus" TO guest;'</pre>
<pre>psql -U pgsql -d gen -c 'GRANT SELECT ON TABLE "topo250m-rus" TO guest;'</pre>

Версия от 12:07, 13 апреля 2013

Эта страница является черновиком статьи.


Еще заготовка шпаргалки

Установка

sudo apt-get install postgis

В Ubuntu 12.04 по-умолчанию все ставится в /usr/share/postgresql/9.1/contrib/postgis-2.0

Создание базы

В шелл (база создатся на пользователя pgsql):

createdb -U postgres testdb

или

sudo -u postgres createdb testdb

Удаление базы

Аналогично созданию, только dropdb, вместо createdb

dropdb -U postgres testdb

Создание пользователя

CREATE USER admin PASSWORD 'admin';

Назначение его администратором:

ALTER DATABASE testdb OWNER TO admin;

Добавление функций PostGIS

psql -U pgsql -d testdb -f /usr/local/share/postgis/postgis.sql
psql -U pgsql -d testdb -f /usr/local/share/postgis/spatial_ref_sys.sql

или

sudo -u postgres psql -d testdb -f /usr/share/postgresql/9.1/contrib/postgis-2.0/postgis.sql

Загрузка данных

shp2pgsql

Загрузка данных в базу проводится в 2 этапа, сначала слой выгружается в sql, а затем он грузится в базу

shp2pgsql -i -D -s 4326 -W cp1251 topo250m-rus.shp > topo250-rus.sql
psql -U pgsql -f topo250-rus.sql -d testdb 

ogr2ogr


Разрешение подключаться к определенной таблице базы пользователю с определенным именем (пользователь уже заведен в базе):

psql -U pgsql -d gen -c 'GRANT SELECT ON TABLE "topo250m-rus" TO guest;'