zoukankan      html  css  js  c++  java
  • oracle中的表空间以及和表空间有关的操作

    oracle中表空间

      表空间是oracle对物理数据库上相关数据文件的逻辑映射。一个数据库逻辑上被划分成一个或若干个表空间,每个表空间包含了在逻辑上相关联的一组结构。每个数据库至少有一个表空间(system表空间)。每个表空间由同一磁盘上的一个或者多个文件组成,这些文件就是数据文件。一个数据文件只能属于一个表空间。在表空间中可以建立多个用户。

    1)表空间的建立

      基本语法格式:

          create tablesapce 表空间名称
          datafile '文件的路径(服务器上的路径)'
          size 大小
          autoextend on自动扩展
          next 每次扩展的大小

    例如:

      create  tablespace firstspace
      datafile 'e:firstspace.dbf'
      size 100m
      autoextend on
      next 10m;

    2)查看表空间

      查看oracle数据库所有的表空间

      SELECT  tablespace_name FROM dba_tablespaces;

    3)删除表空间包括物理文件

       DROP TABLESPACE firstspace1 INCLUDING CONTENTS AND DATAFILES;

    4)创建用户

      在一个表空间中可以创建多个用户。

      语法格式:

        create user username

        identified by userpassword

        default tablespace tablespacename(用于指定该用户属于哪个表空间)

      4.1新创建的用户是没有权限的,

    在oracle中有三种用户角色:connect 角色,resource 角色,dba角色。

    三种角色有不同的权限

    connect角色:它是授予最终用户的最基本的权利,它大概有如下这些权利:

        alter session ---修改会话的权利

        create cluster ---建立聚簇

        create database link ---建立数据库连接

        create sequence ---建立序列

        create session--- 建立会话

        create synonym---建立同义词

        create view ---建立视图

    resource角色:一般是授予开发人员的。它有如下权利:

        create cluster ---建立聚簇

        create procedure---建立存储过程

        create sequence ---建立序列

        create table---建立表

        create trigger---建立触发器

        create type---建立类型

    dba角色:dba拥有全部的特权,是系统的最高权限,只有dba才可以创建数据库结构,并且系统权限也需要DBA授权,并且dba用户可以操作全体用户的任意表,包括删除表等。

    进入sys进行给用户授权:

        sqlplus sys/admin as sysdba

        授予dba权限: grant dba to user(用户名);

        撤回权限:revoke dba from user;

    给用户授权完成过后,查看当前用户权限:  select * from user_role_privs;

    完成建立表空间以及经过授权过后,就可以进行相应操作了。

    5)这时用新用户登录进去可以在进行以下操作

      5.1 查看当前用户拥有的表: select * from user_tables;

      5.2 查看DBA用户拥有的表:select * from dba_tables;不过没啥意义。

      5.3 查看当前表空间的使用情况:select * from user_users;

    6)删除用户 

       6.1) drop user username ;//当你这个用户里面没有任何对象时,没有任何内容使用这个删除用户。

      6.2) drop user username cascade;//强制删除这个用户,不管你里面有没有对象。

  • 相关阅读:
    LeetCode Missing Number (简单题)
    LeetCode Valid Anagram (简单题)
    LeetCode Single Number III (xor)
    LeetCode Best Time to Buy and Sell Stock II (简单题)
    LeetCode Move Zeroes (简单题)
    LeetCode Add Digits (规律题)
    DependencyProperty深入浅出
    SQL Server存储机制二
    WPF自定义RoutedEvent事件示例代码
    ViewModel命令ICommand对象定义
  • 原文地址:https://www.cnblogs.com/jasonboren/p/10920144.html
Copyright © 2011-2022 走看看