選擇當前操作的實例:
Solaris:
% setenv ORACLE_SID SAL1
% setenv ORACLE_HOME /u01/app/oracle/product/10.1.0/db_1
% setenv LD_LIBRARY_PATH /usr/lib:/usr/dt/lib:/usr/openwin/lib:/usr/ccs/lib
Windows:
SET ORACLE_SID=SAL1
識別數據庫軟件的版本:
10.2.0.3.0
第一位:Major Database Release Number
第二位:Database Maintenance Release Number
第三位:Application Server Release Number
第四位:Component-Specific Release Number
第五位:Platform-Specific Release Number
可以查詢PRODUCT_COMPONENT_VERSION或V$VERSION獲取數據庫的版本信息
數據庫管理員的安全性
建立完數據庫後建議再創建一個用戶日常管理工作的用戶,並賦予適當的權限,不要直接使用sys和system
注意:Sys用戶和system用戶在創建之處均被賦予了dba角色,而dba角色是不包含sysdbahe sysoper這兩個特權的
數據庫管理員的認證
1、 Sysdba和sysoper特權允許在數據庫未打開的情況下也能訪問數據庫實例,這兩個特權的控制已經超出了數據庫本身
2、 Sysdba和sysoper主要區別在於sysoper不能訪問用戶數據表中的數據,而sysdba可以
3、 注意:當以sysdba或sysoper連接時,會話的當前用戶不再是命令行指定的用戶,而是被轉爲一個專用的模式;對於sysdba連接是sys模式,而sysoper是public模式!
4、 有兩種認證方式:操作系統認證和密碼文件認證
5、 使用操作系統認證:
對於操作系統認證,用戶必須隸屬於以下幾個組之一:
Operating System Group UNIX User Group Windows User Group
OSDBA dba ORA_DBA
OSOPER oper ORA_OPER
通過以下命令指定以“操作系統人在那個方式”連接數據庫:
Connect / as sysdba 或
Connect / as sysoper
如果當前用戶不屬於以上的操作系統組,那麼系統暉提示出錯!
6、 使用密碼文件認證:
Ø 使用以下命令創建密碼文件:;
ORAPWD FILE=filename PASSWORD=password ENTRIES=max_users
Ø 將“REMOTE_LOGIN_PASSWORDFILE”這個初始化參數設爲“EXCLUSIVE”
Ø 使用create user命令創建用戶
Ø 使用GRANT SYSDBA to <newuser> 命令給新建用戶sysdba特權
Ø 運行“CONNECT <newuser>/<userpass> AS SYSDBA”以sysdba特權連接數據庫
創建和管理密碼文件
1、 使用orapwd
Orapwd命令中指定的password是爲sys用戶設置的,當使用alter user命令改變sys用戶的密碼時,密碼文件和數據庫字典中的密碼均會更改爲新的密碼(注意:當“REMOTE_LOGIN_PASSWORDFILE”的值爲“SHARED”時,你不能更改sys用戶的密碼)
2、 關於“REMOTE_LOGIN_ PASSWORDFILE”初始化參數
有以下幾個可以設置的參數值:
u NONE:忽略密碼文件,即不可以通過密碼文件來以sysdba或sysoper特權登錄數據庫
u EXCLUSIVE(默認值):允許增加、修改、刪除用戶或者改變sys用戶的密碼
u SHARED:密碼文件不可變更,即不可新增用戶或改變sys的密碼
注意:如果“REMOTE_LOGIN_ PASSWORDFILE”被設置爲“EXCLUSIVE”或“SHARED”而對應的密碼文件又不存在,則等同於將“REMOTE_LOGIN_ PASSWORDFILE”設置爲“NONE”
3、 在密碼文件中新增用戶
當給某個用戶賦予sysdba或sysoper特權時,會將該用戶名和對應的權限記入密碼文件中,只要該用戶留有sysdba或sysoper特權中的一個,就不會從密碼文件中刪除,直至取消了全部的兩個特權
注意:使用alter user更改擁有sysdba或sysoper特權用戶的密碼也同時會修改密碼文件中該用戶的密碼
查詢試圖“V$PWFILE_USERS”可以獲取當前有哪些用戶被賦予了這兩個特權
4、 維護密碼文件
替換密碼文件的過程:
Ø 查詢“V$PWFILE_USERS”記錄已被賦予了sysdba或sysoper特權的用戶
Ø 刪除密碼文件
Ø 使用ORAPWD新建密碼文件
Ø 使用grant命令新增其他用戶
刪除密碼文件:
刪除密碼文件後,只能通過操作系統認證的方式才能以sysdba或sysoper特權連接
刪除用戶:
Revoke sysdba from <user1>
Revoke sysoper from <user1>