AIX6.1 Oracle 11.0.2.4配置ST_Geometry

来源:互联网 发布:法丽达官网 只有淘宝店 编辑:程序博客网 时间:2024/05/17 09:18

环境

SDE版本:10./10.2/10.2.1/10.2.2/10.3/10.4/10.5

Oracle版本:11g R2 11.2.0.4

操作系统:AIX 6.1

配置过程

  1. 用将libst_shapelib.so文件上传到oracle安装目录的lib目录下,如果是用root账户上传的,可以通过以下命令修改libst_shapelib.so文件的拥有者及用户组为oracle用户和oracle用户组:

chown [-R] 账号名称 libst_shapelib.so

chgrp [-R] 用户组名称 libst_shapelib.so

或者:

chown [-R] 账号名称:用户组名称 libst_shapelib.so

  1. 编辑extproc.ora文件(位于 ORACLE_HOME\hs\admin 目录中):

    SET EXTPROC_DLLS=ONLY: /u01/app/oracle/11.2.0/db_1/ lib/libst_shapelib.so

备注:在修改之前请先备份

cp extproc.ora extproc_back.ora

  1. 检查user_libraries表,是否ST_SHAPELIB的记录存在:

select * from user_libraries;  

有可能不存在,也有可能存在,但是对应的外部函数库文件路径不正确。

  1. 在user_libraries表中创建或更新ST_SHAPELIB对应的外部函数库文件所在的路径:

create or replace library ST_SHAPELIB  as '/u01/app/oracle/11.2.0/db_1/lib/libst_shapelib.so'; 

  1. 编译st_geometry_shapelib_pkg包:

alter package sde.st_geometry_shapelib_pkg compile reuse settings; 

如果经过上述编译之后ST_SHAPELIB的状况是invalid,那么可以在PLSQL中直接指定ST_SHAPELIB的文件路径。

  1. 配置完成后,重启监听器,并执行常用测试函数:

    select st_point(0,0,0) from dual;

备注

  1. 切换帐户

# su - Oracle

查看监听器状态:$ lsnrctl status

关闭监听:$ lsnrctl stop

启动监听:$ lsnrctl start

切换帐户一定要加 "-"

否则会出现:   bash:lsnrctl:command not found.错误

  1. vi命令说明

使用键盘上的 i 键进入可编辑状态。修改完成后,输入命令 :wq 保存退出。如果需要回退,先按Esc退出命令,再按u命令回退。

  1. PLSQL中直接指定ST_SHAPELIB的文件路径

0 0