1,創建表空間
create tablespace hxzg_data
logging
datafile 'C:\app\data\hxzg_data.dbf'
size 50m
autoextend on
next 50m maxsize 20480m ;
2,創建用戶
create user db_hxzg identified by 123
default tablespace hxzg_data;
3,復權
grant resource,connect to db_hxzg;
4,給其他用戶訪問權限(db_hxzg以DBA權限登錄)
grant select any table to sun;
創建
create user sun identified by 123; //創建用戶
alert user sun identified by tiger; //修改密碼
刪除
drop user sun cascade; //刪除用戶及對象
drop user sun; //刪除用戶
授權
1、默認的普通用戶sun默認未解鎖,不能進行那個使用,新建的用戶也沒有任何權限,必須授予權限
grant create session to sun; //授予sun用戶創建session的權限,即登陸權限
grant unlimited tablespace to sun; //授予sun用戶使用表空間的權限
grant create table to sun; //授予創建表的權限
grant drop any table to sun; //授予刪除表的權限
grant insert any table to sun; //插入表的權限
grant update any table to sun; //修改表的權限
grant all to public; //這條比較重要,授予所有權限(all)給所有用戶(public)
2、oralce對權限管理比較嚴謹,普通用戶之間也是默認不能互相訪問的,需要互相授權
grant select on tablename to sun;//授予sun用戶查看指定表的權限
grant drop on tablename to sun;//授予刪除表的權限
grant insert on tablename to sun;//授予插入的權限
grant update on tablename to sun;//授予修改表的權限
grant insert(id) on tablename to sun;
grant update(id) on tablename to sun;//授予對指定表特定字段的插入和修改權限,注意,只能是insert和update
grant alert all table to sun;//授予sun用戶alert任意表的權限
撤銷權限
基本語法同grant,關鍵字為revoke
查看權限
select * from user_sys_privs;//查看當前用戶所有權限
select * from user_tab_privs;//查看所用用戶對表的權限
權限傳遞
即用戶A將權限授予B,B可以將操作的權限再授予C,命令如下:
grant alert table on tablename to sun with admin option;//關鍵字 with admin option
grant alert table on tablename to sun with grant option;//關鍵字 with grant option效果和admin類似
角色
角色即權限的集合,可以把一個角色授予給用戶
create role myrole;//創建角色
grant create session to myrole;//將創建session的權限授予myrole
grant myrole to sun;//授予sun用戶myrole的角色
drop role myrole;刪除角色
