標籤:
建立使用者
概述:在oracle中要建立一個新的使用者使用create user 語句,一般是具有dba(資料庫管理員)的許可權才能使用。
create user 使用者名稱 identified by 密碼;
(Oracle有個毛病,密碼必須以字母開頭,如果以數字開頭,它不會建立使用者)
給使用者修改密碼
概述:如果給自己修改密碼可以直接使用
password 使用者名稱
如果給別人修改密碼則需要具有dba的許可權,或是擁有alter user的系統許可權
SQL>alter user 使用者名稱 identified by 新密碼
刪除使用者
概述:一般以dba的身份去刪除某個使用者,如果用其他使用者去刪除使用者則需要具有drop user的許可權。
比如
drop user使用者名稱[cascade]
在刪除使用者時,注意:
如果要刪除的使用者,已經建立了表,那麼就需要在刪除的時候帶一個參數cascade。
使用者管理的綜合案例
概述:建立的新使用者是沒有任何許可權的,甚至連登入資料庫的許可權都沒有,需要為其指定相應的許可權。給一個使用者賦許可權使用命令grant,回收許可權使用命令revoke。
案例:
SQL> conn xiaoming/m12;ERROR:ORA-01045: user XIAOMING lacks CREATE SESSION privilege; logon denied警告: 您不再串連到 ORACLE。SQL> show user;USER 為 ""SQL> conn system/p;已串連。SQL> grant connect to xiaoming;授權成功。SQL> conn xiaoming/m12;已串連。SQL>注意:grant connect to xiaoming;
在這裡,準確的講,connect 不是許可權,而是角色。。 看圖:
現在說下對象許可權,現在要做這麼件事情:
* 希望xiaoming 使用者可以去查詢emp 表
* 希望xiaoming 使用者可以去查詢scott 的emp 表
grant select on emp to xiaoming
* 希望xiaoming 使用者可以去修改scott 的emp 表
grant update on emp to xiaoming
* 希望xiaoming 使用者可以去修改/刪除,查詢,添加scott 的emp 表
grant all on emp to xiaoming
* scott 希望收回xiaoming 對emp 表的查詢許可權
revoke select on emp from xiaoming
對許可權的維護
* 希望xiaoming 使用者可以去查詢scott 的emp 表/還希望xiaoming 可以把這個許可權繼續給別
人。
--如果是對象許可權,就加入 with grant optiongrant select on emp to xiaoming with grant option
我的操作過程:
SQL> conn scott/tiger;已串連。SQL> grant select on scott.emp to xiaoming with grant option;授權成功。SQL> conn system/p;已串連。SQL> create user xiaohong identified by m123;使用者已建立。SQL> grant connect to xiaohong;授權成功。SQL> conn xiaoming/m12;已串連。SQL> grant select on scott.emp to xiaohong;授權成功。
如果是系統許可權
system 給xiaoming 許可權時:
grant connect to xiaoming with admin option
問題:如果scott 把xiaoming 對emp 表的查詢許可權回收,那麼xiaohong 會怎樣?
答案:被回收。
下面是我的操作過程:
SQL> conn scott/tiger;已串連。SQL> revoke select on emp from xiaoming;撤銷成功。SQL> conn xiaohong/m123;已串連。SQL> select * from scott.emp;select * from scott.emp第 1 行出現錯誤:ORA-00942: 表或視圖不存在
結果顯示:小紅受到誅連了。
Oracle使用者管理