解决了一个SDE启动问题,在此记录一下
在server 2008 64位下安装完arcgis sde之后,Post启动服务,总是失败
查看SDE日志(etc目录下)
DB_open_instance()::db_connect (OCI8) error: 12560
init_DB DB_instance_open_as_dba: -51
DBMS error code: 12560
ORA-12560: TNS:protocol adapter error
解释:是32-bit Oracle Client端安装情况下要更改dbinit.sde中的Oracle_SID为Local,用Post Install来启动服务PostInstall又会把dbinit.sde改回去,所以不能使用Post Install来启动服务了。
使用 sdemon -o start -p sdepassword来启动。
官方解释
https://geonet.esri.com/thread/12362
Edit your dbinit.sde file in your ArcSDE\etc directory.
Change SET ORACLE_SID=mysid to SET LOCAL=mysid
This forces the sde service to use the local 32-bit oracle client instead of the server's 64 bit library and avoids bitness incompatibility with your 32-bit ArcSDE installation.
这也说明了为什么网上有人用改ORACLE_SID也能成功的原因。