zoukankan      html  css  js  c++  java
  • oracle创建表空间-用户-角色-授权

    1、创建数据表空间:

    SQL> create tablespace rusky_data
      2  datafile 'D:
    usky
    usky_data01,dbf' size 10M
      3  autoextend on
      4  next 10M maxsize 1024m
      5  extent management local;
    
    表空间已创建。

    EXTENT MANAGEMENT LOCAL:存储区管理方法。本地管理(LOCAL):用二进制的方式管理磁盘,有很高的效率,同进能最大限度的使用磁盘. 同时能够自动跟踪记录临近
    空间的情况,避免进行空闲区的合并操作。
    2、创建临时表空间:

    SQL> create temporary tablespace rusky_tmp
      2  tempfile 'D:
    usky
    usky_tmp.dbf'
      3  size 5m
      4  autoextend on
      5  next 10m maxsize 100m;
    
    表空间已创建。

    临时表空间:只能将临时表放在里面,临时表空间主要放置一些临时数据,比如你查询一个复杂的sql语句,系统会将中间数据放在临时表空间里暂存
    临时表空间会自己删除。在Oracle数据库中进行排序、分组汇总、索引等到作时,会产生很多的临时数据,会使用临时表空间
    删除表空间:
    DROP TABLESPACE rusky_data INCLUDING CONTENTS AND DATAFILES;
    3、创建用户并指定表空间

    SQL> create user rusky identified by rusky
      2  default tablespace rusky_data
      3  temporary tablespace rusky_tmp;
    
    用户已创建。

    以sys或system登录
    oracle内部有两个建好的用户:system和sys。用户可直接登录到system用户以创建其他用户,因为system具有创建别 的用户的 权限。
    sys:系统管理员,拥有最高权限
    system:本地管理员,次高权限
    scott:普通用户,密码默认为tiger,默认未解锁
    用户修改密码:
    除了alter user命令以外,用户还可以使用password命令。如果使用password命令,用户输入的新口令将不在屏幕上显示。有dba特权的用户可以通过password命令改变任何其他用户的口令;其他用户只能改变自己的口令。
    alter user rusky identified by rusky2;
    以sys或system身份登录,输入命令:password rusky,输入原密码及新密码即可。
    以rusky身份登录,输入命令:password

    4、授权及撤销权限
    grant connect,resource,dba to rusky;
    connect role(连接角色)
    临时用户,特别是那些不需要建表的用户,通常只赋予他们connectrole。connect是使用oracle的简单权限,这种权限只有在对其他用户的表有访问权时,包括select、insert、
    update和delete等,才会变得有意义。拥有connect role的用户还能够创建表、视图、序列(sequence)、簇(cluster)、同义词(synonym )、会话(session)和与其他数据库link 
    resource role(资源角色)
    更可靠和正式的数据库用户可以授予resource role。resource提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)和簇
    (cluster)。
    dba role(数据库管理员角色)
    dba role拥有所有的系统权限----包括无限制的空间限额和给其他用户授予各种权限的能力。system由dba用户拥有。
    一般情况下创建用户都会赋予grant connect to username权限,甚至grant connect,resource to username;
    但connect包含了alter session权限,认为不是非常安全,也可以修改成以下的形式.
    grant create session to user;
    select * from user_sys_privs; --------查看当前用户的权限
    Grant dba to 用户名;
    grant create session to rusky; //创建会话,即登录权限。
    unlimited session,create table, insert table,update table
    grant all to public; 授予所有权限给所有用户。
    grant select on scott.emp to rusky;
    grant drop on scott.emp to rusky;
    grant insert on scott.emp to rusky;
    grant update on scott.emp to rusky;
    grant update(ename) on scott.emp to rusky;
    5、撤销权限
    收回权限:revoke 权限 from rusky;
    revoke connect, resource from rusky;
    6、角色
    角色即权限的集合,可以把一个角色授予给用户。三种系统角色:connect、resource和dba。用户也可以创建自己的角色。用户创建的role可以由表或系统权限或两者的组合构成
    。为了创建role,用户必须具有create role系统权限。
      create role myrole;//创建角色
      grant create session to myrole;//将创建session的权限授予myrole
      grant myrole to rusky;
      drop role myrole;删除角色
    但是有些权限是不能授予给角色的,比如unlimited tablespace和any关键字

  • 相关阅读:
    产品交付物
    Java对redis的基本操作
    SourceTree使用方法
    分享几套bootstrap后台模板【TP5版】
    ThinkPHP5在PHP7以上使用QueryList4, ThinkCMF在PHP5中使用QueryList3教程
    delphi 控件背景透明代码
    delphi 程序嵌入桌面效果的实现
    delphi 半透明窗体类
    delphi 一个关于xml文件导入数据库的问题
    Delphi 自带了 Base64 编解码的单元
  • 原文地址:https://www.cnblogs.com/rusking/p/4006487.html
Copyright © 2011-2022 走看看