zoukankan      html  css  js  c++  java
  • Oracle中用户的创建和权限设置

    权限:
      CREATE SESSION --允许用户登录数据库权限
      CREATE TABLE --允许用户创建表权限
      UNLIMITED TABLESPACE --允许用户在其他表空间随意建表

    角色:
      CONNECT 角色:--是授予最终用户的典型权利,最基本的权力,能够连接到ORACLE数据库中,
      并在对其他用户的表有访问权限时,做SELECT、UPDATE、INSERTT等操作。
      RESOURCE 角色: --是授予开发人员的,能在自己的方案中创建表、序列、视图等。
      DBA 角色,是授予系统管理员的,拥有该角色的用户就能成为系统管理员了,它拥有所有的系统权限
      ALTER SESSION --修改会话
      CREATE CLUSTER --建立聚簇
      CREATE DATABASE LINK --建立数据库链接
      CREATE SEQUENCE --建立序列
      CREATE SESSION --建立会话
      CREATE SYNONYM --建立同义词
      CREATE VIEW --建立视图
      CREATE CLUSTER --建立聚簇
      CREATE PROCEDURE --建立过程
      CREATE SEQUENCE --建立序列
      CREATE TABLE --建表
      CREATE TRIGGER --建立触发器
      CREATE TYPE --建立类型
      
      例:

    #SQLPLUS /NOLOG
      SQL> CONN / AS SYSDBA;
      SQL> CREATE USER XIMING IDENTIFIED BY "XIMING123" ACCOUNT UNLOCK DEFAULT TABLESPACE TS_XIMING_DATA TEMPORARY TABLESPACE TS_XIMING_TMP; --USERNAME/PASSWORD都是用户自定义,创建用户时,需要指定数据表空间和,临时表空间
      SQL> GRANT UNLIMITED TABLESPACE,SELECT ANY TABLE,SELECT ANY DICTIONARY TO XIMING;
      SQL> GRANT CREATE SESSION,CONNECT TO XIMING;
      SQL> GRANT CREATE ANY TABLE ,DROP ANY TABLE, CREATE ANY INDEX ,DROP ANY INDEX,ALTER ANY TABLE,COMMENT ANY TABLE,UPDATE ANY TABLE,INSERT ANY TABLE,DELETE ANY TABLE TO XIMING;
      SQL> GRANT CREATE ANY VIEW ,DROP ANY VIEW TO XIMING;
      SQL> GRANT CREATE ANY PROCEDURE,ALTER ANY PROCEDURE TO XIMING;
      SQL> CONN XIMING/XIMING123
      SQL> SELECT * FROM USER_SYS_PRIVS;--查看当前用户所有权限
    一、创建
      SYS;--系统管理员,拥有最高权限
      SYSTEM;--本地管理员,次高权限
      SCOTT;--普通用户,密码默认为TIGER,默认未解锁
      ORACLE有三个默认的用户名和密码
      1.用户名:SYS密码:CHANGE_ON_INSTALL
      2.用户名:SYSTEM密码:MANAGER
      3.用户名:SCOTT密码:TIGER

    二、登陆
      SQLPLUS / AS SYSDBA;--登陆SYS帐户
      SQLPLUS SYS AS SYSDBA;--同上
      SQLPLUS SCOTT/TIGER;--登陆普通用户SCOTT

    三、管理用户
      CREATE USER XIMING;--在管理员帐户下,创建用户 XIMING
      ALERT USER XIMING IDENTIFIED BY XIMING666;--修改密码

    四、授予权限
      1、默认的普通用户SCOTT默认未解锁,不能进行那个使用,新建的用户也没有任何权限,必须授予权限
      --授予 XIMING 用户创建SESSION的权限,即登陆权限,允许用户登录数据库
      GRANT CREATE SESSION TO XIMING;
      --授予XIMING用户使用表空间的权限
      GRANT UNLIMITED TABLESPACE TO XIMING;
      --授予创建表的权限
      GRANT CREATE TABLE TO XIMING;
      --授予删除表的权限
      GRANTE DROP TABLE TO XIMING;
      --插入表的权限
      GRANT INSERT TABLE TO XIMING;
      --修改表的权限
      GRANT UPDATE TABLE TO XIMING;
      --这条比较重要,授予所有权限(ALL)给所有用户(PUBLIC)
      GRANT ALL TO PUBLIC;

      2、ORALCE对权限管理比较严谨,普通用户之间也是默认不能互相访问的,需要互相授权
      GRANT SELECT ON TABLENAME TO XIMING;--授予XIMING用户查看指定表的权限
      GRANT DROP ON TABLENAME TO XIMING;--授予删除表的权限
      GRANT INSERT ON TABLENAME TO XIMING;--授予插入的权限
      GRANT UPDATE ON TABLENAME TO XIMING;--授予修改表的权限
      GRANT INSERT(ID) ON TABLENAME TO XIMING;
      --授予对指定表特定字段的插入和修改权限,注意,只能是INSERT和UPDATE
      GRANT UPDATE(ID) ON TABLENAME TO XIMING;
      GRANT ALERT ALL TABLE TO XIMING;--授予XIMING用户ALERT任意表的权限

    五、撤销权限
      基本语法同GRANT,关键字为REVOKE

    六、查看权限
      SELECT * FROM USER_SYS_PRIVS;--查看当前用户所有权限
      SELECT * FROM USER_TAB_PRIVS;--查看所用用户对表的权限

    七、操作表的用户的表
      SELECT * FROM XIMING.<TABLENAME>(用户.表明);

    八、权限传递
      即用户A将权限授予B,B可以将操作的权限再授予C,命令如下:
      GRANT ALERT TABLE ON TABLENAME TO XIMING WITH ADMIN OPTION;--关键字 WITH ADMIN OPTION
      GRANT ALERT TABLE ON TABLENAME TO XIMING WITH GRANT OPTION;--关键字 WITH GRANT OPTION效果和ADMIN类似

    九、角色
      角色即权限的集合,可以把一个角色授予给用户
      CREATE ROLE XIHONG;--创建角色
      GRANT CREATE SESSION TO XIHONG;--将创建SESSION的权限授予XIHONG
      GRANT XIHONG TO XIMING;--授予XIMING用户XIHONG的角色
      DROP ROLE XIHONG;删除角色

  • 相关阅读:
    Troubleshooting MySQL Memory Usage
    Innodb Log checkpointing 和 dirty Buffer pool pages的关系
    MySQL pager 命令有趣的用法
    测定INNODB REDO LOGS的写入量
    max_allowed_packet & Mysqldump
    链接MyISAM文件
    RFID常识
    C++的程序的文件结构(zt)
    使用C#开发ActiveX控件(zt)
    RFID自动识别术语解释(zt)
  • 原文地址:https://www.cnblogs.com/qiuyu666/p/10774295.html
Copyright © 2011-2022 走看看