Краткий обзор обновлений баз геоданных
Обновление баз геоданных позволяет использовать функциональные возможности, появившиеся в новейших версиях программного обеспечения.
Можно использовать инструмент геообработки Обновить базу геоданных (Upgrade Geodatabase) (который можно открыть непосредственно в наборе инструментов Управление данными (Data Management)) или скрипт на языке Python, чтобы обновить версию базы геоданных (geodatabase) файловой (file), персональной (personal) или ArcSDE. Скрипт на языке Python используется, если у вас нет доступа к ArcGIS for Desktop. Это происходит во многих случаях при обновлении многопользовательской базы геоданных ArcSDE. В этой ситуации можно выполнить скрипт Python на компьютере, где установлены ArcGIS Engine с дополнительным модулем Обновление базы геоданных (Geodatabase Update) или ArcGIS for Server Standard Enterprise или ArcGIS for Server Advanced Enterprise.
Инструмент и скрипт предоставляют опцию проверки, удовлетворяет ли база геоданных специфическим предварительным условиям для обновления, а также опцию собственно обновления базы геоданных. Esri рекомендует выполнить оба предварительных условия проверки и обновления.
- Обновление с бета-версий программного обеспечения не поддерживается.
- Когда база геоданных будет обновлена, предыдущие версии ArcGIS не смогут подключиться к ней, так как некоторые предыдущие версии ArcGIS не могут работать с более новыми версиями баз геоданных.
- Невозможно произвести переход с более поздней версии базы геоданных на более раннюю версию. Если после обновления до более новой версии вы хотите вернуться к старой версии базы геоданных, необходимо восстановить старую базу данных из резервной копии. В случае с файловой или персональной базы геоданных вы можете использовать резервную копию базы геоданных, которую вы создали перед обновлением.
Предварительные проверки
Вам следует включить предварительную проверку, если вы запускаете инструмент Обновить базу геоданных (Upgrade Geodatabase) или вызываете его из скрипта Python.
Запуск предварительной проверки перед обновлением позволяет выявить, не надо ли до обновления произвести с базой геоданных какие-либо действия. Результаты предварительной проверки появляются в окне геообработки и записываются в файл журнала, GDBUpgrade<n>.log, который создаётся в системной директории TEMP. В имени файла журнала <n> - это уникальное число, идентифицирующее специфическую предварительную проверку или событие обновления.
При выполнении для файловой или персональной базы геоданных предварительная проверка выявляет следующее:
- База геоданных доступна только для чтения.
- Больше ни один пользователь не подключен к базе геоданных.
- Текущее подключение не редактирует данные в базе геоданных.
- Любую информацию из системных таблиц текущей базы геоданных можно открыть.
Для баз геоданных ArcSDE предварительная проверка выявляет следующее:
- У подключенного пользователя есть соответствующие права на обновление.
- Подключенный пользователь не редактирует данные в базе геоданных.
- Больше ни один пользователь не подключен к базе геоданных.
- В базе геоданных включена поддержка типов данных XML.
- Любую информацию из системных таблиц текущей базы геоданных можно открыть.
- Для баз геоданных в PostgreSQL и Oracle, она определяет, является ли актуальной библиотека ST_Geometry в местоположении базы данных.
- Для баз геоданных в пользовательской схеме в Oracle она выявляет, обновлена ли основная база геоданных.
Если база геоданных соответствует предварительным условиям и у вас есть резервная копия базы геоданных и (для многопользовательских баз геоданных) выполнены шаги по подготовке соответственно вашей СУБД, вы можете обновлять базу геоданных.
Подготовка многопользовательских баз геоданных к обновлению описана в разделах:
Что происходит при обновлении
В целом, при обновлении базы геоданных обновляются системные таблицы и все связанные функциональные возможности, типы и сохраненные процедуры. Если конкретно, то при обновлении ArcGIS 9.3.x или более старый версий, происходит следующее:
- Выполняется проверка - можно ли обновить базу геоданных.
- Если вы обновляете базу геоданных ArcSDE, то обновляются системные таблицы, функции, процедуры и типы ArcSDE.
- Создаются новые системные таблицы базы геоданных.
- Содержимое старых системных таблиц базы геоданных также копируется в новые таблицы.
- Номер версии базы геоданных увеличивается на соответствующее число.
- Удаляются старые системные таблицы.
Сам процесс обновления достаточно устойчив; если в какой-то момент что-то пойдёт не так, вы сможете повторно запустить процесс обновления для частично обновленной базы геоданных как только устраните причину сбоя. Все частично выполненные операции можно или откатить назад или пропустить при повторном запуске обновления. Вам не надо восстанавливать или выгружать базу геоданных из резервной копии.
Если вам не удалось завершить обновление после непредвиденной ошибки или события (например, превышено время ожидания и пользователям надо продолжать работу), Esri не рекомендует использовать частично обновленные базы геоданных. Вместо этого вам надо будет восстановить из резервной копии, прежде чем позволить пользователям подключиться к рабочей базе геоданных.
Как упоминалось выше, файл журнала обновления, GDBUpgrade<n>.log, создаётся у вас в системной директории TEMP. В этом файле записывается ход выполнения операции обновления. Если при обновлении происходят ошибки, они записываются в этот файл. Если в процессе обновления вы столкнулись с ошибками, почитайте этот файл.
Доступ к функциональности обновления базы геоданных
Существует несколько способов доступа к функциональной возможности обновления базы геоданных: вы можете открыть инструмент Обновить базу геоданных (Upgrade Geodatabase) из диалогового окна Свойства базы данных (Database Properties), найдя этот инструмент через окно Поиск (Search) в ArcMap или ArcCatalog, либо прямо из набора инструментов Управление данными (Data Managment). Кроме того, для обновления базы геоданных можно запустить скрипт Python.
Чтобы открыть инструмент Обновить базу геоданных из диалогового окна Свойства базы данных, выполните шаги:
- Запустите ArcMap и откройте окно Каталог (Catalog), или запустите ArcCatalog.
- Щелкните правой кнопкой мыши на базе геоданных, которую вы хотите обновить.
- Щелкните Свойства (Properties).
- Перейдите на закладку Общие (General).
- Нажмите Обновить базу геоданных (Upgrade Geodatabase).
Чтобы сразу открыть инструмент, воспользуйтесь окном Поиск (Search).
- Запустите ArcMap и откройте окно Каталог (Catalog), или запустите ArcCatalog.
- Нажмите кнопку окна Поиска. .
- Щелкните Инструменты (Tools) в верхней части окна поиска, чтобы сузить поиск до инструментов геообработки.
- Введите в поисковом окне upgrade geodatabase и нажмите ВВОД.
- Щёлкните на ссылке, чтобы открыть инструмент геобработки Обновить базу геоданных (Upgrade Geodatabase).
Также инструмент можно открыть непосредственно из узла Наборы инструментов (Toolboxes) в дереве Каталога.
- Запустите ArcMap и откройте окно Каталог (Catalog), или запустите ArcCatalog.
- Разверните узел Наборы инструментов (Toolboxes) в дереве Каталога.
- Разверните Системные наборы инструментов (System Toolboxes).
- Разверните набор инструментов Управление данными (Data Management).
- Раскройте группу инструментов Администрирование базы геоданных (Geodatabase Administration).
- Дважды щелкните Обновить базу геоданных (Upgrade Geodatabase).
Инструмент Обновить базу геоданных (Upgrade Geodatabase) можно использовать и как часть модели.
Другой способ получения доступа к функциональным возможностям Обновить базу геоданных это запустить скрипт Python. Чтобы это сделать, откройте скрипт в системной командной строке, в окне ArcPy в ArcGIS for Desktop или в PythonWin. Более подробно см. разделы Python. Краткий обзор и Обновление базы геоданных.
Специфические инструкции по обновлению
Инструкции по обновлению определенных типов баз геоданных см. в соответствующих разделах: