Skip To Content

Управление архивами хранилища данных

Архивы необходимы для восстановления данных в случае таких аварий, как сбой хранилища или повреждение данных. Если вы создали архивы и разместили их в защищенном местоположении, вы можете настроить новое ArcGIS Data Store, получить доступ к архивам и восстановить данные, используемые размещенными слоями объектов, если по какой-либо причине произошел сбой в хранилище данных, и вы не можете его перезапустить.

Если имеется только реляционное хранилище данных, ArcGIS Data Store настраивается на автоматическое создание архивов данных. По умолчанию хранилище данных автоматически создает архивы данных векторных слоев в папке /usr/arcgisdatastore/backups. Это означает, что файлы архивов хранятся на том же компьютере, где установлено реляционное хранилище данных. Если в хранилище данных или на первичном компьютере произойдет сбой, вы не сможете получить доступ к файлам архива, следовательно, не сможете восстановить данные размещенных векторных слоев. Поэтому следует хранить архивные данные в каком-либо другом месте.

На следующем рисунке показано реляционное хранилище данных, состоящее из одного компьютера (первичный компьютер) для хранения данных и сетевого диска для хранения файлов архивов. Хранение файлов архивов отдельно от хранилища данных обеспечивает защиту архивов в случае сбоя компьютера с хранилищем данных.

ArcGIS Data Store с одним компьютером и сетевым диском для хранения архивов

Примечание:

Убедитесь, что архивные файлы содержат только те данные, которые используются опубликованными векторными слоями вашего портала. В архивные файлы не записываются данные слоев сцен или кэш, хранилища пространственно-временных больших данных, данные сайта ArcGIS Server или портала. Вместо этого архивы помогают восстановить данные векторных слоев, потерянные в результате сбоя первичного компьютера хранилища данных. Если вы хотите, чтобы размещенные векторные слои продолжали работать даже после сбоя основного компьютера, настройте резервный компьютер.

В дополнение к заданию другой директории для архивов, вы можете также управлять частотой создания полных архивов и временем хранения архивных файлов.

Если необходимо, вы можете использовать утилиту backupdatastore для создания вручную архива данных векторного слоя.

Если необходимо перевести данные размещенных векторных слоев хранилища данных на новую версию ArcGIS Data Store, или если вы хотите восстановить данные на момент установки ArcGIS Data Store на компьютере с другой операционной системой, выполните экспорт хранилища данных и импортируйте их на другое ArcGIS Data Store.

Если вы хотите создать резервные копии полистного кэша размещенного слоя сцены с данными размещенного векторного слоя, можно экспортировать хранилище данных при помощи утилиты exportmanageddb, установленной вместе с ArcGIS Data Store, или инструмента webgisdr, установленного с Portal for ArcGIS.

Задание местоположение резервной копии для реляционного хранилища данных

Архивы позволяют восстановить данные при аварии, например, при отказе сервера. Если архив находится на сервере, выведенном из строя, вы не сможете восстановить данные. Поэтому файлы архивов следует хранить на другом сервере, отдельно от реляционного хранилища данных.

Создайте общую директорию для хранения файлов архивов на другом компьютере и запустите утилиту changebackuplocation, чтобы настроить ArcGIS Data Store на запись архивов в эту папку. Убедитесь, что учетная запись, под которой работает утилита changebackuplocation, имеет права доступа для чтения/записи в общей директории. Также убедитесь, что имеется достаточно свободного места для всех файлов, входящих в архив хранилища данных. Число файлов и их размер зависит от объема данных, расписания резервного копирования и числа дней, в течение которого хранится архив. Не забывайте следить за директорией архивов и при необходимости менять эти значения.

Утилита changebackuplocation установлена в папке <ArcGIS Data Store installation directory>/datastore/tools.

Для запуска утилиты changebackuplocation используется следующий синтаксис:

changebackuplocation <new directory path> --is-shared-folder <true|false> --keep-old-backups <true|false>

Например, для создания архивных файлов в общей папке ds_backup на компьютере sysshare с опцией хранения существующих архивов, введите следующее:

