標籤:使用 content 驗證 全域 targe 系統管理 服務 track -o
首先,Oracle安裝完畢有三個預設使用者
? Sys:資料庫物件的擁有者。許可權最高。password在安裝的時候(口令管理)能夠改變
? System:資料庫管理員,password為manager
? Scott:一個普通使用者,password為tiger
再看串連Oracle的三種驗證機制
? 作業系統驗證(具體解釋見以下)
? password檔案驗證
? 資料庫驗證
註:前兩者適用於系統使用者,比方:Sys、System等;最後一個適用於普通使用者。比方:Scott。
再看Oracle的啟動過程
? 首先啟動“監聽”
? 然後由系統使用者在不登陸(nolog)的情況下進入sqlplus,並串連到資料庫
? 然後(由系統使用者)啟動資料庫執行個體
轉化為命令即例如以下:
? lsnrctl start(啟動監聽)
? sqlplus/nolog(不登陸)
conn sys/oracle as sysdba(系統使用者串連到資料庫)
? starup(啟動資料庫執行個體)
註:conn sys/oracle as sysdba中“/”前的sys為username。“/”後的oracel為password。sysdba的意思是“系統資料庫管理員”,有了這樣的身份,事實上根本不須要usernamepassword就可串連到Oracle,由於這樣的身份串連時會採用上面的“作業系統驗證”方式,根本不會對username和password進行驗證。
所以我們能夠不寫usernamepassword:conn/as sysdba(“/”不可省略),也能夠隨便寫:conn kb/lbg as sysdba都沒有問題。
這裡再對“作業系統驗證”進行解釋。它就相當於我們串連SqlServer時的windows身分識別驗證,由於windows系統管理員默覺得Oracle、SqlServer的超級管理員,例如以下進行驗證:
開啟電腦管理-- >本機使用者和組-- >組-- >ora_dba查看群組成員是否包括當前登入的windows系統管理員。比如;(我的當前登入對象為v-wangzhip)
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2FuZzM3OTI3NTYxNA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center">
假設存在,就表示windows系統管理員。即為Oracle的dba(資料庫管理員)。所以不寫username、password預設能夠串連到Oracle,假設從ora_dba中刪除此管理員。那麼再conn/as sysdba串連將提示“許可權不足”。
總結
? 系統使用者串連Oracle:sqlplus username/password as sysdba(使用者名稱密碼可任意指定,也可不指定,如:sqlplus/as sysdba 或sqlplus sys/as sysdba或sqlplus sys/admin as sysdba)
? 普通使用者串連Oracle:sqlplus username/password(必須指定使用者名稱、密碼,如:sqlplus scott/tiger)
假設須要指明要訪問的資料庫的服務名(全域資料庫名):
? Sqlplus username/[email protected]_service_name
如: sqlplus scott/[email protected]
假設須要訪問其他機器上的資料庫服務:
? sqlplus username/[email protected]//host:port/sid
Host--指定資料庫server電腦的主機名稱或 IP地址。
Port--指定資料庫server上的監聽port。
Sid--指定要訪問的資料庫的服務名。
注意:
? sys和system須要以sysdba登入
? 在進入sqlplus之後,就能夠使用conn串連到其它使用者,如:conn sys/admin as sysdba或conn scott/tiger
Oracle基礎學習2--Oracle登入與三種驗證機制