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

  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. Git版本管理工具常用命令说明

    Git常用命令 $ touch README.md 创建一个README.md文件 $ git init  创建本地仓库(repository),将会在文件夹下创建一个 .git 文件夹,.git 文 ...

  2. Gps定位和wifi定位和基站定位的比较

    现在手机定位的方式是:Gps定位,wifi定位,基站定位 Gps定位的前提,手机开启Gps定位模块,在室外,定位的精度一般是几米的范围 wifi定位的前提,手机要开启wifi,连不连上wifi热点都可 ...

  3. Java和Php比较

    这样从几个方面来看:一.运行机制:Java代码被编译成字节码后,会在虚拟机里由JIT进行二次编译成为本地码,据传言其执行速度可以和C++相媲美,经过我自己测试,用Java实现一个简单的Memcache ...

  4. No.0

    算法类 1.快速排序算法 2.树的非递归后序排序算法 3.希尔排序 4.冒泡排序 5.链表和链表转向 6.其他   设计模式 1.单例模式 2.工厂模式 3.抽象工厂模式 4.面向对象设计,ooa,o ...

  5. Python:Day20 模块

    模块是用来组织函数的. 模块一共3种: python标准库 第三方模块 应用程序自定义模块 模块搜索路径:sys.path import sys print(sys.path) import calc ...

  6. pytorch例子学习-DATA LOADING AND PROCESSING TUTORIAL

    参考:https://pytorch.org/tutorials/beginner/data_loading_tutorial.html DATA LOADING AND PROCESSING TUT ...

  7. Centos7下用户登录失败N次后锁定用户禁止登陆的方法

    前言 针对linux上的用户,如果用户连续3次登录失败,就锁定该用户,几分钟后该用户再自动解锁.Linux有一个pam_tally2.so的PAM模块,来限定用户的登录失败次数,如果次数达到设置的阈值 ...

  8. oracle 11G direct path read 很美也很伤人

    direct path read在11g中,全表扫描可能使用direct path read方式,绕过buffer cache,这样的全表扫描就是物理读了. 在10g中,都是通过gc buffer来读 ...

  9. Windows解压安装mysql 5.7.24,并部署多个mysql服务

    mysql官网windows安装文档 https://dev.mysql.com/doc/refman/5.7/en/windows-installation.html 第一步,选择安装包   htt ...

  10. 【转】WPF PasswordBox不支持绑定解决方法

    原文地址:https://www.cnblogs.com/wxjing67/p/3935717.html PasswordBox的Password属性因为安全原因不支持直接绑定,可以使用依赖属性实现. ...