Oracle 10g 資料庫在安裝完畢之後預設安裝網頁管理Oracle的訪問路徑,包括:
em:http://localhost:1158/em
isql*plus: http://localhost:5560/isqlplus 和http://localhost:5560/isqlplus/dba
兩個isqlplus有兩個網址,這是因為普通使用者和dba使用者登陸。
要以DBA身份登陸isqlplus,必須先配置好oc4j使用者。oc4j可以使用兩種身份認證方式:
基於xml設定檔(jazn-data.xml)
基於LDAP(Oracle Internet Directory)
第二種正在尋找測試,如果哪位測試出來了可以分享一下。
在此以第一種方式進行測試,也就是採用xml設定檔認證的方式。該設定檔位於
%ORACLE_HOME%/oc4j/j2ee/isqlplus/application-deployments/isqlplus/config(如果是linux或是unix的話是$ORACLE_HOME)
但是該設定檔中的密碼是加密過的,所以我們不能手動修改該檔案,而是通過JAZN(Java AuthoriZatioN)來配置。JAZN是oracle提供的一個JASS(Java Authentication and Authorization Service)工具,需要使用jdk,也可以使用oracle內建的jdk,在%ORACLE_HOME/jdk下面
需要配置java_home和path,這裡就不在介紹了。
進入到dos下面如果跟oracle的安裝路徑不一樣切換到相同的盤符,負責我們需要絕對路徑。
前提條件瞭解後,我們開始操作:
進入到資料庫的安裝目錄下面
%ORACLE_HOME%/oc4j/j2ee/isqlplus/application-deployments/isqlplus/
執行下面的命令:
D:\oracle\product\10.2.0\db_1\BIN>java -Djava.security.properties=D:\oracle\prod
uct\10.2.0\db_1\sqlplus\admin\iplus\provider -jar D:\oracle\product\10.2.0\db_1\
oc4j\j2ee\home\jazn.jar -user "iSQL*Plus DBA/admin" -password welcome -shell
進入後:
JAZN:>
添加一個使用者:
JAZN:> adduser "iSQL*Plus DBA" user password
查看使用者:
JAZN:> listusers "iSQL*Plus DBA"
admin
gyc
賦許可權:
JAZN:> grantrole webDba "iSQL*Plus DBA" gyc
收回許可權
JAZN:>revokerole webDba "iSQL*Plus DBA" gyc
重新啟動isql*plus
isqlplusctl stop
isqlplusctl start
再次登入isqlplus以sysdba許可權登入即可。
如果所在的路徑不對的話會提示如下錯誤:
oracle.security.jazn.JAZNRuntimeException: Configuration file "configjazn.xml" does not exist. Check your JAAS configuration settings.
或者
Realm [iSQL*Plus DBA] does not exist in system.