Skip To Content

管理数据存储备份

在本主题中

您需要进行备份以在发生数据损坏或数据存储故障等故障时恢复数据。如果您的数据存储出于某些原因发生了故障且无法重新启动,则在您创建了数据存储备份并将其放置在安全位置的情况下,您可以设置新的 ArcGIS Data Store,访问备份,然后恢复托管要素图层使用的数据。

您可以决定在数据存储中创建要素图层数据备份的位置和时间,以便进行灾难恢复。。默认情况下,数据存储将自动在 /usr/arcgisdatastore/backups 下创建要素图层数据的备份。也就是说备份文件与数据存储存储在同一计算机上。如果数据存储或主机发生故障,则您无法访问备份文件,因此无法恢复要素图层数据。为此,您不能将备份存储在默认位置。

下图显示了数据存储由用于存储数据的计算机(主机)和用于存储备份文件的网络驱动器组成。在独立于数据存储的计算机上存储备份文件可防止在计算机运行数据存储失败的情况下丢失备份文件。

ArcGIS Data Store 包含用于存储备份文件的计算机和映射的网络驱动器

注:

注意,备份文件仅包含门户的托管要素图层使用的数据。备份文件不会维护场景图层数据或缓存、ArcGIS Server 站点或门户的备份。但是,备份文件可帮助您恢复在数据存储的主机发生故障的情况下丢失的要素图层数据。如果您希望即使在主机发生故障时,托管要素图层也可以工作,请设置备用计算机

定义其他备份目录外,您还可以控制创建完整备份的频率以及保留备份文件的时间

如有需要,您可以使用 backupdatastore 实用程序手动创建要素图层数据的备份

如果您需要将数据存储的托管要素图层数据移动到更新版本的 ArcGIS Data Store,或者您希望在使用其他操作系统的计算机上使数据恢复到 ArcGIS Data Store 安装,可以导出数据存储的要素图层数据,然后将其导入其他 ArcGIS Data Store

定义备份位置

当灾难发生时,例如服务器发生故障或遭到洪水冲毁,备份可以帮助您恢复数据。如果备份位于遭到洪水冲毁的服务器上,则不能恢复数据。因此,您需要将备份文件和数据存储在不同的服务器上。

在另一台计算机上创建一个共享目录用来存储备份文件,然后运行 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>

例如,输入以下内容以在名为 sysshare 的计算机上的 ds_backup 共享目录下创建备份文件,并可以选择保留现有备份文件:

./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 分钟创建一次增量备份(以先发生为准)。(通过日志文件可恢复至特定时间点。) 该数据库用于控制增量备份创建,但您可以通过运行 updatebackschedule 实用程序更改数据存储创建完整备份的频率。如果用户将发布和/或编辑大量托管要素图层,则您应提高创建完整数据存储备份的频率。

注意,备份位置必须具有足够的空间来存储所有备份。备份大小取决于数据量的多少,但如果您使用默认备份设置,备份将包含五个完整备份和 31 天的增量备份文件。这些文件的大小将取决于数据量及其大小。

updatebackschedule 实用程序安装在 <ArcGIS Data Store installation directory>/datastore/tools 目录下。

  1. 打开 shell 命令。
  2. 运行 updatebackschedule 实用程序以指定所需的备份频率。

    运行此实用程序的语法如下:

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

    例如,输入以下内容以计划每 14 天(每两周)的上午 3:00 定期进行完整备份:

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

  3. 使用在 <ArcGIS Data Store installation directory>/datastore.中找到的 stopdatastore 和 startdatastore.sh 命令停止和启动 ArcGIS Data Store

    只有重新启动 ArcGIS Data Store 之后才能应用更改。

更改保留备份文件的时间

默认情况下,备份目录将保留备份文件 31 天。这表示如果您保留默认备份频率(每 7 天)和保留计划(31 天),备份目录将包含 5 个完整备份和 31 天的增量备份文件。这些文件的大小将取决于数据量及其大小。存储备份的计算机必须要有足够的磁盘空间以存储所有这些文件。如果提高备份频率,则需考虑缩短备份文件的保留期间。在前一部分已将备份频率增加到每 14 天。要防止备份目录过大,请缩短备份文件保留期间。

运行 updatebackupretaindays 实用程序的语法如下:

updatebackupretaindays <number of days>

在接下来的示例中会将备份文件保留时间更改为 27 天:

./updatebackupretaindays.sh 27

手动创建备份

您可以使用 backupdatastore 实用程序对数据存储中的要素图层数据进行完整备份。对数据存储进行大量更改前或升级数据存储前,您可能会手动创建完整备份。或者您可能会创建备份以保存特定状态的数据副本,例如,项目第一个阶段的末尾。用于连接至数据存储计算机以运行 backupdatastore 实用程序的登录帐户必须对数据存储备份位置具有读写权限。

运行 backupdatastore 实用程序的语法如下:

backupdatastore <backup_name>

为文件提供一个有意义的名称,这样在您希望恢复该数据时可以找到它。如果未指定名称,实用程序将向该文件分配一个默认名称。默认名称的格式为“数据存储名称-时间戳”。例如,如果将数据存储命名为 corpds 且您是在 2014 年 7 月 10 日 14:25:49:554 UTC 创建的备份,则备份文件名称是 corpds-20140710142549554

您需要确认是否希望创建备份。输入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 用作门户托管服务器的托管数据库,可以导出托管数据库。如果您需要备份托管数据库,以便在使用不同操作系统的计算机上恢复到 ArcGIS Data Store 安装或恢复到其他 ArcGIS Data Store 版本的安装,可执行此操作。使用 exportmanageddb 实用程序导出数据库和相关文件。可将文件输出到目录,并将目录移动到其他 ArcGIS Data Store 计算机上。使用 importmanageddb 实用程序将数据库恢复到新数据存储。

例如,如果在 Windows 服务器上运行 ArcGIS Data Store,但是您的信息技术部门将切换到 Linux 服务器,可执行以下操作将数据存储移动到新服务器上:

  1. 在 Linux 服务器上安装 ArcGIS Data Store,但不配置数据存储。
  2. 使用 exportmanageddb 实用程序从 Windows 服务器上的现有 ArcGIS Data Store 导出托管数据库。导出到新计算机可以访问的共享位置处。

    在本示例中,托管数据库导出到共享位置中名为 ds2move 的目录中,即 \\sharedbox\exports

    exportmanageddb ds2move --destination \\sharedbox\exports

  3. 使用新计算机上的 importmanageddb 实用程序将托管数据库导入新 ArcGIS Data Store 安装。指定 --bound true,使您的 ArcGIS Server 站点使用此新位置中的数据存储,并继续使用现有托管要素图层。

    在本示例中,新数据存储的数据目录为 /usr/arcgis/datastore

    importmanageddb ds2move --source-loc /net/sharedbox/exports/dbdump/ds2move --data-dir /usr/arcgis/datastore --bound true

  4. 导入后,在新计算机上重新启动数据存储。