Skip To Content

ArcGIS Data Store 命令实用程序参考

在本主题中

命令实用程序随 ArcGIS Data Store 一同安装以允许数据存储管理员管理数据存储。此主题描述实用程序并提供语法和示例。

所有实用程序均必须运行于数据存储计算机上。您可在 <ArcGIS Data Store installation directory>/datastore/tools 目录中找到实用程序。

您可输入实用程序名称并在其后加 --help 以获得语法协助。

allowconnection

出于安全方面的原因,默认通过 ArcGIS Server 站点建立到数据存储的所有连接。如果您要打开从其他计算机连接的数据存储,可使用 allowconnection 命令实用程序。

只能在主数据存储计算机上运行 allowconnection 实用程序。

语法

allowconnection <host name> <user name> [<database>]

指定要连接到数据存储的计算机的名称(主机名)和数据存储使用的一个数据库帐户(用户名):数据存储管理员、复本所有者、地理数据库管理员或管理用户(发布要素图层数据的用户),您可以使用 listadminusers 实用程序或 listmanageduser 实用程序获取它们。您还可以指定数据存储数据库的名称,但是,因为只有一个数据存储数据库,所以该值可选。

示例

在此示例中,当以 hqo.n_1E7 管理用户身份建立连接时,允许从 workcom 计算机连接到数据存储数据库。

./allowconnection.sh workcom hqo.n_1E7

backupdatastore

如果您需要在计划的备份期间创建数据存储备份,请使用 backupdatastore 实用程序。升级数据存储前或对数据存储进行大量更改前,您可能会手动创建完整备份。

只能在主数据存储计算机上运行 backupdatastore 实用程序。

语法

backupdatastore <backup name>

示例

在本例中,使用 changebackuplocation 实用程序在为数据存储指定的备份位置处创建名为 project1bu 的完整备份文件。

./backupdatastore.sh project1bu
You are going to back up the data store. This could take some time, depending on the size of your data store.
Please do not interrupt the process once it has started.
Do you want to continue (Yes or No)?Yes

changebackuplocation

在默认情况下,数据存储备份文件存储在与数据存储相同的计算机上。如果无法访问数据存储,您应该将备份文件移到另一台计算机上以确保可以访问。

确保运行 changebackuplocation 实用程序的登录帐户具有共享目录的读写权限。

语法

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

如果备份位置在共享网络计算机上,请指定 --is-shared-folder true。如果您要将现有备份文件移动到新的位置,请指定 --keep-old-backups true

示例

在此示例中,将在计算机 sysshare 的共享目录 ds_backups 中创建备份。当前备份目录中存在的任何备份都会被移到这一新位置。

./changebackuplocation.sh /net/sysshare/ds_backups --is-shared-folder true --keep-old-backups true
You are going to change the data store backup directory.
Do you want to continue (Yes or No)?Yes

changedbproperties

在默认情况下,ArcGIS Data Store 可最多接受 150 个连接。当确定数据存储需要的连接数时,请考虑到 ArcGIS Data Store 内部过程最多需要五个连接。另考虑 ArcGIS Data Store 计算机可以接受且仍可以保持性能的并发连接数。

如果您需要超过 150 个连接,或者您的数据存储正运行在内存并不大的计算机上,您可以使用 changedbproperties 实用程序以更改数据存储所允许的最大连接数。

当您更改允许的最大连接数时,将同时更改主数据存储计算机和备用数据存储计算机上的这一数量。

语法

changedbproperties --max-connections <maximum number connections allowed>

指定的数量不得小于 10。

示例

在此示例中,最大连接数设置为 100。

./changedbproperties.sh --max-connections 100
You are changing the following database properties:
         max number of connections to 100 (on all data store machines)
Changing database configurations could cause the database to restart. Please do not interrupt the process once it has started.
Do you want to continue (Yes or No)?Yes

changeloglocation

如果不希望数据存储使用 <ArcGIS Data Store installation directory>\arcgisdatastore\logs 的默认错误日志文件位置,可以运行 changeloglocation 实用程序在其他目录中创建日志文件。

语法

changeloglocation <directory path>

示例

在本示例中,将在本地目录 ../datastorefiles/logs 中创建日志文件。

./changeloglocation.sh '../datastorefiles/logs'

changenosqldatalocation

