zoukankan      html  css  js  c++  java
  • 数据库(学习整理)----2--关于Oracle用户权限的授权和收权

    知识点:
        1、Oracle数据库中所用的用户等级是平级的!只是每个用户的权限不同而已!

        2、在一个用户登录后,可以在自己的登录状态下访问其他用户的数据缓冲区、表、以及表的操作!(只要该用户用权限!)

        3、我们可以在一个有创建用户权限的用户登录后,进行创建(赋予权限等)操作,创建后的用户和当前用户是平级的!权限不同而已!
    (1)、使用 sysDBA登录 创建一个Jason用户,密码:abc123

          SQL语句:
              create user Jason identified by abc123;

          执行后效果:
              用户Jason已经创建了,但是却不能登录Oracle,因为还没有赋予登录权限(创建会话权限!)

    (2)、给用户Jason赋予登录权限:

          SQL语句:
              grant connect to Jason;

          执行后的效果:
              用户Jason可以登录Oracle了!
              但是却不能进入数据库中的数据缓冲区的权限!

    (3)、给用户Jason进入数据缓冲区的权限:

          SQL语句:
              grant resource to Jason;

              执行后的效果:
              但是现在仍然不能对数据库中的表进行操作(增删改查)!

    (4)、给用户Jason赋予对表的:insert/delete/update/select的操作权限!

          SQL语句:
            (1):grant all on system.testTB1 to Jason; //给四个权限(增删查改)

            (2):grant select on system.testTB1 to Jason; //给Jason查询system用户testTB1表的权限

            依此类推......

    (5)收回Jason权限:

          SQL语句:
              (1):收回增删查改权限。
                  revoke all on system.testTB1 from Jason;
                或者               

                  revoke insert,select,delete,update on system.testTB1 from Jason;

              (2):收回指定权限:

                //revoke [insert/select/delete/update] on system.testTB1 from Jason;

                revoke insert on system.testTB1 from Jason//回收新增权限
    (6)删除Jason用户:

          SQL语句:
            drop user Jason (cascade:强制丢弃);

          执行之后的效果:
            (1)用户Jason从数据库中被删除了,再也登不上Oracle了!并且Jason用户下的信息都会被删除!

  • 相关阅读:
    Unix环境中的刷新
    C++ 的类型转换方法
    系统对信号的三种处理方式
    进程原语与线程原语的比较
    C和C++对带空参数列表的函数声明的不同处理
    函数指针
    字符串化的预处理器特征
    调试技巧
    信号产生的条件
    结构体大小问题
  • 原文地址:https://www.cnblogs.com/newwind/p/5670052.html
Copyright © 2011-2022 走看看