(二十三) Oracle用户和权限管理

34 篇文章 0 订阅
33 篇文章 4 订阅

用户

什么是Oracle用户

Oracle用户是用来连接数据库和访问数据库对象的

操作用户

创建用户

需要具备创建用户的权限

-- 使用hr用户, 报错如下
SQL> create user temp1 identified by oracle;
create user temp1 identified by oracle
ORA-01031: 权限不足

-- 切换sys用户之后
SQL> create user temp1 identified by oracle;
User created

创建的用户没有指定表空间的化, 使用的是默认表空间

使用指定表空间创建用户

示例: 创建一个用户名为u_jssd, 使用jssd作为他的表空间

SQL> create user u_jssd identified by oracle default tablespace jssd;
User created

示例. 添加临时表空间

SQL> create user u_jssd identified by oracle default tablespace jssd temporary tablespace temp;

删除用户

SQL> drop user u_jssd;
User dropped

删除用户的同时, 删除用户下的其他对象

drop user u_jssd cascaed;

数据控制语言DCL

grant… 授予用户权限

revork… 撤销用户权限

授予系统权限

GRANT create session, create table, create sequence, create view, create index
to scott;
授予创建其他对象权限
  • create session
  • create table
  • create sequence
  • create view
  • create procedure
  • create tablespace
-- 授予创建会话权限
SQL> grant create session to u_jssd;
Grant succeeded

-- 授予创建表权限
grant create table to u_jssd;

-- 授予使用表空间的权限(有时候表空间不是用户默认表空间, 是手动指定的, 这时候应该授予使用表空间的权限
grant unlimited tablespace to u_jssd;

撤销权限

Revoke 权限 from 用户

示例: 撤销u_jssd用户创建表的权限

revoke create table from u_jssd;

Oracle中的角色

什么是角色

角色就是用户权限的集合, 一个角色拥有若干权限, 把角色分配给用户的时候, 就分配了相应的权限

创建角色

SQL> create role manager;
Role created

给角色分配权限

-- 向manager用户添加创建会话, 创建表, 创建视图, 创建序列的权限
SQL> grant create table, create session, create view, create sequence to manager;
Grant succeeded

授予一个角色给用户

SQL> grant manager to u_jssd;
Grant succeeded

撤销用户权限

SQL> revoke manager from u_jssd;
Revoke succeeded

上一章: Oracle序列索引和同义词

下一章: Oracle 执行计划

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值