如果您在放置场景图层切片的数据存储中存储了大量高分辨率切片,则数据存储会变大。在这种情况下,您可能想要将数据移动到同一服务器的另一驱动器中,或者移动到另一服务器的共享位置处。

如果您将数据移动到共享目录,必须向运行 ArcGIS Data Store 进程 (Linux) 或服务 (Windows) 的用户授予目录的读写权限。

changenosqldatalocation <path> [--prompt {yes | no}]

在本示例中,场景切片数据移动到了计算机 server2 上名为 dstorecache 的共享目录中。

changenosqldatalocation /net/server2/dstorecache

changepassword

ArcGIS Data Store 会为数据存储使用的数据库帐户随机生成用户名和密码。如果您的站点要求设置您自己的密码,则使用 listadminusers 和 listmanageduser 获取帐户的密码,然后运行 changepassword 来重置密码。

只能在主数据存储计算机上运行 changepassword 实用程序。

语法

changepassword <user name> <new password> [--prompt {yes | no}]

提示:

如果需要更改脚本密码(包括禁止确认提示符的标记),则请按以下示例操作:

changepassword gwi_n2Te0 Phfl4mp! --prompt no

示例

在本示例中,用户的密码已由 gwi_n2Te0 更改至 Phfl4mp!。

./changepassword.sh gwi_n2Te0 Phfl4mp!
You are going to change the password for user gwi_n2Te0.
Do you want to continue (Yes or No)?Yes

changestaginglocation

恢复数据后,ArcGIS Data Store 会在过渡位置解压这些压缩的备份文件。这表示您需要具有可兼容此未压缩数据的过渡位置。如果数据存储中包含了大量数据,则您可能希望设置单独的过渡位置并指定用于数据库恢复的过渡位置。

语法

changestaginglocation <directory path>

示例

本例中指定的过渡位置是 /net/sanmarcos/stage

./changestaginglocation.sh /net/sanmarcos/stage

configuredatastore

安装 ArcGIS Data Store 后,您可运行 configuredatastore 命令实用程序创建数据存储并将其注册到 ArcGIS Server 站点。

语法

configuredatastore <ArcGIS Server admin URL> <ArcGIS Server administrator> <ArcGIS Server administrator password> <data directory> [--nosql-only true|false]

ArcGIS Server 管理 URL 为 https://gisserver.domain.com:6443/arcgis 格式。

为在 ArcGIS Server 中具有管理员权限的内置(非企业级)用户,提供用户名和密码。

数据目录是在本地计算机上您要创建数据存储文件的位置。

如果您希望将自己的托管数据库用作数据存储,但是又想发布场景图层,则可以在将 --nosql-only 选项设置为 true 后运行 configuredatastore 实用程序。此操作仅注册用于存储场景图层缓存切片的数据库,而不会创建要素图层数据的数据库。

示例

在本示例中,ArcGIS Server URL 是 https://dataserver.mydomain.com:6443/arcgis/admin,站点管理员用户名和密码是 admin 和 Iph33l$ik,数据目录是 /dstore/data

./configuredatastore.sh https://dataserver.mydomain.com:6443/ admin admin Iph33l$ik /dstore/data

deletebackup

使用 deletebackup 实用程序,您可删除已创建的数据存储备份文件。首先,运行 listbackups 实用程序以查看手动备份的名称和创建时间。然后,您可以运行 deletebackup 实用程序以删除不再需要的手动备份。

请注意,您只能删除不需要恢复备份。例如,您不能删除数据存储的最近完整备份。

语法

deletebackup <backup name>

示例

./deletebackup.sh featuresMarchbu You are attempting to delete backup 'featuresMarchbu'. This operation is irreversible.
Do you wish to continue (Yes or No)?yes
Operation completed successfully

describedatastore

通过 describedatastore 实用程序,您可以查看有关数据存储的以下信息:

  • 数据存储使用的备份、日志文件、过渡位置和 NoSQL 数据位置
  • 备份位置是否在网络共享中
  • 创建完整数据存储备份的频率(备份计划)
  • 保留备份文件的天数
  • 数据存储是否正在运行(数据存储状态)
  • 备用数据存储成为主数据存储的日期和时间(上次故障转移);如果从未发生故障转移则不显示
  • 参与数据存储的主机和备用计算机(如果适用)的名称(成员计算机)
  • 数据存储托管数据库所允许的最大连接数
  • 数据存储注册到 ArcGIS Server 站点的 URL(所属系统 URL)
  • 使用 ArcGIS Server 站点作为其托管服务器的门户 URL(门户 URL)
  • 连接到数据存储的当前要素图层数
  • 数据存储计算机上剩余的可用磁盘空间

