oracle驗證方式簡介

next_junction發表於2014-01-21

oracle登入驗證方式(Authentication Methods)
管理員使用者sysdba,sysoper可以通過口令檔案登入db,啟動db。
 1:如果是本地登入的話(secureCRT遠端登入到linux也屬於本地登入),可以有兩種驗證方式:
           一個是作業系統驗證(os)。一個是口令檔案驗證(口令檔案位置為:$ORACLE_HOME/dbs/orapwORACLE_SID)

(1):作業系統驗證即是使用oracle使用者登入,此時不需要密碼,只要如下:
            #sqlplus /nolog 然後 sql>conn / as sysdba 然後sql>startuop --即可以啟動資料庫。

(2):如果不是oracle使用者登入的話,比如說用wilson使用者登入,因為wilson不是dba組的,所有想連線oracle資料庫得通過口令檔案驗證方式登入資料庫,如下:
     設定兩個變數:
         #export ORACLE_HOME=...(寫oracle使用者下設定的$ORACLE_HOME變數)
         #export ORACLE_SID=...(寫oracle使用者下設定的$ORACLE_SID變數)
         # /u01/oracle/bin/sqlplus /nolog  --當上面兩個變數設定完成後(不直接輸入sqlplus是因為此使用者沒有sqlplus命令的執行許可權??)
         sql> conn / as sysdba --此時會報許可權不夠(insufficient privileges),因為需要走口令檔案驗證。
         sql> conn sys/123 as sysdba--輸入錯誤的密碼,也是報上面錯誤。
         sql>conn sys/oracle as sysdba --只有輸入口令檔案中存在的dba使用者和正確的密碼,才會連線到oracle,然後即可以啟動資料庫。
        Connected to an idle instance--有連線到空閒instance的提示,證明此時已經通過口令檔案的驗證方式連線到了空閒例項。
 2:如果是遠端登入的話,也可以通過os或者orapwORACLE_SID口令進行驗證。
         遠端客戶端連線伺服器資料庫時,資料庫必須啟動監聽:
         #lisrctl start --啟動監聽。    
         客戶端方面也要有tnsnames檔案的配置
          (2.1)連線可以用tcp(不安全的,明文傳送)或者tcps(安全的)),如果是tcp的話即是不安全連線一定會走口令檔案驗證。

    cmd遠端sqlplus連線如下:
          (1)sqlplus sys/oracle@ORCL1 as sysdba --ORCL1是tnsnames檔案中配置的連線字元    
          (2)sqlplus sys/oracle@遠端伺服器ip:埠號(預設是1521)/service_name(??) as sysdba --??是不確定具體描述。

 3:口令檔案的建立:
        $orapwd file=$ORACLE_HOME/dbs/orapwORACLE_SID password=oracle entries=5(entries是最多可以存放的使用者數量)
        注意要在引數檔案中設定:remote_login_passwordfile=exclusive.--(才支援口令檔案驗證)。
        然後可以通過grant sysdba to yonghu;--給使用者授權新增到orapw中


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29117696/viewspace-1073661/,如需轉載,請註明出處,否則將追究法律責任。

相關文章