用户管理是系统管理员最基本的任务之一,用户想要连接数据库并且使用相应的系统资源就必须是系统的合法用户且具有对应的权限。

  1 创建用户

default tablespace default_tablespace
temporary tablespace temp;

创建用户时限制用户对空间的使用量

default tablespace default_tablespace
temporary tablespace temp02
quota 20m on default_tablespace;

2 修改用户

2.1 修改密码

alter user test2 identified by 12345678;

2.2 修改用户磁盘使用量

alter user test2 quota 50m on default_tablespace;

2.3 解锁用户

alter user test2 account unlock/lock;

3 删除用户

drop user test2 cascade; cascase 级联删除,如果用户包含数据库对象,则必须加此关键字才能删除该用户

4 权限管理

用户成功创建之后没有任何权限,不能登录数据库,更不能对数据进行任何操作,只有当被赋予一定的权限之后才能使用。

4.1 授权操作

grant connect, resource to test2;   -- 系统权限

grant select, update, delete on scott.emp to test2;  --对象权限 

4.2  回收权限

revoke connect, resource from test2;   -- 系统权限

revoke select, update, delete on scott.emp from test2; --对象权限

 

4.3 查询用户与权限

DBA_USERS      数据库用户基本信息

DBA_SYS_PRIVS   已授予用户或角色的系统权限

DBA_TAB_PRIVS   数据库对象上的所有的权限

USER_SYS_PRIVS   用户可以查看的自己的系统权限

ROLE_SYS_PRIVS   用户可以查看的自己的角色

ALL_TABLES     用户可以查询的基表信息

USER_TAB_PRIVS  用户将自己的对象权限授予情况

ALL_TAB_PRIVS   哪些用户给自己授权

5 角色管理

角色是一个独立的数据库实体,它包含一组权限,是一个权限或者多个权限的集合,它不属于某个单独用户,可以被授权给任何用户,也可以被收回。当某一些权限需要被经常授权给多个用户时,就可以把这些权限创建成一个角色授权给用户,这样就不必一一授权。角色的存在非常方便数据管理员对系统权限与对象权限的管理。

5.1 预定义权限

系统预定义角色指在数据库安装完成后系统自动创建的一些常用角色,这些角色的已由系统授予对应的权限,可以由数据库管理员直接使用。常见的预定义权限如下:

connect

resource

dba

exp_full_database

imp_full_database

角色connect, resource, dba 主要用于数据库管理,这些角色之间互相没有包含关系,互相独立。数据库管理员需要被赋予这3个角色,一般的开发人员需要被赋予connect, resource角色。

角色exp_full_database, imp_full_database 是用于操作数据库的导入与导出的权限集合,在使用expdp, impdp 或者系统的exp, imp这些工具时,需要具备这两个角色才有权限进行操作。

查看系统预定义角色:

select *
from dba_roles;

5.2 创建角色与授权

创建角色role_test1

create role role_test1 identified by 123456;

给角色授对象权限,将emp与dept的select, update, insert 权限赋予角色role_test1

grant select, update, insert on scott.emp to role_test1;
grant select, update, insert on scott.dept to role_test1;

给角色授予系统权限或者预定义角色(connect, resource 角色包含多个系统权限)

grant connect, resource to role_test1;

将角色role_test1 授予用户test1

grant role_test1 to test1;

查看自己的对象权限与系统权限

select *
from user_tab_privs;

select *
from role_sys_privs;

查看角色具有的预定义角色

select *
from dba_role_privs
where grantee='ROLE_TEST1';

查看用户具有的对象权限

select *
from dba_tab_privs
where grantee='TEST1';

5.3 删除角色

drop role role_test1;

