Подготовка к обновлению базы геоданных вPostgreSQL
При обновлении любой многопользовательской системы, включая базу геоданных, необходимо сначала все спланировать. Протестируйте новую версию на сервере для разработки или тестовом сервере, чтобы убедиться, что она работает со всеми вашими клиентскими приложениями.
Когда вы определили, что новая система работает ожидаемым образом, запланируйте обновление; убедитесь, что необходимые сотрудники доступны для проведения обновления, и что они имеют необходимые права для выполнения назначенных им задач.
Имейте в виду следующее:
- Обновление с бета-версий программного обеспечения не поддерживается.
- Когда база геоданных будет обновлена, предыдущие версии ArcGIS не смогут подключиться к ней, так как некоторые предыдущие версии ArcGIS не могут работать с более новыми версиями баз геоданных. Версии программы до ArcGIS 10 не могут подключиться к базе геоданных версии 10.2.x. Клиенты ArcGIS 10 могут подключиться к базе геоданных версии 10.2.x.
- Невозможно произвести переход с более поздней версии базы геоданных на более раннюю версию. Если после обновления до более новой версии вы хотите вернуться к старой версии базы геоданных, необходимо восстановить старую базу данных из резервной копии.
Вы должны также выполнить следующие действия перед обновлением базы геоданных в PostgreSQL:
- Посетите ArcGIS Resource Center, чтобы убедиться, что ваша система удовлетворяет минимальным требованиям.
Если необходимо обновить базу данных PostgreSQL, информацию о новых функциональных возможностях в СУБД и о способах ее обновления см. в документации PostgreSQL. Также помните, что обновленные базы данных имеют те же имена и владельцев, что и раньше, и задайте для переменной search_path для базы данных значение "$user", public и sde.
- Создайте резервную копию базы данных.
- Если вы используете сервис ArcSDE для подключений и изменили какие-либо файлы в папке etc в SDEHOME, создайте копию этих файлов.
-
Удалите все пользовательские функции, которые вы могли добавить в системные таблицы базы геоданных ArcSDE вне ArcGIS, например, триггеры или дополнительные индексы.
Процедура обновления не может учитывать модификации, которые вы произвели в системных таблицах. Если эти модификации помешают изменению схемы системной таблицы, обновление будет остановлено с ошибкой.
-
Предоставьте администратору базы геоданных (sde) права суперпользователя в базе данных.
Это необходимо для обновления базы геоданных.
- Установите нужную версию клиента ArcGIS (ArcGIS for Desktop Standard или Advanced, ArcGIS Engine с дополнительным модулем Geodatabase Update или ArcGIS for Server Standard или Advanced) на компьютер, который имеет возможность прямого подключения к базе геоданных для проведения обновления.
- Вы должны установить прямое подключение к PostgreSQL из ArcGIS для обновления базы геоданных. Поэтому, если клиент ArcGIS еще не настроен на прямое подключение к PostgreSQL, загрузите клиентские библиотеки PostgreSQL (если клиент ArcGIS работает на Windows) или RPM (если клиент ArcGIS работает на Linux) с портала Esri Customer Care и поместите их в папку bin клиентского приложения ArcGIS, установленного вами в предыдущем шаге.
Если вы подключаетесь из 32-разрядного клиента ArcGIS, такого как ArcGIS for Desktop или ArcGIS Engine, необходимо использовать 32-разрядный клиент PostgreSQL. Если вы подключаетесь из 64-разрядного клиента ArcGIS, такого как ArcGIS for Server, необходимо использовать 64-разрядный клиент PostgreSQL.
- Убедитесь, что во время обновления ни один из пользователей не подключен к базе геоданных.
Вы можете увидеть список пользователей, подключенных к базе геоданных в настоящее время, открыв закладку Подключенные пользователи (Connected Users) диалогового окна Администрирование базы геоданных (Geodatabase Administration) в ArcGIS for Desktop.
- Если вы используете сервис ArcSDE, выполните следующие действия.
- Остановите сервис ArcSDE с помощью команды sdemon –o shutdown. Если сервис работает на сервере Windows, вы можете остановить его из интерфейса Службы Windows (Windows Services) вместо использования команды sdemon.
- Если вы производите обновление на новую, полную версию сервера приложения ArcSDE (например, с 9.3.1 или 10 на 10.1), удалите старую версию ArcSDE. В Windows удалите старый сервис, когда появится сообщение о том, что это необходимо сделать.Примечание:
Если вы устанавливаете пакет обновления или патч, не удаляйте программу.
- Скачайте программу установки ArcSDE Application Server с портала Esri Customer Care.
- Скопируйте файл st_geometry (и libst_raster_pg, если вы используете тип хранения ST_Raster) из папки DatabaseSupport директории установки клиента ArcGIS и поместите их в папку %PostgreSQL%\lib (Windows) или в папку lib (Linux) на сервере PostgreSQL. Можно определить точное местоположение папки lib PostgreSQL на Linux, запустив утилиту pg_config из-под пользователя postgres. Местоположение lib указывается параметром PGPKGLIBDIR.
Убедитесь, что вы загрузили библиотеку, соответствующую версии PostgreSQL и операционной системе сервера. Начиная с ArcGIS 10.1 service pack 1, библиотеки st_geometry для PostgreSQL 9.0 и PostgresSQL 9.1 поставляются для ОС Windows и Linux. Библиотеки PostreSQL 9.1 находятся в папке 9.1.
- Если сервер PostgreSQL работает на Linux, зайдите на сервер как пользователь root и используйте FTP для передачи файла st_geometry.so (и файла libst_raster_pg.so, если используется ST_Raster) в папку lib PostgreSQL.
- Если ваш сервер PostgreSQL работает в Windows, скопируйте файл st_geometry.dll (и libst_raster_pg.dll при использовании ST_Raster) в папку lib папки установки PostgreSQL.
База геоданных готова к обновлению. Можно использовать инструмент Обновить базу геоданных (Upgrade Geodatabase) в ArcGIS for Desktop или скрипт Python на компьютере, где установлен клиент ArcGIS.
Если для подключений будет использоваться сервис ArcSDE, после обновления базы геоданных необходимо установить сервер приложений ArcSDE.