./changebackuplocation.sh /net/sysshare/ds_backups --is-shared-folder true --keep-old-backups true
You are going to change the backup location of the data store. Existing backups will be copied to the new location and it could take a few moments. Please do not interrupt the process once it has started.
Do you want to continue (Yes or No)? Yes

Подсказка:

Если удаленная директория архивов была недоступна дольше нескольких минут, вручную выполните полное архивирование хранилища данных, как только директория снова станет доступной.

Изменение частоты создания резервных копия для реляционного хранилища данных

По умолчанию хранилище данных создает полный архив векторных слоев объектов каждые четыре дня, а накопительные архивы или при полном заполнении файлов журнала, или каждые 5 минут, смотря, что наступит ранее. (Файлы журналов позволяют восстановить данные на определенный момент.) Созданием накопительных архивов управляет база данных, но вы можете изменить частоту, с которой хранилище данных создает полный архив, запустив утилиту updatebackupschedule. Если ваши пользователи будут публиковать и редактировать большое количество размещенных векторных слоев, следует увеличить частоту создания полных резервных копий хранилища данных.

Помните, что архивная папка должна иметь достаточно места для хранения всех файлов архивов. Размер архива зависит от объема архивируемых данных, но, если вы используете настройки архивирования по умолчанию, резервная директория будет содержать пять полных резервных копий, полностью обновляющихся каждые 7 дней. Размер этих файлов зависит от количества данных.

Если вы хотите отключить автоматическое создание архивов и создавать резервные копии вручную, задайте частоту создания равной 0. Имейте в виду, что ArcGIS Data Store не будет создавать полные или накопительные архивы при отключенном автоматическом создании резервных копий.

Утилита updatebackupschedule установлена в папке <ArcGIS Data Store installation directory>/datastore/tools.

  1. Запустите оболочку командной строки.
  2. Запустите утилиту updatebackupschedule, чтобы задать требуемую частоту архивации.

    Для запуска утилиты используется следующий синтаксис:

    updatebackupschedule --starttime <local server time> --frequency <number of days>

    Например, чтобы создавать полные архивы по расписанию в 3:00 утра, введите следующее. (время локального сервера) каждый день:

    ./updatebackupschedule.sh --starttime 03:00:00 --frequency 1

Изменение времени хранения файлов архивов реляционного хранилища данных

В архивной папке файлы архивов по умолчанию хранятся в течение 7 дней. Это означает, что при сохранении стандартной частоты архивации (каждые 4 дня) и времени хранения (7 дней), в архивной папке будут храниться 2 полных архива и накопительные архивы за 7 дней. Размер этих файлов зависит от количества данных. На компьютере для хранения архивов должно быть достаточно дискового пространства для хранения всех этих файлов. Если вы увеличите частоту архивации, рассмотрите возможность уменьшения времени хранения архивных файлов. В предыдущем разделе частота архивации была увеличена до каждодневной. Чтобы предотвратить чрезмерное увеличение объема архивной папки, уменьшите время хранения архивных файлов.

Для запуска утилиты updatebackupretaindays используется следующий синтаксис:

updatebackupretaindays <number of days>

В примере ниже время хранения архивных файлов было снижено до 4 дней:

./updatebackupretaindays.sh 4

Создание архива реляционного хранилища данных вручную

Вы можете использовать утилиту backupdatastore, чтобы создать полный архив данных векторного слоя. Вы можете вручную создать полный архив, перед тем как вносить множество изменений в хранилище данных или перед его обновлением. Или вы можете создать архив, чтобы сохранить копию определенного состояния данных, например, в конце первой фазы проекта. Учетная запись, с которой вы подключаетесь к компьютеру с хранилищем данных, чтобы запустить утилиту backupdatastore, должна иметь права на чтение и запись в архивную папку хранилища данных.

Для запуска утилиты backupdatastore используется следующий синтаксис:

backupdatastore <backup_name>