Oracle 用户管理与权限分配的更多相关文章

  1. Oracle 用户管理与权限控制

    Oracle 用户管理与权限控制 oracle数据库的权限系统分为系统权限与对象权限.系统权限( database system privilege )可以让用户执行特定的命令集.例如,create ...

  2. Mysql用户管理及权限分配

    早上到公司,在服务器上Mysql的数据库里新建了个database,然后本地的系统里用原来连接Mysql账号admin连这个数据库.结果报错了,大概是这样子的: Access denied for u ...

  3. 吴裕雄--天生自然ORACLE数据库学习笔记:用户管理与权限分配

    create user mr identified by mrsoft default tablespace users temporary tablespace temp; create user ...

  4. linux 用户创建、管理、权限分配

    (1)su与sudo su:通过su可以在用户之间切换,如果超级权限用户root向普通或虚拟用户切换不需要密码,什么是权力?这就是!而普通用户切换到其它任何用户都需要密码验证: sudo: sudo扮 ...

  5. Oracle 用户管理权限

    Oracle 用户管理权限 一.创建用户的Profile文件 SQL> create profile student limit // student为资源文件名 FAILED_LOGIN_AT ...

  6. Oracle的学习一:安装与卸载、sql *plus常用命令、Oracle用户管理

    1.为什么学习oracle? 性能优越: 小型数据库 中型数据库 大型数据库 acess.foxbase mysql.sql server.informix sybase.oracle.db2 复杂量 ...

  7. Oracle 用户、对象权限、系统权限

    --================================ --Oracle 用户.对象权限.系统权限 --================================  一.用户与模式 ...

  8. Oracle—用户管理的完全恢复(一)

    一.分类 可以分为在非归档模式下和归档模式下的完全恢复,完全恢复主要是针对归档模式下的,在非归档模式下很难做到完全恢复,除非是在做恢复时,联机重做日志还没有被重写. 二.非归档的有关性质 1.在非归档 ...

  9. 四、oracle 用户管理(Profile)

    oracle 用户管理 :profile + tablespace + role + user  一.使用profile管理用户口令概述:profile是口令限制,资源限制的命令集合,当建立数据库时, ...

随机推荐

  1. 精度 Precision

    柏拉图认为,尽管世间万物是不完美的,但存在一种永恒不变的形式,这个形式是完美的,而生命的意义就是让这个世界尽可能的接近这个完美的形式. 怎么理解这句话,和我们今天讲的精度有什么关系.我们先举一个例子, ...

  2. fabric使用

    1.入门博客https://fabric-chs.readthedocs.io/zh_CN/chs/tutorial.html 如果遇到这个问题说明你的fabric版本太高了 卸载到现在版本重新安装就 ...

  3. Zookeeper的一致性

    转载:http://flyfoxs.iteye.com/blog/2121560 下面内容主要摘抄于<<Hadoop实战>>,红色高亮部分是本人添加的白话注释. Zookeep ...

  4. 试验一下Golang 网络爬虫框架gocolly/colly

    参考:http://www.cnblogs.com/majianguo/p/8186429.html 框架源码在 github.com/gocolly/colly 代码如下(github源码中的dem ...

  5. redis在.net架构中的应用(1)--使用servicestack连接redis

    引言:作为少有的.net架构下的大型网站,stackoverflow曾发表了一篇文章,介绍了其技术体系,原文链接http://highscalability.com/blog/2011/3/3/sta ...

  6. Leetcode:234 回文链表

    leetcode:234 回文链表 关键点:请判断一个链表是否为回文链表.示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true. ...

  7. 工具 docker

    环境配置 软件+环境 虚拟机 资源占用 容器  进程隔离 image(镜像)文件 容器文件 docker hub:仓库 docker container run image_name 挂载: 参考链接 ...

  8. C# — Socket通信实现

    昨天晚上在网上查找资料,简单实现了C#开发的Socket通信,以下是具体的开发流程,我使用的是VS2017进行开发的: 一.服务器端: 1.新建一个项目,Windows控制台程序 2.重命名cs文件 ...

  9. 环境部署(一):Linux下安装JDK

    自动化测试的主要目的是为了执行回归测试.当然,为了模拟真实的用户操作,一般都是在UAT或者生产环境进行回归测试. 为了尽量避免内网和外网解析对测试结果的影响,将自动化测试服务部署在外网的服务器是比较好 ...

  10. 浅谈文件断点续传和WebUploader的基本结合

    0.写在前面的话 上篇博客已经是在8月了,期间到底发生了什么,只有我自己知道,反正就是心情特别糟糕,生活状态工作状态学习状态都十分不好,还有心思进取吗,No!现在状态好起来了,生活又充满了希望 :D  ...