zoukankan      html  css  js  c++  java
  • Oracle 用户管理

    在 Oracle 中可以对用户进行建立及授权的操作。

    • 创建用户的语法:
    CREATE USER 用户名 IDENTIFIED BY 密码 ;

    范例:创建一个 test 用户,密码是 test123

    CREATE USER test IDENTIFIED BY test123 ;

    如果要想创建用户,则首先应该使用管理员进行登陆,创建用户之后,开启一个新的 sqlplusw 窗口,并使用此用户进行登陆,出现以下的错误提示:

    提示 test 用户没有创建 session 的操作权限,没有 session 的权限就意味着无法登陆。

    • 为用户授权可以使用如下的格式:
    GRANT 权限 1,权限 2,... TO 用户

    范例:将创建 SESSION 的权限给 test 用户

    GRANT CREATE SESSION TO test ;

    再使用 test 用户进行连接,就可以连接上数据库,就表示创建了一个 SESSION。

    范例:建立 tab 表

    CREATE TABLE tab(
    id  NUMBER PRIMARY KEY NOT NULL ,
    name VARCHAR2(30)
    ) ;

    实际上一个新的用户所有的权限都要分别赋予,如果现在假设要想把多个权限一次性赋予一个用户,可以将这些权限定义成一组角色。

    • 在 Oracle 中提供了两个主要角色:CONNECT、RESOURCE,可以直接把这两个角色赋予 test 用户
    GRANT CONNECT,RESOURCE TO test ;
    • 修改一个用户的密码,格式如下:
    ALTER USER 用户名 IDENTIFIYED BY 密码
    • 在一般的系统中存在,在用户第一次登陆的时候可以修改密码,所以要想完成此功能,可以手工让一个密码失效,格式如下:
    ALTER USER 用户名 PASSWORD EXPIRE ;
    • 锁定用户:
    ALTER USER 用户名 ACCOUNT LOCK ;
    • 解锁用户:
    ALTER USER 用户名 ACCOUNT UNLOCK ;

    要访问其他用户的表,需要授予此张表的访问权限。

    范例:将 scott 用户下的 emp 表的查询及删除权限给 test 用户

    GRANT SELECT,DELETE ON scott.emp TO test ;

      回收权限使用 REVOKE 语法

    REVOKE 权限 ON 用户.表名称 FROM 用户 ;

    范例:回收 test 用户的 SELECT 及 DELETE 权限

    REVOKE SELECT,DELETE ON scott.emp FROM test ; 
  • 相关阅读:
    MS面试归来:)
    准备出发到成都
    线程的同步机制(zz)
    Windows Vista(zz)
    这几天上海热晕了
    微软官方:Vista硬件要求指南(zz)
    有趣的递归缩写(Recursive acronym)
    《三国志》生僻人名读法集(zz)
    Git bash常用命令
    各大输入法分类词库内部格式的简单比较
  • 原文地址:https://www.cnblogs.com/aaron911/p/7777367.html
Copyright © 2011-2022 走看看