Oracle用户相关命令
Oracle用戶是一個數據庫對象,用戶所有的操作默認在自己的模式下進行,模式是一個用戶所擁有的數據庫對象的集合,每個用戶都有自己的模式,用戶和模式之間是一一對應的,模式的名字與用戶名相同。例如,SCOTT用戶的模式為SCOTT,在這個模式中包含了用戶SCOTT擁有的所有數據庫對象,包括表,視圖,索引,存儲程序等。用戶的數據庫對象和數據分布在表空間中,每個用戶都有默認的表空間,如果建立用戶時不指定表空間,系統默認將SYSTEM表空間為用戶默認表空間。
Oracle數據庫有三類用戶,一類是sysdba,一類是sysoper,一類是普通用戶,前2類為特權用戶。sys用戶同時具有sysdba和sysoper兩種權限,它是創建數據庫時自動產生,不需要手工創建。普通用戶指定了sysdba或sysoper權限,該用戶也成特權用戶。特權用戶信息可以從動態性能視圖v$pwfile_users中獲得。
創建新的用戶并指定表空間:
create user [username] identified by "[password]"??
default tablespace 表空間
temporary tablespace 臨時表空間
quota 表空間配額 on 表空間(為用戶在表空間指定空間配額以字節,KB,MB為單位,也可以無限制配額:UNLIMITED TABLESPACES)
password expire
account lock|unlock;
為用戶授權:grant 權限1、權限2...to??[username1],[username2],
1. grant create session to [username] 此時只能連接到數據庫?
2. grant connect,resource to [username] 授予角色權限?
3. grant select,delete on scott.emp to [username] 把scott下emp表的select和delete權限給用戶
回收權限:revoke 權限1、權限2 from [username]??
revoke 權限1、權限2 on scott.emo from [username]?
1. revoke select ,delete on scott.emo from [username]??把用戶在scott下emp表的select和delete權限回收
2. revoke all on scott.emp from [username] 把用戶在scott下emp表的所有權限回收
Oracle中有兩類角色,一種是預定義的角色,一種是用戶自定義角色,常見的預定義角色有connect, resource,dba
創建角色:create role 角色名
角色中添加權限:grant 權限1,權限2 to 角色名
grant 權限1,權限2 on scott.emp to 角色名
將角色授予用戶:grant 角色 to [user1],[user2]
回收角色:revoke 角色 from [user1]
修改用戶密碼:alter user [username] identified by [password]??
下次登錄時提示修改密碼:alter user [username] password expired
鎖住用戶:alter user [username] account lock???
解鎖用戶:alter user [username] account unlock??
刪除用戶:drop user user_name cascade 用戶以及所擁有的數據庫對象一起被刪除
?
用戶的相關信息可以從數據字典視圖dba_users中獲得:select username,password,default_tablespace,account_status from dba_users;
用戶的系統權限和對象信息都可以從數據字典視圖獲得:
system_privilege_map 當前數據庫中已經定義的所有系統權限
dba_sys_privs?? sys用戶查詢任何用戶所具有的系統權限
user_sys_privs 普通用戶查詢自己所擁有的系統權限
??????????? session_privs 查詢一個用戶在當前會話中所具有的系統權限
用戶的角色信息都可以從數據字典視圖獲得:
dba_roles 記錄數據庫中所有角色
dba_role_privs 記錄所有被授予用戶或另一角色的角色
user_role_privs 記錄所有授予當前用戶的角色
role_role_privs 記錄一個角色中包含的其他角色
role_sys_privs 記錄一個角色中包含的系統權限
role_tab_privs 記錄一個角色中包含的對象權限
session_roles 記錄當前會話中所使用的角色
轉載于:https://www.cnblogs.com/PerOpt/p/3731826.html
總結
以上是生活随笔為你收集整理的Oracle用户相关命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解决Div自适应高度的方法(转)
- 下一篇: cobbler2.4.4部署vmware