注:

NoSQL 信息是 ArcGIS 10.3.1 Data Store 中的新增功能。

语法

describedatastore

示例

./describedatastore.sh
Information of ArcGIS DataStore sthiu0_5T
================================================
Backup location.........../net/nwshare/dsbackups Is backup folder shared...true Staging location........../arcgis/datastore/staging NoSQL data location......./arcgis/datastore/nosqldata Log location............../arcgis/datastore/logs Backup schedule...........{"schedule-starttime":"00:00:00","schedule-frequency":"Every 7 DAYS"}
Days backup retained......31 Data store status.........Started Last failover.............20150130190334005 Member machines...........DSPPRIMARY.DOMAIN.COM Maximum connections.......150 Owning system URL.........https://gisserver_webadaptor.esri.com/arcgis Portal for ArcGIS URL.....https://portal_webadaptor.esri.com/arcgis Number of connections.....8
Free disk space...........174.00GB

exportmanageddb

注:

ArcGIS 10.3.1 Data Store 的新功能。

exportmanageddb 实用程序可创建数据存储托管数据库(存储托管要素图层数据的数据库)的转储文件和与数据存储相关的元数据。如果您需要备份托管数据库,以便在使用不同操作系统的计算机上恢复到 ArcGIS Data Store 安装或恢复到其他 ArcGIS Data Store 版本的安装,可导出数据存储。

在向新计算机导入托管数据库之前,确保没有正在编辑要素图层或正在向门户发布图层的用户。

语法

exportmanageddb <backup name> --destination <output location> [--prompt {yes|no}]

如果您没有指定 --destination 选项和输出位置,则将在数据存储的默认备份位置创建名为 dbdump 的目录(如果该目录尚未存在),并将导出文件置于此新目录中。例如,如果数据存储的默认备份目录为 /net/sysshare/ds_backups,并且您将 dsexp1 指定为备份名称但没有指定输出位置,则导出的托管数据库及其相关文件将放置在以下位置中:/net/sysshare/ds_backups/dbdump/dsexp1.

示例

在以下示例中,将托管数据库及其相关文件输出到 backupserver 服务器上名为 preupgradeexp 的共享网络目录中。

./exportmanageddb.sh preupgradeexp --destination /net/backupserver
You are attempting to back up database 'db_e3hsm'. This could take a long time, depending on the size of your data.
Please do not interrupt the process once it has started.
Do you want to continue (Yes or No)?Yes

importmanageddb

注:

ArcGIS 10.3.1 Data Store 的新功能。

使用 importmanageddb 实用程序将 ArcGIS Data Store 托管数据库恢复到升级后的 ArcGIS Data Store,或者在与源 ArcGIS Data Store 使用不同操作系统的计算机上恢复到 ArcGIS Data Store 安装。

如果恢复时将 --bound 选项设置为 true,请确保重新启动 ArcGIS Server 站点。请注意,默认情况下 --bound 设置为 true。

语法

importmanageddb <backup name> --source-loc <source backup location> --data-dir <data store data directory> [--bound {true|false}] [--prompt {yes|no}]

示例

在下面的示例中,托管数据库恢复到较新的 ArcGIS Data Store 安装版本。新的 ArcGIS Data Store 数据目录已指定。数据存储仍与现有 ArcGIS Server 站点绑定,因此数据存储和现有托管要素图层仍然可用。要确保将新的托管要素图层发布到新计算机,请重新启动您的 ArcGIS Server 站点。

./importmanageddb.sh preupgradeexp --source-loc /net/backupserver/dbdump/preupgradeexp --data-dir /usr/arcgis/datastore --bound true

listadminusers

Listadminusers 实用程序针对数据存储管理员、复本所有者和地理数据库管理员返回用户名和密码。

语法

listadminusers

示例

./listadminusers.sh
Admin users for ArcGIS Data store ds_abcd1234
=================================================
Database Admin User.... adm_11zyx / tT30!bYk22jF Database Repl User..... dsrepuser / uWn/MV0678h4 GDB Admin User......... sde / iO=Qst751*pb

