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 user <oracle裡的使用者名稱如sde> identified 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/sh
su -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內部的詳細協助頁 更好,但是實際上難用.