PostgreSQL/PostGIS работа с растрами

Ariki
Гуру
Сообщения: 707
Зарегистрирован: 12 янв 2011, 22:40
Проекты: 1
Репутация: 284
Ваше звание:

Re: PostgreSQL/PostGIS работа с растрами

Сообщение Ariki » 24 май 2015, 23:56

Студент0 писал(а):На Сайте инструкция: http://gis-lab.info/qa/postgis-install.html#03
Та инструкция по старой версии PostGIS.
У вас всё проще: создаёте БД и выполняете

Код: Выделить всё

CREATE EXTENSION postgis;
Это добавит пространственные функции в БД.
Студент0 писал(а): Нашел команду для SQL, которая должна так же загружать растры, но опять таки выдает ошибку:
psql -h localhost -U postgres -d your_database -f image.sql
Какую ошибку-то?
Вы подготовили файл image.sql? Вам выше привели команду, которая конвертирует растровый файл в SQL и сразу выполняет его.

Студент0
Интересующийся
Сообщения: 17
Зарегистрирован: 23 май 2015, 21:25
Репутация: 0

Re: PostgreSQL/PostGIS работа с растрами

Сообщение Студент0 » 25 май 2015, 02:43

rhot писал(а):Программа raster2pgsql работает извне.

Из руководства:

Код: Выделить всё

raster2pgsql -s 4236 -I -C -M *.tif -F -t 100x100 public.demelevation | psql -d gisdb
Дословно: используя систему координат EPSG:4236 импортировать растры *.tif тайлами по 100х100 в таблицу demelevation из схемы public, создать индекс GiST для быстрого доступа к растрам. Вторая часть команды запускает скрипт, созданный raster2pgsql в базе данных gisdb.
данную строку надо вводить в ПгАдмине или в Питоне?

Студент0
Интересующийся
Сообщения: 17
Зарегистрирован: 23 май 2015, 21:25
Репутация: 0

Re: PostgreSQL/PostGIS работа с растрами

Сообщение Студент0 » 25 май 2015, 02:48

Ariki писал(а):
Студент0 писал(а):На Сайте инструкция: http://gis-lab.info/qa/postgis-install.html#03
Та инструкция по старой версии PostGIS.
У вас всё проще: создаёте БД и выполняете

Код: Выделить всё

CREATE EXTENSION postgis;
Это добавит пространственные функции в БД.
Студент0 писал(а): Нашел команду для SQL, которая должна так же загружать растры, но опять таки выдает ошибку:
psql -h localhost -U postgres -d your_database -f image.sql
Какую ошибку-то?
Вы подготовили файл image.sql? Вам выше привели команду, которая конвертирует растровый файл в SQL и сразу выполняет его.
Благодарю за информацию, но с добавлением постгиса уже разобрался.
ошибка следующая: не находит psql, так же как и raster2pgsql.
нет, файл image.sql не знал, что нужно готовить. это происходит при помощи raster2pgsql? она не выполняется.


Имею вот такой пример:

Код: Выделить всё

$ raster2pgsql -I -C -F -t 100x100 -s 4326 worldclim/tmax01.tif chp01.tmax01
> tmax01.sql
$ psql -d postgis_cookbook -U me -f tmax01.sql
raster2pgsql - должен создать tmax01.sql (где скан например), а psql после этого должен его добавить в базу (если я всё правильно усвоил). Куда их вводить-то? ПгАдмин матюкается, Питон тоже...

ericsson
Гуру
Сообщения: 3207
Зарегистрирован: 27 июл 2009, 19:26
Репутация: 687
Ваше звание: Вредитель полей

Re: PostgreSQL/PostGIS работа с растрами

Сообщение ericsson » 25 май 2015, 03:35

Студент0 писал(а):
rhot писал(а):Программа raster2pgsql работает извне.
...
данную строку надо вводить в ПгАдмине или в Питоне?
http://postgis.net/docs/using_raster_da ... ter_Loader :
The older version of this tool was a python script. The executable has replaced the python script.

Студент0
Интересующийся
Сообщения: 17
Зарегистрирован: 23 май 2015, 21:25
Репутация: 0

Re: PostgreSQL/PostGIS работа с растрами

Сообщение Студент0 » 25 май 2015, 04:25

ericsson писал(а):
Студент0 писал(а):
rhot писал(а):Программа raster2pgsql работает извне.
...
данную строку надо вводить в ПгАдмине или в Питоне?
http://postgis.net/docs/using_raster_da ... ter_Loader :
The older version of this tool was a python script. The executable has replaced the python script.
да, я читал что Вы кинули, однако запустить его через PgAdmin III мне не получилось, даже с