listbackups

Listbackups 实用程序返回完整数据存储备份的名称和它们被写入的位置。Listbackups 实用程序也返回备份状态(无论是否完成),开始备份的时间,以及备份是通过手动使用 backupdatastore 实用程序创建还是由 ArcGIS Data Store 自动创建。

您可以运行 listbackups 以查看备份已完成还是仍在运行、确定您的手动备份数量或在运行 deletebackup 实用程序之前确认文件名称。

语法

listbackups

示例

./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 ds_gdt1oomh-20141103160748082    BackupComplete   2014-11-01 03:00    scheduled
Backups located at: '/net/myserver.ntw.com/dsbackups'

listmanageduser

Listmanageduser 实用程序返回数据存储的管理用户的用户名和密码。管理用户是用于发布托管要素图层的数据库帐户。此帐户拥有数据存储中存储的数据。

语法

listmanageduser

示例

./listmanageduser.sh
Managed users for ArcGIS Data store ds_abcd1234
================================================
UserName     Password             Database
gwi_n2Te0    4cXddhZhve=Y         db_qv5e1

registerdatastore

数据存储保留有关 ArcGIS Server 站点计算机名称的信息。如果您将 ArcGIS Server 站点移动到新的计算机上(例如,如果您获得新的硬件或者现有的 ArcGIS Server 计算机出现故障),您必须从 ArcGIS Server 中取消注册数据存储以移除该信息。当 ArcGIS Server 位于新的计算机上后,您可以使用 registerdatastore 命令实用程序将数据存储注册到 ArcGIS Server 站点。

请注意,此次数据存储与之前一样注册到同一 ArcGIS Server 站点。数据存储包含现有 ArcGIS Server 站点上的托管要素图层的数据。将其注册到其他 ArcGIS Server 站点不会重新创建托管要素图层。

只能在主数据存储计算机上运行 registerdatastore 实用程序。

语法

registerdatastore <ArcGIS Server URL> <ArcGIS Server site administrator user name> <ArcGIS Server site administrator password>

示例

在本示例中,数据存储使用 URL https://gisserver.domain.com:6443/arcgis 重新注册到 ArcGIS Server 站点。ArcGIS Server 主站点管理员用户名为 agsadmin,密码为 Tan$p0n。

./registerdatastore.sh https://gisserver.domain.com:6443/arcgis agsadmin Tan$p0n

removestandbymachine

您可以通过 ArcGIS Server 站点管理员使用移除 ArcGIS Server REST 命令从数据存储中移除备用计算机。但是,如果 ArcGIS Server 站点不可用,您将无法以站点管理员身份登录来执行此操作。在这些情况下,运行 removestandbymachine 实用程序以从数据存储中移除备用计算机。

只能在备用数据存储计算机上运行 removestandbymachine 实用程序。

语法

removestandbymachine <machine name>

示例

在本示例中,备用计算机名为 dsserver2。

./removestandbymachine.sh dsserver2

restoredatastore

如果您无法访问门户的托管要素图层使用的数据,请使用备用文件和 restoredatastore 命令实用程序来恢复数据存储。

如果数据存储出现故障并且不可恢复,可在新计算机上安装数据存储并将最近的数据存储备份恢复到新计算机上。

如果您要将数据回滚到过去的某个特定时间,请在现有数据存储的上方进行恢复。请注意,您只能恢复到备份文件可用时的先前状态。例如,如果您只保留了五天的备份,您只能将数据存储恢复到这五天以内的某个时间点。

只能在主数据存储计算机上运行 restoredatastore 实用程序。

语法

restoredatastore [--target {most-recent | yyyy-mm-dd-hh:mm:ss | <backup file>}] [--source-loc <location of backup files>] [--bound <true|false>] [--data-dir <new data store directory>] [--prompt {yes | no}]

在发生故障后恢复数据存储或移动数据存储,请指定 --target most-recent。如果恢复到某个时间点,请指定您要将数据存储恢复到的日期和时间(UTC 格式)。如果您想要恢复某个特定的备份文件,请指定备份文件名称。如果您没有指定目标,系统会恢复最近的备份。

