關於Oracle資料庫REMOTE_LOGIN_PASSWORDFILE參數的設定
Oracle的公用程式orapwd命令可以用來建立口令檔案,該命令的參數有3個:
C:/>orapwd Usage: orapwd file=<fname> password=<password> entries=<users> force=<y/n> where file - name of password file (mand), password - password for SYS (mand), entries - maximum number of distinct DBA and force - whether to overwrit OPERs (opt), There are no spaces around the equal-to (=) character. C:/> |
File參數:口令檔案名稱
Password參數:sys使用者的口令
Entries參數:為其他特許的Oracle使用者帳戶保留的條目數量
在預設情況下,Oracle資料庫不會被配置為使用口令檔案方式對使用者進行登入校正。要設定資料庫,可以編輯init.ora參數檔案。在參數檔案中設定初始化參數:remote_login_passwordfile。觀察Oracle預設設定,該參數設定為EXCLUSIVE方式。
SQL> show parameter remote_login_passwordfile NAME TYPE VALUE ------------------------------------ ----------- ----------- remote_login_passwordfile string EXCLUSIVE SQL> |
EXCLUSIVE值:該參數說明只有一個資料庫可以使用這個口令檔案。在這種模式下,口令檔案可以包含用於多個特許的Oracle賬戶的口令。這是推薦的操作模式,特別是在運行RMAN時。如果希望將RMAN與來自於遠程用戶端的資料庫連接,則必須使用該參數設定。
另外還可以設定的值有:
NONE參數:這是預設值。在這種情況下,Oracle會忽略口令檔案,並且sysdba訪問只給予本地特許的登入。
SHARED參數:該參數說明多個資料庫可以使用相同的口令檔案。這種模式只能儲存SYS使用者帳戶的口令。
如果使用的是Oracle 10g的SPFILE參數檔案啟動資料庫,而不是PFILE檔案啟動資料庫,使用alter system命令可以更改這個參數的設定:
ALTER SYSTEM SET REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE SCOPE=SPFILE |
需要注意的是:這個參數不是動態參數。需要在資料庫載入到MOUNT狀態下修改,另外改變以後需要重新啟動資料庫,參數的設定才能夠生效。