ArcSDE10.1升级SP1报ORA-00933: SQL command not properly ended

来源:互联网 发布:什么软件可以排版 编辑:程序博客网 时间:2024/05/15 04:23

今天接到一个用户咨询,询问为什么我使用ArcSDE10.1 for Oracle升级SP1提示升级失败,具体错误如下:

[Mon Sep 29 23:27:25 2014] ST_Geometry Schema Owner: (SDE) Type Release: 1007 [Mon Sep 29 23:27:25 2014] Instance initialized for ((sde)) . . . [Mon Sep 29 23:27:25 2014] Error: Underlying DBMS error (-51). [Mon Sep 29 23:27:25 2014] Error: DB_arcsde_setup: Unable to connect [Mon Sep 29 23:27:25 2014] ORA-00933: SQL command not properly ended [Mon Sep 29 23:27:25 2014] ERROR installing/upgrading ArcSDE, Error = -51 


这个错误其实是ArcGIS的一个Bug。

首选大家了解一下怎么从ArcSDE 10.1升级到ArcSDE10.1 SP1。

1:将ArcGIS 10.1 for Desktop升级到10.1版本

2:ArcGIS 10.1 SP1 for Desktop直连SDE10.1(使用sde用户)

3:在升级过程中可能会提示sde用户缺乏某些升级权限,具体权限会显示在错误信息列表中,用户赋予sde用户权限即可

4:选择.sde用户——右键属性——选择Upgrade Geodatabase。升级即可


导致这个问题一个根本原因就是这应该是一个老用户会碰到的问题,因为在ArcGIS10.1版本之前,使用ArcSDE直连,连接参数通常会使用sde:oracle11g:netservicename这样的输入方式,但是在ArcSDE10.1之后,用户只需要输入netservicename或者easy connection字符串即可,前面的sde:oracle11g系统会自动添加上去,但是连接之后重新选择该连接文件的连接属性,系统又自动将sde:oracle11g的关键字添加上去,所以很多用户觉得直接写入sde:oracle11g:netservicename就可以了,其实系统会自动再添加一个sde:oracle11g,那么就会变成sde:oracle11g:sde:oracle11g:netservicename,这肯定就出现问题了。


这一段比较绕,希望大家慢慢看。


解决方案:连接属性输入netservicename或者easy connection(比如IP:1521/服务名)


Bug Number NIM086410Submitted Nov 9, 2012 5:51 PMSeverity HighApplies To ArcSDE/Enterprise GeodatabaseVersion Found 10.1 SP1Prog Language N/AServer Platform Client Platform Database OracleLocale N/AStatus Version Fixed N/ASP Fixed N/A

Synopsis

Upgrading an Enterprise geodatabase using a database connection established with the traditional syntax for direct connections fails with error 'ORA-00933: SQL command not properly ended'

Additional Status Information

With the new connection dialog, the best practice is to directly user TNS name or easy connection string for the INSTANCE parameter.

Alternate Solution

Do not use the old syntax of sde:oracle11g:tnsname within the connection that is upgrading the geodatabase. Ensure that a new connection is established with one of the following:

1 - Make a connection to the Oracle geodatabase by typing only the TNSNAME in the 'Instance' textbox and the geodatabase will upgrade successfully.
OR
2 - Modify the sqlnet.ora file on the client machine to enable easy connect:
NAMES.DIRECTORY_PATH= (TNSNAMES,EZCONNECT)
Then connect to the geodatabase with the easy connect string (refer to ArcGIS 10.1 documentation) and upgrade the geodatabase.

个人出版专著,国内首部介绍企业级GIS地理数据库的技术书籍,淘宝、京东、当当、亚马逊均有销售

如果购买书籍,可以加入QQ群(78773981)将截图QQ我,邀请加入VIP群,获得更加优质服务。

微信号:arcgis_share
名称:ArcGIS技术分享
作者:李少华

CSDN:http://blog.csdn.net/linghe301
版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!


0 0
原创粉丝点击