Oracle用戶管理(基礎)

適合初學者的學習

常識:

1. DDL:數據定義語言,創建、修改、刪除一張表
2. 數據操縱語言,向一張表中進行增、刪、改(執行完命令要對執行提交操作)
3. DCL:數據控制語言,授權和撤銷權限

基礎知識:

  1. 命令行開啓監聽器:lsnrctl start
  2. 開啓事物:oradim -starup -sid orcl
  3. 鏈接用戶:sqlplus / as sysdba

創建用戶:

1.創建會話(session)權限給lisi用戶:

->grant create session to lisi;

2.創建建表(table)權限給lisi用戶:

->grant create table to lisi;

3.創建不受上線的表空間的使用權限給lisi用戶:

->grant unlimited tablespace to lisi;

4.撤銷創建會話權限(其他格式類似):

->revoke create table from lisi;

5.通過用戶視圖方式查看當前用戶有哪些權限:

->select * from user_sys_privs;

注意:
1、可以同時授予和撤銷權限:

->grant create table,unlimited tablespace to lisi;

2、當插入、更新、修改數據時候要用commit提交插入的數據

對象權限(誰擁有誰授權):

默認情況下:個人創建的用戶與用戶之間他們的表是完全隔離的,所以說它們之間是不能夠訪問的,通過授權可以改變對象之間的權限。但是sys用戶可以訪問任意用戶的表。(假設有lisi、wangwu兩用戶,表分爲:mytable、mytab)
1.在wangwu用戶中把它的mytab表的查詢權限給lisi用戶(插入、刪除…同樣意思):

->grant select on mytab to lisi;

2.在wangwu用戶中把它的mytab表的所有權限給lisi用戶:

->grant all on mytab to lisi;

3.在wangwu用戶中把它的mytab表的所有權限在lisi用戶全部撤銷:

->revoke all on mytab from lisi;

4.查看整個表有哪些權限(如果已經把權限精確到列那麼此數據字典就不起作用了):

->select * from user_tab_privs;

5.把權限定位到某一列來進行對象之間的授權(比如把wangwu用戶中的mytab表的name列的更新權限授權給lisi):

->grant update(name) on mytab to lisi;

6.當權限精確到列可以通過下面命令來查詢權限:

->select * from user_col_privs;

全局權限:

1.把一個用戶的所有表的創建權限授權給所有用戶:

->grant create any table to public;

2.把一個用戶的一個表的刪除權限給public (wangwu用戶中mytab表):

->grant delete mytab to public;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章