Код: Выделить всё

SET PATH="C:\Program Files\PostgreSQL\9.4\bin"
.

Я очень пытаюсь разобраться своими силами, однако то, что у меня получается не работает

Код: Выделить всё

CREATE TABLE test(rid serial primary key, rast raster);
SET PATH="C:\Program Files\PostgreSQL\9.4\bin"
raster2pgsql -s 4236 -I -C -M D:\r.tif -F -t 100x100 public.test | psql -d gisdb
psql -h localhost -U postgres –p 1111 -d PostGIS -f image.sql
таблицу создает, а всё остальное ошибки.
Таблица - test
растр - D:\r.tif
user - postgres
pass - 1111
база - PostGIS
а вот где лежит image.sql (или точнее где должен бы) не знаю, и как он делается...

еще имею:

Код: Выделить всё

CREATE SCHEMA ch07;
CREATE TABLE ch07.bag_o_rasters(
rid serial primary key
, rast_name text, rast raster);
база для растров как понял, только с другим типом данных, может она лучше?

ericsson
Гуру
Сообщения: 3207
Зарегистрирован: 27 июл 2009, 19:26
Репутация: 687
Ваше звание: Вредитель полей

Re: PostgreSQL/PostGIS работа с растрами

Сообщение ericsson » 25 май 2015, 04:39

При чем тут pgadmin?
raster2pgsql - это программа, которая выполняется в командной строке, это не часть SQL-запроса.
Ровно как и команда SET.
Вы командной строкой тоже не владеете? Тогда что же вы к диплому-то за четыре года выучили?
facepalm....

gamm
Гуру
Сообщения: 2563
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 531
Ваше звание: программист
Откуда: Казань

Re: PostgreSQL/PostGIS работа с растрами

Сообщение gamm » 25 май 2015, 07:20

подозреваю, что скоро обнаружится, что и SDE не приделано к PostGIS ...

Предложение удалено. Нарушение пп 3.2.3 Правил форума.

Студент0
Интересующийся
Сообщения: 17
Зарегистрирован: 23 май 2015, 21:25
Репутация: 0

Re: PostgreSQL/PostGIS работа с растрами

Сообщение Студент0 » 25 май 2015, 14:13

ericsson писал(а):При чем тут pgadmin?
raster2pgsql - это программа, которая выполняется в командной строке, это не часть SQL-запроса.
Ровно как и команда SET.
Вы командной строкой тоже не владеете? Тогда что же вы к диплому-то за четыре года выучили?
facepalm....
всё, что здесь обсуждается - в университете не преподавалось. поэтому и изучаю.
Спасибо за подсказку, вот что получилось:

Код: Выделить всё

C:\Program Files\PostgreSQL\9.4\bin>raster2pgsql -s 4236 -I -C -M D:\r.tif -F -t
 100x100 public.myrasters | psql -d gisdb
Processing 1/1: D:\r.tif
Пароль: 1111
psql: ВАЖНО:  пользователь "No4noy" не прошёл проверку подлинности (по паролю)
в таблице вроде ничего не поменялось.

Студент0
Интересующийся
Сообщения: 17
Зарегистрирован: 23 май 2015, 21:25
Репутация: 0

Re: PostgreSQL/PostGIS работа с растрами

Сообщение Студент0 » 25 май 2015, 22:28

Позвольте узнать какой тип данных подходит для загрузки растров и какую таблицу для них создать всё таки?
Таблица подходящая вроде:

Код: Выделить всё

CREATE TABLE myrasters(rid serial primary key, rast raster); 
не получается что-то...

Код: Выделить всё

C:\Program Files\PostgreSQL\9.4\bin>raster2pgsql -s 4236 -I -C -M D:\r.tif -F -t
 100x100 public.raster_table | psql -d gisdb
Processing 1/1: D:\r.tif
Пароль:

psql: fe_sendauth: no password supplied

C:\Program Files\PostgreSQL\9.4\bin>psql -h localhost -U postgres -d PostGIS -f
gisdb.sql
gisdb.sql: No such file or directory

ericsson
Гуру
Сообщения: 3207
Зарегистрирован: 27 июл 2009, 19:26
Репутация: 687
Ваше звание: Вредитель полей

Re: PostgreSQL/PostGIS работа с растрами

Сообщение ericsson » 25 май 2015, 23:42