Введите запоминающееся имя файла, чтобы вы могли найти его, когда захотите восстановить данные. Если имя не задано, утилита присвоит файлу имя по умолчанию. Имя по умолчанию дается в формате datastorename-timestamp. Например, если хранилище данных называется corpds и архив создается 10 июля 2014 в 14:25:49:554 UTC, имя архивного файла – corpds-20140710142549554.

Вам будет предложено подтвердить создание архива. Введите yes или y, чтобы продолжить.

Подсказка:

Если вы хотите создать архив с помощью скрипта, следует вставить флаг для отмены подтверждения, как в следующем примере:

backupdatastore --prompt no

В этом примере имя файла генерируется хранилищем данных. В скрипте это необходимо чтобы архив получил уникальное имя.

Удаление архивов, созданных вручную

Если вам больше не нужен файл архива, созданный с помощью утилиты backupdatastore (архивирование вручную), вы можете запустить утилиту listbackups, чтобы получить имя определенного файла архива, затем запустить утилиту deletebackup, чтобы удалить не нужный файл. Например, после обновления хранилища данных вы убедились, что все векторные слои работают, как ожидается, и теперь можно удалить архив, созданный перед обновлением.

В этом примере удаляется база данных preupgrade1104_bu.

./listbackups.sh
Backup_Name                      Status           Backup_Time         Mode
====================================================================================
phase1proj_bu                    BackupComplete   2014-03-08 14:12    manual phase2proj_bu                    BackupComplete   2014-06-21 11:43    manual preupgrade_bu                    BackupComplete   2014-10-04 09:30    manual ds_gdt1oomh-20141103160748082    BackupComplete   2014-11-01 03:00    scheduled
/deletebackup preupgrade1104_bu You are attempting to delete backup 'preupgrade1104_bu'. This operation is irreversible.
Do you wish to continue (Yes or No)?yes
Operation completed successfully

Экспорт реляционных баз данных и баз данных полистного кэша слоя сцены ArcGIS Data Store

Если используется ArcGIS Data Store, оно хранит данные размещенных слоев сцены и объектов, а также полистные кэши слоев сцены. Можно экспортировать размещенные векторные слои и слои сцены, а также полистные кэши слоев сцены при помощи утилиты exportmanageddb. Стоит сделать это, если вы хотите переместить установку ArcGIS Data Store на компьютер с другой операционной системой или в другую версию ArcGIS Data Store. Также следует выполнить это, чтобы получить резервную копию слоев сцены или кэша. Используйте утилиту importmanageddb для восстановления базы данных в новой установке ArcGIS Data Store.

Подсказка:

Или при помощи инструмента webgisdr, установленного с Portal for ArcGIS, можно создать архив, содержащий реляционное хранилище данных и хранилище данных полистного кэша. Для подробной информации о применении инструмента см. раздел Архивы Веб-ГИС в Portal for ArcGIS Руководстве администратора.

Например, если ArcGIS Data Store запущен на сервере Windows, а ваш отдел информационных технологий переходит на серверы Linux, вы можете выполнить следующее для перемещения хранилища данных на новый сервер:

  1. Установите ArcGIS Data Store на сервер Linux, но не выполняйте шаги по настройке хранилища данных.
  2. Выполните экспорт из существующего ArcGIS Data Store на сервере Windows при помощи утилиты exportmanageddb. При этом выполните экспорт в общее местоположение, доступное для нового компьютера.

    В этом примере хранилище данных экспортировано в папку ds2move в общем местоположении \\sharedbox\exports.

    exportmanageddb ds2move --destination \\sharedbox\exports

  3. Выполните импорт файлов в новую установку ArcGIS Data Store на новом компьютере при помощи утилиты importmanageddb. Укажите --bound true, чтобы ваш сайт ArcGIS Server использовал хранилище данных в этом новом местоположении, при этом существующие размещенные векторные слои и слои сцены продолжат работать корректно.

    В данном примере директория для хранения новых данных – /usr/arcgis/datastore.

    importmanageddb ds2move --source-loc /net/sharedbox/exports/dbdump/ds2move --data-dir /usr/arcgis/datastore --server-admin siteadmin --server-password HeyeLee$ecur3 --bound true