Oracle有三種登入驗證方式
1.OS認證
登入oracle資料庫作業系統,且必須屬于dba組,如果使用者是sysdba身份登入則不需要密碼;
`[oracle@oracle11g ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Mon Jan 1 22:28:46 2018
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> show user;
USER is "SYS"
SQL> <code><br/>**2.密碼檔案認證**<br/>是一種通過網絡的遠端認證方式,隻有 sysdba權限的使用者可以使密碼檔案;<br/>密碼檔案:<br/></code>[oracle@oracle11g dbs]$ ll
total 28
-rw-rw---- 1 oracle oinstall 1544 Jan 1 22:28 hc_orcl.dat
-rw-r--r-- 1 oracle oinstall 2851 May 15 2009 init.ora
-rw-r--r-- 1 oracle oinstall 1062 Dec 31 23:12 initorcl.ora
-rw-r----- 1 oracle oinstall 24 Sep 17 20:25 lkORCL
-rw-r----- 1 oracle oinstall 1536 Dec 31 13:44 orapworcl——密碼檔案
-rw-r----- 1 oracle oinstall 1536 Oct 15 12:07 orapworcl.bak
-rw-r----- 1 oracle oinstall 3584 Jan 1 22:28 spfileorcl.ora
[oracle@oracle11g dbs]$ `
登入以sysdba:sqlplus sys/oracle@orcl as sysdba
3.密碼密碼認證
指普通使用者非sysdba使用者登入資料庫,必須在資料庫打開的情況下才可以登入,因為普通使用者的密碼是儲存在資料字典裡。
如果sys使用者密碼忘記了,可以直接登入作業系統,sqlplus / as sysdba進行修改
強制重新生成密碼檔案
orapwd file=orapw+sid password=oracle force=y
spfile/pfile參數檔案中的remote_login_passwordfile參數說明
三種設定模式:(可以通過show parameter remote指令檢視目前模式)
1) remote_login_passwordfile = EXCLUSIVE,要密碼檔案認證,自己獨占使用(預設值)
2) remote_login_passwordfile = SHARE,要密碼檔案認證,不同執行個體dba使用者可以共享密碼檔案
3) remote_login_passwordfile = NONE,不使密碼檔案認證,需要通過作業系統認證,即資料庫的特權使用者隻能從作業系統進行登入
remote_login_passwordfile是靜态參數,修改後需要重新開機才能生效
sqlnet.ora中的相關設定
SQLNET.AUTHENTICATION_SERVICES = none | all | ntf(windows)
none: 表示關閉作業系統認證,隻能密碼認證
all : 用于linux或unix平台,關閉本機密碼檔案認證,采用作業系統認證,但遠端<異機>可以使用密碼檔案認證
nts : 用于windows平台
本文轉自 rm_rf_db 51CTO部落格,原文連結:http://blog.51cto.com/12185273/2056819,如需轉載請自行聯系原作者