萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> oracle教程 >> Oraclesysdba與sysoper的認證方式

Oraclesysdba與sysoper的認證方式

 1.ORACLE有兩種方式可以認證sysdba/sysoper用戶:

1).操作系統級認證:即登錄到oracle數據庫主機,使用如下用戶登錄後,可以直接使用sqlplus / as sysdba登錄:在linux/unix下隸屬於dba權限組(linux/unix)的用戶,在windows下隸屬於ORA_DBA組的用戶;

2).遠程認證:口令文件認證,即在任何主機都可以使用sqlplus sys/xxx@sid登錄。

2.兩種方式有各自的開關:

1).操作系統級認證的開關:sqlnet.ora中AUTHENTICATION_SERVICES,當SQLNET.AUTHENTICATION_SERVICES=NTS,NTS代表NTSecurity時,即采用OS認證;如果為NONE則關閉操作系統級認證,必須采用usr/pwd as sysdba/sysoper 登陸。

2).口令文件認證的開關:spfile/pfile中remote_login_passwordfile參數:

remote_login_passwordfile = EXCLUSIVE,則一個實例專用;

remote_login_passwordfile = SHARE則可以多個實例共享(用於OPS/RAC環境);

remote_login_passwordfile = NONE則不啟用口令文件,此時任何sysdba/sysoper都無法連接進來。

remote_login_passwordfile = shared:More than one database canuse a password file. However, the only user recognized by the password file isSYS.

OS級認證是優先於口令文件認證的。這兩個認證方式可以同時打開、同時關閉或者只開一個,圖示如下:

Oraclesysdba與sysoper的認證方式    三聯

3.口令文件:

1).口令文件的生成與重建

orapwd file=filename password=password entries=max_users

filename: Name of the password file(mandatory)

password: The password forSYSOPERand SYSDBA (mandatory)

entries: The maximum number ofdistinct users allowed to connect as SYSDBAor

SYSOPER. If you exceed this number,you must create a new password file. It is safer to have a larger number. Thereare no spaces around the equal-to (=) character.

windows下密碼文件默認的位置是ora92/database目錄,默認的文件名是pwdSID.ora,linux下oracle默認的位置是$ORACLE_HOME/dbs目錄,默認的文件名是orapwSID,對於別的文件名是不認的。

2).密碼文件用戶的維護與查詢

執行grant sysdba/sysoper to 用戶 ,oracle會自動在口令文件中增加一個條目,並且把密碼copy過來。

select * fromv$pwfile_users可以查看口令文件

例如:

SQL> grant sysdbato scott;

Grant succeeded

SQL> select * fromv$pwfile_users;

USERNAME SYSDBA SYSOPER SYSASM

------------------------------------ ------- ------

SYS TRUE TRUE FALSE

SCOTT TRUE FALSE FALSE

copyright © 萬盛學電腦網 all rights reserved