默认情况下,恢复的数据存储与其 ArcGIS Server 站点相关联(绑定)。如果您要恢复数据存储而不保持数据存储与 ArcGIS Server 站点关联,请只指定 --bound false。除非之前的 ArcGIS Server 站点丢失且不可恢复,否则尽量不要这样做;您可以恢复未绑定的数据存储,并使用新的联合 ArcGIS Server 站点对其进行配置。但是,使用数据存储中的数据的要素图层将不会存在。您必须连接到数据存储数据库以将数据提取为其他格式,并将其重新发布到门户。

示例

在本示例中,最近备份由 /net/buserver/data/backups/usr/arcgisdatastore。由于在默认情况下该数据存储仍会受到将其注册到的 ArcGIS Server 站点的限制,因此您无需指定 --bound true

./restoredatastore.sh --target most-recent --source-loc /net/buserver/data/backups --data-dir /usr/arcgisdatastore
You are attempting to restore the data store from a data store backup. This process could take a long time, depending on the size of your data. Please do not interrupt the process once it has started.
Do you want to continue (Yes or No)?Yes

在本示例中,数据存储从 /net/buserver/data/backups 恢复到 2014 年 7 月 17 日下午 2:30 (UTC) 时的状态。

./restoredatastore.sh --target 2014-07-17-14:30:00 --source-loc /net/buserver/data/backups
You are attempting to restore the data store from a data store backup. This process could take a long time, depending on the size of your data. Please do not interrupt the process once it has started.
Do you want to continue (Yes or No)?Yes

revokeconnection

如果您暂时允许另一客户端直接连接到数据存储,您可以通过运行 revokeconnection 实用程序撤销连接功能。

只能在主数据存储计算机上运行 revokeconnection 实用程序。

语法

revokeconnection <host name> <user name> [<database>]

示例

在本示例中,当以用户 hqo.n_1E7 的身份登录时,数据存储数据库不会再接受 workcom 计算机的连接。

./revokeconnection.sh workcom bn0_3Wa.m hqo.n_1E7

unregisterdatastore

您可以使用 unregisterdatastore 命令实用程序从 ArcGIS Server 站点取消注册主数据存储计算机。如果您有备用计算机,在您取消注册主机之前,必须首先从数据存储中将其移除

如果您决定不再使用数据存储,您要从 ArcGIS Server 站点取消注册数据存储。当从数据存储中取消注册计算机时,ArcGIS Server 将无法再连接到该计算机。

只能在主数据存储计算机上运行 unregisterdatastore 实用程序。

语法

unregisterdatastore [--prompt {yes | no}]

示例

在此,系统通过返回的提示符运行 unregisterdatastore 实用程序。这是默认行为。要禁止提示符,指定 --prompt No

./unregisterdatastore.sh
You are going to unregister the data store.
Do you want to continue (Yes or No)?Yes

updatebackupretaindays

默认情况下,ArcGIS Data Store 将保持备份文件 31 天。通过运行 updatebackupretaindays 实用程序,您可以更改从备份目录中清除备份文件的频率。

只能在主数据存储计算机上运行 updatebackupretaindays 实用程序。

语法

updatebackupretaindays <number of days>

示例

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

./updatebackupretaindays.sh 20

updatebackupschedule

默认情况下,ArcGIS Data Store 每周创建一次完整备份。您可以通过运行 updatebackupschedule 实用程序更改创建完整备份的频率。

使用 24 小时时钟表示法指定开始时间,例如,00:00:00 表示午夜以及 13:00:00 表示下午 1 点。

只能在主数据存储计算机上运行 updatebackupschedule 实用程序。

您必须重新启动 ArcGIS Data Store 以使更改生效。

语法

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

示例

在本示例中,将以每 10 天的频率在下午 11 点(本地服务器时间) 进行完整备份。

./updatebackupschedule.sh --starttime 23:00:00 --frequency 10

updatelicense

ArcGIS for Server 许可到期后,必须更新 ArcGIS for Server 站点的许可。许可信息还存储在 ArcGIS Data Store 托管数据库中;因此,更新用于配置数据存储的 ArcGIS for Server 站点的许可后,必须更新数据存储中的许可。为此,需在安装有主 ArcGIS Data Store 的计算机上运行 updatelicense 实用程序。如果您有备用 ArcGIS Data Store,则更新后的许可将复制到此处。

语法

updatelicense

示例

更新 ArcGIS for Server 许可后,运行 updatelicense 实用程序将新许可移动至数据存储。

./updatelicense.sh