ArcMap10.7在Oracle中创建地理数据库

ArcMap10.7在Oracle中创建地理数据库

ESRI官网文档

ArcGIS数据库补丁

ArcGIS (Desktop, Engine, Server) Support for Oracle 19c Patch

从 ArcGIS 连接到 Oracle

从 ArcMap 进行连接

要从 ArcMap 连接到 Oracle 中的数据库或地理数据库,请在 ArcMap 计算机上安装 32 位 Oracle 客户端,并将 PATH 环境变量设置为 Oracle 客户端的位置,然后在目录树中创建连接文件。

如果 ArcMap 和 ArcGIS Server 安装在同一台 Windows 计算机上,则将 PATH 变量设置为先读取 64 位客户端,后读取 32 位客户端。

从 ArcGIS Server 连接

如果 Oracle 和 ArcGIS Server 在不同的服务器上运行,则应在 ArcGIS Server 站点上的所有计算机上安装 64 位 Oracle 客户端。在 Windows 计算机上,将 Oracle 客户端目录添加到 PATH 变量。

如果 Linux 服务器上安装了 ArcGIS Server,则编辑与 ArcGIS Server 一同安装的 init_user_param.sh 脚本以包含 Oracle 客户端和实例的相关信息,并重新启动 ArcGIS Server。

vim /app/arcgis/server/usr/init_user_param.sh

#
# For connection with Oracle Runtime or Administrator Client
#

export ORACLE_BASE=/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/client_1
export ORACLE_SID=gisdevpdb
export TNS_ADMIN=$ORACLE_HOME/network/admin
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

systemctl stop arcgisserver.service
systemctl start arcgisserver.service
systemctl status arcgisserver.service

如果希望发布到 ArcGIS Server 的服务使用 Oracle 中数据库或地理数据库的数据,则请将数据库注册到您的 ArcGIS Server 站点。

将 Oracle 数据库注册到 ArcGIS Server

在 Oracle 中配置 extproc 以访问 ST_Geometry

在 Oracle 中配置 extproc 以访问 ST_Geometry

将如下文件从 ArcGIS 客户端计算机复制到 Oracle 计算机的目录中
ST_Geometry_Support_Linux64_Oracle/libst_shapelib.so

chown -R oracle:oinstall ST_Geometry_Support_Linux64_Oracle

以 sde 用户身份从 SQL 客户端连接至 Oracle 实例,然后执行以下 SQL 以查看当前为 ST_SHAPELIB 库设置的路径:

SELECT file_spec
 FROM user_libraries
 WHERE library_name = 'ST_SHAPELIB';
如果此操作返回的路径与 ST_Geometry 库文件位置不匹配,则需要在配置 extproc 后重新创建该库。

将 Oracle extproc.ora 文件配置为指向 ST_Geometry 库文件位置。
vim /oracle/ora19c/soft/19c/hs/admin/extproc.ora
    SET EXTPROC_DLLS=ONLY:/oracle/ST_Geometry_Support_Linux64_Oracle/libst_shapelib.so

重新启动 Oracle 实例才能识别 extproc.ora 文件中的更改
su oracle
cd /oracle/ora19c/soft/19c/bin

在 Oracle 数据库中创建或重新创建 ST_SHAPELIB 库
CREATE or REPLACE LIBRARY ST_SHAPELIB
 AS '/oracle/ST_Geometry_Support_Linux64_Oracle/libst_shapelib.so';

重新编译 sde.st_geometry_shapelib_pkg 包
ALTER PACKAGE sde.st_geometry_shapelib_pkg COMPILE
 REUSE SETTINGS;

需要访问库(包括 web 服务)的所有客户端必须重新连接到数据库

验证ST_Geometry
select sde.st_astext(shape) location from  test_point;

如果未将 Oracle 数据库 open_cursors 参数设置为 300,请运行 sde.gdb_util.update_open_cursors 存储过程来同步 Oracle 数据库参数和地理数据库的设置。

   转载规则


《ArcMap10.7在Oracle中创建地理数据库》 Midas Li 采用 知识共享署名 4.0 国际许可协议 进行许可。
 本篇
ArcMap10.7在Oracle中创建地理数据库 ArcMap10.7在Oracle中创建地理数据库
ArcMap10.7在Oracle中创建地理数据库ESRI官网文档 ArcGIS数据库补丁ArcGIS (Desktop, Engine, Server) Support for Oracle 19c Patch 从 ArcGIS 连接到
2019-10-15 Midas Li
下一篇 
ArcGIS Server站点重建 ArcGIS Server站点重建
ArcGIS Server站点重建ArcGIS Server常见问题及解决方案ArcGIS Server常见问题及解决方案 Linux虚拟机克隆后网卡UUID问题 shapefile与字符集编码设置 配置sde使可以使用sde sql(ST
2019-10-12 Midas Li
  目录