在 Oracle 数据库中启用地理数据库功能
本主题仅适用于 ArcGIS for Desktop Standard 和 ArcGIS for Desktop Advanced。
您可作为地理数据库管理员从 ArcGIS for Desktop 连接至现有的已配置 Oracle 数据库,并在其中创建主 sde 地理数据库。
如果您决定要在 Oracle 数据库中使用地理数据库功能(如拓扑、网络、版本化编辑、存档或复制),则可创建地理数据库。在现有数据库中创建地理数据库允许您对表空间的大小和位置进行自定义。
您可使用创建企业级地理数据库工具在 Oracle 数据库中创建地理数据库,此工具还将为您创建 sde 用户并对其授予创建地理数据库所需的权限。但是,如果需要提前创建 sde 用户(例如,如果数据库管理员无法访问 ArcGIS,但不想为地理数据库管理员提供运行创建企业级地理数据库工具的 sys 密码),则可在 Oracle 中手动创建 sde 用户并为其授予权限。然后,地理数据库管理员可以在 ArcGIS 中以 sde 用户的身份连接到数据库并运行启用企业级地理数据库工具,以在数据库中启用地理数据库功能。
以下为使用启用企业级地理数据库工具(可通过目录树的数据库连接进行访问)在 Oracle 数据库中启用地理数据库功能时所采用的步骤:
-
创建名为 sde 的数据库用户,并为其授予创建地理数据库所需的权限。
有关这些权限列表的信息,请参阅 Oracle 中地理数据库的用户权限。
- 将 ST_Geometry 库放置在 Oracle 服务器上。
可以在 ArcGIS 客户端的 DatabaseSupport 目录中找到 ST_Geometry 库。如果 Oracle 安装在 Linux 或 UNIX 服务器上,则将 libst_shapelib.so 文件放置在 Oracle 服务器上适合您的服务器操作系统的目录中。如果 Oracle 安装在 Windows 服务器上,则将 Windows st_shapelib.dll 文件放置在 Oracle 服务器上的目录中。
服务器上放置库的目录必须可以从用来运行启用企业级地理数据库工具的客户端计算机进行访问。如果将库放置到 UNIX 或 Linux 计算机上,请确保 sde 用户对该文件夹具有读访问权限,并对库文件具有执行权限。
- 启动 ArcMap 或 ArcCatalog。
- 从目录树创建数据库连接指向 Oracle 数据库,同时作为 sde 用户连接。
务必在数据库连接 对话框上保存用户密码。
- 右键单击数据库连接,然后单击启用地理数据库。
这将打开启用企业级地理数据库工具。
- 将 Oracle 数据库的数据库连接文件添加到输入数据库文本框中。
- 浏览至授权 ArcGIS for Server 时创建的 ArcGIS for Server 授权文件,并将其添加到授权文件文本框中。
使用向导来授权 ArcGIS for Server 之后,密钥代码文件将被写入安装该软件的服务器。如果在 Linux 计算机上授权 ArcGIS for Server,则会在 /arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release>/sysgen 下创建该文件。如果在 Windows 服务器上进行授权,则会在 Program Files\ESRI\License<release>\sysgen 下创建该文件。如果尚未执行此操作,则授权 ArcGIS for Server 创建此文件。
- 单击确定以运行工具。
- 此外,如果计划在 Oracle 的地理数据库中依据 ST_Geometry 数据写入 SQL 查询,请执行以下操作:
- 配置 Oracle extproc。
- 更新 st_shapelib 的 Oracle 库条目。可通过运行 CREATE OR REPLACE LIBRARY SQL 语句完成更新。
例如,在已将 st_shapelib.dll 放置在名为 libraryfiles 的文件夹中的 Windows 服务器上,语句应该为:
CREATE OR REPLACE LIBRARY st_shapelib AS 'c:\libraryfiles\st_shapelib.dll';
在具有名为 libfiles 的目录的 Linux 服务器上,语句应该为:
CREATE OR REPLACE LIBRARY st_shapelib AS '/usr/libfiles/libst_shapelib.so';
有关地理数据库创建过程的日志文件 (GDBCreateGeodatabase<#>.log) 会写入为运行工具的计算机上的 %TEMP% 变量指定的目录。如果在运行工具时出现任何问题,可查看此日志文件以解决这些问题。