ArcGIS的ArcSDE10突然无法连接Oracle,提示有错误:
经过查询Google,得解决办法:
1、查看用户的proifle是那个,一般是default: sql>SELECT username,PROFILE FROM dba_users; 2、查看指定概要文件(如default)的密码有效期设置:sql>SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';3、将密码有效期由默认的180天修改成“无限制”:ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; 4、修改后,还没有被提示ORA-28002警告的用户不会再碰到同样的提示;已经被提示的用户必须再改一次密码,举例如下:$sqlplus / as sysdbasql> alter useridentified by <原来的密码>原来的密码>
第四步很重要,因为修改了前面的limit,但是在sqlplus里使用conn <oracle里的用户名>依旧提示密码过期,只要重新设置密码就好了.还好oracle没有不允许新密码为老密码,否则还要多许多步骤,更麻烦.
这个ORA-28002: the password will expire within 7 days的问题就算暂时解决了吧.oracle这个设置有点恶心,没有在安装oracle的时候要求设置.
再次启动sde服务,出现下面的内容就可以运行sde了:
[root@localhost Desktop]# cat ./restartSDE.sh #/bin/shsu -l sde -lc '/home/sde/arcgis/sdeexe100/bin/sdemon -o shutdown -p sde'su -l sde -lc '/home/sde/arcgis/sdeexe100/bin/sdemon -o start -p sde'
echo press Any Key To Continue...read pressAnyKeyToContinue
[root@localhost Desktop]# ./restartSDE.sh SDE not running on server, Unable to get iomgr status.-------------------------------------------------------ArcSDE 10.0 for Oracle11g Build 685 Fri May 14 12:05:43 2010-------------------------------------------------------ST_Geometry Schema Owner: (SDE) Type Release: 1007Instance initialized for ((sde)) . . .Connected to instance . . .DBMS Connection established...RDBMS: "Oracle"Instance Name: "esri_sde"IOMGR Process ID (PID): 21024 ArcSDE Instance esri_sde started Wed May 2 10:20:49 2012press Any Key To Continue...
但是不理解的是 oracle的em网页管理显示:
代理连接失败,原因也是密码过期,这是那个用户的呢?监听程序是正常的.只要这个正常就OK了.
Oracle做的东西非常的难用.GUI难用,命令行的也够难用的,比Linux的bash命令行体验要差许多,如果自动补全了,提供sqlplus内部的详细帮助页 更好,但是实际上难用.