SYS使用者是Oracle中許可權最高的使用者,而SYSTEM是一個用於資料庫管理的使用者。在資料庫安裝完之後,應立即修改SYS,SYSTEM這兩個使用者的密碼,以保證資料庫的安全。

 安裝完之後修改密碼方法

 cmd命令列下輸入 sqlplus / as sysdba;

 法1.SQL>alter user sys identified by huozhe

 法2.SQL>grant connect to sys identified by 123456

 法3. SQL> password system

 更改 system 的口令

 新口令:

 重新鍵入新口令:

 口令已更改

 (注:法3只適用於SYSTEM)

 驗證:

 SQL> conn system/huozhe

 已連線。

 SQL> show user

 USER 為 "SYSTEM"

 SQL> exit

 注:SYS和SYSTEM使用者之間可以相互修改口令

 修改SYS使用者口令後的登入

 將SYS使用者的口令修改成123456後,可按以下幾種方法登入:

 法1.sqlplus / as sysdba 【以作業系統認證的方式登入,不需要使用者名稱和口令】

 法2.sqlplus sys/abcde as sysdba;

 法3.sqlplus sys/ as sysdba

 SQL*Plus: Release 11.2.0.1.0 Production on 星期二 11月 6 19:10:54 2012

 Copyright (c) 1982, 2010, Oracle.  All rights reserved.

 輸入口令:

 注意:這裡提示輸入口令,不輸入口令直接回車

 連線到:

 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production

 With the Partitioning, OLAP, Data Mining and Real Application Testing optionssqlplus sys as sysdba;

 上述語句,都可以登入成功,然後檢視當前使用者:

 SQL> show user

 USER 為 "SYS"

 這是為什麼呢,為什麼修改了口令沒有效果,不用口令或者隨便用什麼口令都可以進入呢。

 答案是:認證方法。

 oracle的口令認證

 SYS口令認證分為作業系統認證和Oracle認證方法。

 作業系統認證方式

 對於如果是Unix作業系統,只要是以DBA組中的使用者登入的作業系統,就可以以SYSDBA的身份登入資料庫,不會驗證SYS的口令。

 對於windows作業系統,在oracle資料庫安裝後,會自動在作業系統中安裝一個名為ORA_DBA的使用者組,只要是該組中的使用者,即可以SYSDBA的身份登入資料庫而不會驗證SYS的口令。也可以建立名為ORA_SID_DBA(SID為例項名)的使用者組,屬於該使用者組的使用者也具備以上特權。