`
squall140
  • 浏览: 140886 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

表空间的概念和使用

 
阅读更多

 

概念:表空间实质是组织数据文件的一种途径,Oracle就是通过表空间这个数据库对象完成对数据的组织的。在将数据插入Oracle数据库之前,必须首先建立表空间,然后将数据插入表空间的一个对象中。

解释数据库、表空间、数据文件、表、数据的最好办法就是想象一个装满东西的柜子。数据库其实就是柜子,柜中的抽屉是表空间,抽屉中的文件夹是数据文件,文件夹中的纸是表,写在纸上的信息就是数据。

目的和意义:方便管理,就像每个城市会划分成很多区,每个区又有很多街道一样

目的和意义具体体现在他的用途上:

-目录表空间
每个数据库只有一个目录表空间,它是在发出 CREATE DATABASE 命令时创建的。目录表空间被 DB2 命名为 SYSCATSPACE,它保存了系统目录表。总是在创建数据库时创建该表空间。

-常规表空间
常规表空间保存表数据和索引。它还可以保存诸如大对象(Large Object,LOB)之类的长数据,除非这些数据显式地存储在长表空间中。如果某些表空间是数据库管理的空间(Database Managed Space,DMS),则可以将表及其索引分别放到单独的常规表空间中。我们将在本文后面定义 DMS 和系统管理的空间(System Managed Space,SMS)之间的区别。每个数据库中必须至少有一个常规表空间。创建数据库时指定该表空间的缺省名为 USERSPACE1。

-长表空间
长表空间用于存储长型或 LOB 表列,它们必须驻留在 DMS 表空间中。它们还可以存储结构化类型的列或索引数据。如果没有定义长表空间,那么将把 LOB 存储在常规表空间中。长表空间是可选的,缺省情况下一个都不创建。

-系统临时表空间
系统临时表空间用于存储 SQL 操作(比如排序、重组表、创建索引和连接表)期间所需的内部临时数据。每个数据库必须至少有一个系统临时表空间。随数据库创建的系统临时表空间的缺省名为TEMPSPACE1。

-用户临时表空间
用户临时表空间存储已声明的全局临时表。创建数据库时不存在用户临时表空间。至少应当创建一个用户临时表空间以允许定义已声明的临时表。用户临时表空间是可选的,缺省情况下一个都不创建。

 

 

 

 理解大致可以这样来简单看待Oracle的组成层次:

    数据库--表空间--某一个用户的表集--一张表--行、列……,对表的引用和授权,常是以用户为单位的。当然,实质上表空间是物理概念,而用户表是数据库中的对象,只是存于某一个表空间下的一块空间中。

表空间、段、区间和数据库对象

    Oracle数据库的物理存储结构由数据文件组成,但在逻辑上,Oracle将数据库所有数据文件占用的磁盘空间划分为一个或多个表空间进行存储管理。一个表空间可包含多个数据文件,但一个数据文件只能属于一个表空间。

    Oracle的逻辑存储结构大致有以下几个层次:表空间--段--区间--数据块。平常用到的主要是表空间、段和区间,段有数据段、索引段、临时段和回滚段几种。Oracle对象中的表,索引等便是存储在这不同的段里面。而一张数据库表,只属于数据段,但它可能跨越多个区间(Extent),因为区间包括固定的若干个数据块大小,一个区间未必放得下一张表,划分区间只是为了空间分配与回收的方便。

新增用户及其授权

    在Oracle数据库中新加入一个用户时,主要有以下几步:

    一、新建表空间(如新用户的默认表空间使用现有的表空间如USERS表空间,则不需要新建)。创建表空间时,需要指定数据文件等一些表空间的参数。

    二、新建用户。刚新建的用户可以没有指定任何权限属性,也可以指定其默认表空间等。

    三、用户授权。指定用户的默认表空间、将create session(连接数据库)、create table、select talbe等权限授予用户。这样用户便可以在自己默认表空间下进行各种操作了。如果需要将其它用户的表权限授予新用户,也可在此时完成。

    四、分配空间限额。一定要有这一步,否则将无法进行创建表的操作。分配每个用户在某个表空间的空间限额,是为了使用户对空间的利用更加合理。

    五、用户可进行操作了。

    下面是在网上找的一段实例:

  1. 1.建表空间    
  2. create tablespace OSDB datafile 'F:\Oracle\oradata\glsqjz\OSDB.ora' size 100m reuse default storage(initial 500k next 500k pctincrease 20);    
  3. 2.建用户    
  4. create user OSUSER identified by OSUSER;//identified by 后面的是密码,前面的是用户名    
  5. 3.用户授权    
  6. grant resource,connect,RECOVERY_CATALOG_OWNER to OSUSER ;    
  7. grant create table to OSUSER ;    
  8. alter user OSUSER quota unlimited ON OSDB;    
  9. alter user OSUSEdefault tablespace OSDB;    
  10. 4.删除表空间    
  11. DROP TABLESPACE TableSpaceName INCLUDING CONTENTS AND DATAFILES;    
  12. 5.删除用户    
  13. DROP USER User_Name CASCADE    
  14. 6.删除表的注意事项    
  15. 在删除一个表中的全部数据时,须使用TRUNCATE TABLE 表名;因为用DROP TABLE,DELETE * FROM 表名时,TABLESPACE表空间该表的占用空间并未释放,反复几次DROP,DELETE操作后,该TABLESPACE上百兆的空间就被耗光了。  
分享到:
评论

相关推荐

    Oracle用户(user)和表空间(tablespace).pdf

    本文详细介绍和阐述了 Oracle 用户(user)和表空间(tablespace)的概念和使用方法等内容,并对用户和表空间使用过程中的注意事项、关键知识点等进行了重点标注和详尽解析,以便于读者进行深入学习和理解。...

    Oracle数据库表空间设计.pdf

    1、oracle体系结构 2、基本概念 3、表空间类型 4、表空间设计原则 5、表空间的应用 6、表空间的维护 7、表空间的监控 8、表空间相关数据字典

    RAMAN特性参数(一)exclude/skip readonly/只读表空间备份恢复

    1、只读表空间定义和特性 12 2、只读表空间的备份与恢复 13 3、Case1只读表空间的备份恢复 14 4、Case2只读表空间的备份恢复 16 5、Case3只读表空间的备份恢复 19 6、Case4只读表空间的日志备份恢复 20 7、只读表...

    Oracle用plsql来建立表空间和用户语句

    oracle中数据空间的申请、用户定义和权限给予

    AutoCAD图纸空间概念及其使用技巧

    AutoCAD图纸空间概念及其使用技巧,图纸空间操作简单,概念性强,容易搞错 从上面的叙述看,图纸空间的概念有点搞,但如果概念清楚了,操作起来其实非常容易。比如尺寸标注,那要比在模型空间出图方便得多。但是,...

    31 表空间以及划分多个数据页的数据区,又是什么概念.pdf

    31 表空间以及划分多个数据页的数据区,又是什么概念.pdf

    论文研究-多表达空间实体的概念模型 .pdf

    多表达空间实体的概念模型,刘笑芳,,空间实体的概念模型是空间领域建模的研究热点,然而目前尚缺乏对多表达空间实体的概念模型描述。本文建立了一个多表达空间实体的

    论文研究 - Sobolev空间,Schwartz空间以及电磁和引力耦合的定义

    解的多重性概念是在[1]中提出的,它基于Schwartz空间S-(R)以及一些在[2]和[3]中首次定义的称为能量空间的子空间中的能量算符理论。 主要思想是在那些子空间中寻找给定线性PDE的解。 在这里,这项工作使用Sobolev...

    表空间和数据文件

    为了管理数据文件,ORACLE提出了表空间的概念ORACLE将数据逻辑的存储在表空间中,而实际上是存储在数据文件。 ORACLE曾经声称,自己的数据库系统具有跨平台特性,在一个数据库平台上开发的数据库可以不加修改的移植...

    ArcGIS空间分析中文版使用手册 3

    用于解决空间问题的概念模型 58 用概念模型创建适宜性地图 61 理解栅格数据与分析 第四章 理解栅格数据 73 理解栅格数据集 74 坐标空间和栅格数据集 78 离散的和连续的数据 82 栅格数据集的精度 84 栅格编码 85 在...

    C#命名空间分类

    C#命名空间详细分类介绍,方便编程使用,System.Collections //命名空间包含接口和类,这些接口和类定义各种对象(如列表、队列、位数组、哈希表和字典)的集合。 System.Collections.Generic //命名空间包含定义...

    数据库表空间介绍

    什么是表空间? Oracle数据库包含逻辑结构和物理文件。数据库的物理结构是指构成数据库的一组操作系统文件数据库的逻辑结构是指...临时表空间是通用的,所的用户都使用TEMP作为临时表空间。一般只有tmp一个临时表空间

    oracle表空间表分区详解及oracle表分区查询使用方法

    对表分区的维护性操作.(1.) 表空间及分区表的概念表空间:是一个或多个数据文件的集合,所有的数据对象都存放在指定的表空间中,但主要存放的是表, 所以称作表空间。分区表: 当表中的数据量不断增大,查询数据的...

    空间数据库技术应用:空间数据质量问题来源.pptx

    空间现象自身存在的不确定性包括空间特征和空间过程在空间、属性和时间上的不确定性。空间现象在空间上的不确定性表现为空间位置分布上的不确定变化;在属性上的不确定性表现为属性类型划分的多样性,非数值型属性值...

    空间分析的定义和内涵

    空间分析的定义和内涵.pdf

    Oracle数据库的空间使用和管理方法

    本文通过系统地介绍有关Oracle数据空间的使用、监控和维护概念,让大家能更好地规划使用数据空间,正确使用Oracle提供的有关功能特性,提高应用的执行效率。

    浅析mysql 共享表空间与独享表空间以及他们之间的转化

    什么是共享表空间和独占表空间共享表空间以及独占表空间都是针对数据的存储方式而言的。共享表空间: 某一个数据库的所有的表数据,索引文件全部放在一个文件中,默认这个共享表空间的文件路径在data目录下。 默认的...

    运动学+工作空间,运动学工作空间和轨迹的定义,matlab源码.zip

    运动学+工作空间,运动学工作空间和轨迹的定义,matlab源码

    论文研究-基于OODB技术的GIS空间查询和空间分析模型研究.pdf

    在此基础上采用面向对象数据库(OODB)技术中的对象组织和管理思想,采用数据模板和方法模板技术建立面向对象的数据访问模型,并在此基础上建立了一种面向对象的空间查询和空间分析模型。首次采用方法元库的设计思想来...

Global site tag (gtag.js) - Google Analytics