1 / 11
文档名称:

oracle权限.ppt

格式:ppt   大小:739KB   页数:11页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

oracle权限.ppt

上传人:yixingmaoh 2018/7/30 文件大小:739 KB

下载得到文件列表

oracle权限.ppt

相关文档

文档介绍

文档介绍:用户
创建一个用户,先登录sys用户
SQL>CONN /AS SYSDBA
新建一个HP用户
SQL>CREATE USER USER_NAME IDENTIFIED BY PWD;
更改用户的密码,使用alter语句
SQL>ALTER USER USER_NAME IDENTIFIED BY N_PWD;
删除用户
SQL>DROP USER USER_NAME
例:
CONN /AS SYSDBA
CREATE USER HP IDENTIFIED BY HP;
ALTER USER HP IDENTIFIED BY HP1;
DROP USER HP;
SQL> Alter user HP account lock; // 加锁
SQL> Alter user HP account unlock;//解锁
权限

系统权限:系统规定用户使用数据库的权限。(系统权限是对用户而言)。
实体权限:某种权限用户对其它用户的表或视图的存取权限。(是针对对象而言的)。
DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。
RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。
CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据
对于普通用户:授予connect, resource权限。
对于DBA管理用户:授予connect,resource, dba权限。
新建用户必须得给session的权限。这是最基本的权限。以保证用户能够登陆数据库,否则这个用户有再多别的权限也是没有意义的
CONN /AS SYSDBA
DROP USER HP
CREATE USER IDENTIFIED BY HP;
GRANT CREATE TABLE,CREATE VIEW TO HP;
CONN HP/HP---是要报错的没有session的权限
CONN /AS SYSDBA
SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE='HP';
GRANT CREATE SESSION TO HP;
例:创建用户给权限(最基本的权限是登陆数据库的权限,就是session会话权限)
CONN /AS SYSDBA
CREATE USER HP IDENTIFIED BY HP;
GRANT CREATE SESSION TO HP;
CONN HP/HP;
CREATE TABLE I (ID INT);
检验一下,HP用户现在只有登陆数据库的权限,那么用hp创建表是不成功的,应为没有创建表的权限
给用户授权的语句是
SQL>GRANT 权限 TO USER
现在可以查询一下自己拥有什么权限
SQL>SELECT * FROM SESSION_PRIVS
当给用户create table权限但是提示表空间无权限的时候就运行
alter user aGuotu quota 1000M on HP;
alter user hp quota unlimited on users;
grant unlimited tablespace to HP;给HP一个所有的表空间的权限
权限下还有一个public,public是数据库中所有用户的一个总称,也算是集合吧。统一的给用户某种权限或者多种权限。使用户默认的拥有某种权限或者多种权限。
例:
CONN /AS SYSDBA
GRANT CREATE SESSION TO PUBLIC;
CREATE USER HP IDENTIFIED BY HP;
CONN HP/HP
现在创建的用户就不用在给session权限了,因为public已经给所有的用户包括新建的用户都有session的权限
with admin option和with grant option
with admin option 是系统权限授权,比如创建表,创建视图等等。。
with grant option 是对象权限授权,比如插入,更新和删除(delete)没有drop的去权限
删除用户: DROP USER USER_NAME,删除一个用户
DROP USER USER_NAME CASCADE(后加cascade会删除根表所有有关联的对象)
删除角色:DROP ROLE ROLE_NAME;
撤销系统权限:REVOKE 权限 FROM USER _NAME;
撤销对象权限:REVOKE 权限 ON 对象 TO USER_NAME;
例如:我们刚才给了所有的用户session的权限,现在就来撤销掉session的权限
CONN /AS SYSDBA
REV