Код: Выделить всё

psql: fe_sendauth: no password supplied
- ошибка не имеет отношения к типу данных, сами догадаетесь, к чему имеет?

Код: Выделить всё

No such file or directory
- аналогично.

Студент0
Интересующийся
Сообщения: 17
Зарегистрирован: 23 май 2015, 21:25
Репутация: 0

Re: PostgreSQL/PostGIS работа с растрами

Сообщение Студент0 » 26 май 2015, 00:06

ericsson писал(а):

Код: Выделить всё

psql: fe_sendauth: no password supplied
- ошибка не имеет отношения к типу данных, сами догадаетесь, к чему имеет?

Код: Выделить всё

No such file or directory
- аналогично.
конечно я понимаю всё что написало, однако у моего пользователя нет пароля (пользователя компьютера). вводил и от базы данных, однако тогда ошибка о том, что пользователь не прошел проверку паролем.

второе так же понимаю, однако не понимаю где тогда найти этот файл, или как его создать???

Ariki
Гуру
Сообщения: 707
Зарегистрирован: 12 янв 2011, 22:40
Проекты: 1
Репутация: 284
Ваше звание:

Re: PostgreSQL/PostGIS работа с растрами

Сообщение Ariki » 26 май 2015, 01:07

Наберите

Код: Выделить всё

psql --help
и изучите параметры команды. Ну или загуглите справку. Аналогично поступите с raster2pgsql - запустите программу без параметров и почитайте, как её использовать.

Прежде чем что-то выполнять, вы должны понимать каждый параметр команды и представлять себе результат.

Пароль для суперпользователя postgres вы, скорее всего, задали, когда устанавливали PostgreSQL. Под ним и нужно подключаться к БД, как в pgAdmin, так и в консоли. А в ваших командах перемешаны имена несуществующих файлов, баз данных и таблиц, и пользователь то указан, то нет. С таким подходом вы скорее "Войну и мир" напечатаете случайно, чем загрузите что-то в базу.

Студент0
Интересующийся
Сообщения: 17
Зарегистрирован: 23 май 2015, 21:25
Репутация: 0

Re: PostgreSQL/PostGIS работа с растрами

Сообщение Студент0 » 26 май 2015, 01:36

Ariki писал(а):Наберите

Код: Выделить всё

psql --help
и изучите параметры команды. Ну или загуглите справку. Аналогично поступите с raster2pgsql - запустите программу без параметров и почитайте, как её использовать.

Прежде чем что-то выполнять, вы должны понимать каждый параметр команды и представлять себе результат.

Пароль для суперпользователя postgres вы, скорее всего, задали, когда устанавливали PostgreSQL. Под ним и нужно подключаться к БД, как в pgAdmin, так и в консоли. А в ваших командах перемешаны имена несуществующих файлов, баз данных и таблиц, и пользователь то указан, то нет. С таким подходом вы скорее "Войну и мир" напечатаете случайно, чем загрузите что-то в базу.
параметры понимаю, для чего нужны - тоже.
пароль для пользователя базой "1111", однако пишет, что не прошел проверку (выше приводил код консоли).
Могли б Вы сказать что именно не правильно в моем запросе???

Код: Выделить всё

raster2pgsql -s 4236 -I -C -M D:/r.tif -F -t 100x100 public.raster_table | psql -d PostGIS
эта строка выдает ошибку.
если убрать вторую часть запроса (| psql -d PostGIS) то получается результат как в прикрепленной картинке.
однако данные в таблице отсутствуют.
Вложения
картинка.png
картинка.png (487.85 КБ) 3959 просмотров

Ariki
Гуру
Сообщения: 707
Зарегистрирован: 12 янв 2011, 22:40
Проекты: 1
Репутация: 284
Ваше звание:

Re: PostgreSQL/PostGIS работа с растрами

Сообщение Ariki » 26 май 2015, 02:16

Пользователя укажите в команде, а то он по умолчанию не под тем именем пытается подключиться к базе

Студент0
Интересующийся
Сообщения: 17
Зарегистрирован: 23 май 2015, 21:25
Репутация: 0

Re: PostgreSQL/PostGIS работа с растрами

Сообщение Студент0 » 26 май 2015, 02:35

Ariki писал(а):Пользователя укажите в команде, а то он по умолчанию не под тем именем пытается подключиться к базе
согласен. однако я пробовал. игнорирует параметр.

Ответить

Вернуться в «PostGIS/PostgreSQL»