要進行此項授權操作需使用SYSDBA權限(或INTERNAL帳號)連入數據庫且初始化參數REMOTE_LOGIN_PASSWORDFILE的設置必須為EXCLUSIVE具體操作步驟如下
創建相應的密碼文件;
設置初始化參數REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE;
使用SYSDBA權限登錄
CONNECT SYS/internal_user_passsword AS SYSDBA;
啟動數據庫實例並打開數據庫;
創建相應用戶帳號對其授權(包括SYSOPER和SYSDBA)
授予權限GRANT SYSDBA TO user_name;
收回權限REVOKE SYSDBA FROM user_name;
現在這些用戶可以以管理員身份登錄數據庫系統了;
四 使用密碼文件登錄
有了密碼文件後用戶就可以使用密碼文件以SYSOPER/SYSDBA權限登錄Oracle數據庫實例了注意初始化參數REMOTE_LOGIN_PASSWORDFILE應設置為EXCLUSIVE或SHARED任何用戶以SYSOPER/SYSDBA的權限登錄後將位於SYS用戶的Schema之下以下為兩個登錄的例子
以管理員身份登錄
假設用戶scott已被授予SYSDBA權限則他可以使用以下命令登錄
CONNECT scott/tiger AS SYSDBA
以INTERNAL身份登錄
CONNECT INTERNAL/INTERNAL_PASSWORD
五密碼文件的維護
查看密碼文件中的成員
可以通過查詢視圖V$PWFILE_USERS來獲取擁有SYSOPER/SYSDBA系統權限的用戶的信息表中SYSOPER/SYSDBA列的取值TRUE/FALSE表示此用戶是否擁有相應的權限這些用戶也就是相應地存在於密碼文件中的成員
擴展密碼文件的用戶數量
當向密碼文件添加的帳號數目超過創建密碼文件時所定的限制(即ORAPWDEXE工具的MAX_USERS參數)時為擴展密碼文件的用戶數限制需重建密碼文件具體步驟如下
(a)查詢視圖V$PWFILE_USERS記錄下擁有SYSOPER/SYSDBA系統權限的用戶信息;
(b)關閉數據庫;
(c) 刪除密碼文件;
(d) 用ORAPWDEXE新建一密碼文件;
(e) 將步驟a中獲取的用戶添加到密碼文件中
修改密碼文件的狀態
密碼文件的狀態信息存放於此文件中當它被創建時它的缺省狀態為SHARED可以通過改變初始化參數REMOTE_LOGIN_PASSWORDFILE的設置改變密碼文件的狀態當啟動數據庫事例時Oracle系統從初始化參數文件中讀取REMOTE_LOGIN_PASSWORDFILE參數的設置;當加載數據庫時系統將此參數與口令文件的狀態進行比較如果不同則更新密碼文件的狀態若計劃允許從多台客戶機上啟動數據庫實例由於各客戶機上必須有初始化參數文件所以應確保各客戶機上的初始化參數文件的一致性以避免意外地改變了密碼文件的狀態造成數據庫登陸的失敗
修改密碼文件的存儲位置
密碼文件的存放位置可以根據需要進行移動但作此修改後應相應修改系統注冊庫有關指向密碼文件存放位置的參數或環境變量的設置
刪除密碼文件
在刪除密碼文件前大家應當確保當前運行的各數據庫實例的初始化參數REMOTE_LOGIN_PASSWORDFILE皆設置為NONE
(注釋在刪除密碼文件後假如需要以管理員身份連入數據庫則一定要使用操作系統驗證的方法來進行登錄)
[] []
From:http://tw.wingwit.com/Article/program/SQL/201311/16178.html