oracle中的tablespace的概念及创建

转载 2016年08月31日 10:33:10
一、TableSpace管理准则
 
1、使用多个TableSpace
 
    * 用户数据与数据字典数据分离,减少竞争
    * 应用程序之间的数据分离,防止某个TableSpace脱机后对多个程序造成影响
    * 不同磁盘驱动器上存储数据,减少I/O竞争
    * 回滚段数据与用户数据分离,防止单磁盘故障造成数据永久丢失
    * 可以控制单个TableSpace脱机,提供更高的整体可用性
    * 为特定类型数据库使用保留TableSpace,可优化TableSpace的使用
    * 可以备份单独的TableSpace
 
2、指定表空间默认的存储参数
 
    为TableSpace设置合适的参数,下文中详细介绍。
 
3、为用户指定表空间限额
 
    可以有效控制TableSpace的大小,限制用户权限防止发生意外。
 
 
 
二、创建TableSpace
 
 
1、创建本地管理TableSpace
 
    Oracle创建的TableSpace默认均是本地管理的,明确的表述应该是:
    在CREATE TABLESPACE 语句中 EXTENT MANAGEMENT 子句中指定 LOCAL
 
    然后可以用 AUTOALLOCATE 选项(默认)来使Oracle自动管理盘区
    CREATE TABLESPACE lmtbsb DATAFILE '/u02/oracle/data/lmtbsb01.dbf' SIZE 50M
    EXTENT MANAGEMENT LOCAL AUTOALLOCATE;
 
    也可以使用一个指定大小(UNIFORM SIZE)的同意盘区来管理该TableSpace
    CREATE TABLESPACE lmtbsb DATAFILE '/u02/oracle/data/lmtbsb01.dbf' SIZE 50M
    EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K;
 
    如果未指定盘区大小,则默认为1M,说明数据文件至少要大于1MB
 
    注:如果TableSpace被期望用于包含需要不同盘区大小和拥有很多盘区的大小变动的对象,那选择AUTOALLOCATE是最好的选择。AUTOALLOCATE是一种管理TableSpace的简便方法,只是有可能会对一些空间造成浪费。如果需要准确控制未用空间,并能够精确预计为一个或多个对象要非配的空间和盘区大小,那就可以使用UNIFORM。
 
2、在本地管理TableSpace中指定段空间管理
 
    可使用 SEGMENT SPACE MANAGEMENT子句来设置端控件的管理模式,有以下几种模式:
 
    MANUAL(默认):使用段中管理空闲空间的空闲列表。
    AUTO:使用位图来管理段中的空闲空间。又称为自动段空间管理。
 
    AUTO立功了一种更加简单、有效的管理方法,完全消除了为表空间中创建的段指定和调整PCTUSED、FREELISTS、FREELISTS GROUPS属性的任何必要。
 
    CREATE TABLESPACE lmtbsb DATAFILE '/u02/oracle/data/lmtbsb01.dbf' SIZE 50M
    EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
 
    注:LOB类型不能指定自动段空间管理。
 
3、修改本地管理TableSpace
 
    * 不能讲本地管理TableSpace改为本地管理的temp TableSpace
    * 不能改变TableSpace的段空间管理办法
    * 本地管理TableSpace没有必要合并空闲盘区
 
    * 可以添加数据文件
    * 可以改变TableSpace状态(ONLINE/OFFLINE)
    * 修改TableSpace为只读or只写
    * rename数据文件
    * 启用/禁用该TableSpace数据文件的自动盘区大小
 
4、创建字典管理的TableSpace
 
    CREATE TABLESPACE tbsb
    DATAFILE '/u02/oracle/data/tbsb01.dbf' SIZE 50M
    EXTENT MANAGEMENT DICTIONARY
    DEFAULT STORAGE (
    INITIAL 50K
    NEXT 50K
    MINEXTENTS 2
    MAXEXTENTS 50
    PCTINCREASE 0);
 
    使用ALTER TABLESPACE语句可以进行以下操作:
 
    * 添加一个新的文件
    * 改变默认的存储参数
    * 合并TableSpace的空闲空间
    * 可以改变TableSpace状态(ONLINE/OFFLINE)
    * 修改TableSpace为只读or只写
    * rename数据文件
    * 启用/禁用该TableSpace数据文件的自动盘区大小
 
5、临时表空间
 
    临时表空间主要用于提高多个排序操作的并发能力、减小开销,或避免Oracle空间管理操作在一起进行。临时表空间创建之后,可以被多个用户共享。
    一个给定实例和表空间的所有排序操作共享一个单一的排序段。即排序段为一个给定表空间的每个执行排序操作的实例而存在。
    排序段由使用临时表空间用于排序的第一个语句创建,并在关闭时释放,一个盘区不能被多个事务共享
 
    可以使用V$SORT_SEGMENT视图来查看临时表空间排序段的空间分配和回收情况
    用V$SORT_USAGE视图查看这些段的当前排序用户
 
    注:临时表空间中不能创建明确对象。
 
6、创建本地管理的临时表空间
 
    CREATE TEMPORARY TABLESPACE lmtemp TEMPFILE '/u02/oracle/data/lmtemp01.dbf' SIZE 20M REUSE
    EXTENT MANAGEMENT LOCAL UNIFORM SIZE 16M;
 
    注1:临时数据文件信息查询与数据文件不同,需要查询V$TEMPFILEDBA_TEMP_FILES,但结构与V$DATAFILEDBA_DATA_FILES类似。
    注2:临时表空间在初次使用时才分配空间,可以更快创建和修改大小,但要注意磁盘大小。
 
7、本地管理临时表空间的修改
 
    * 添加临时文件
    ALTER TABLESPACE lmtemp ADD TEMPFILE '/u02/oracle/data/lmtemp02.dbf' SIZE 20M REUSE;
 
    * 改变临时文件状态
    ALTER DATABASE TEMPFILE '/u02/oracle/data/lmtemp02.dbf' ONLINE|OFFLINE;
 
    * 更改临时文件大小
    ALTER DATABASE TEMPFILE '/u02/oracle/data/lmtemp02.dbf' RESIZE 4M;
 
    * 取消临时文件并删除相应操作系统文件
    ALTER DATABASE TEMPFILE '/u02/oracle/data/lmtemp02.dbf' DROP
    INCLUDING DATAFILES;
 
8、创建字典管理的临时表空间
 
    CREATE TABLESPACE sort
    DATAFILE '/u02/oracle/data/sort01.dbf' SIZE 50M
    DEFAULT STORAGE (
    INITIAL 2M
    NEXT 2M
    MINEXTENTS 1
    PCTINCREASE 0)
    EXTENT MANAGEMENT DICTIONARY
    TEMPORARY;
 
    注1:不能以这种方式创建EXTENT MANAGEMENT LOCAL的临时表空间。
    注2:可以使用ALTER TABLESPACE tbsa TEMPORARY;语句将一个现有的字典管理永久表空间改为临时表空间。
 
 

Oracle分区表的概念及操作

摘要:在大量业务数据处理的项目中,能考虑使用分区表来提高应用系统的性能并方便数据管理,本文周详介绍了分区表的使用。         1.表空间及分区表的概念          2.表分区的具体作用...
  • NeverGiveup54
  • NeverGiveup54
  • 2015年08月08日 22:44
  • 515

TableSpace的概念及创建

一、TableSpace管理准则   1、使用多个TableSpace       * 用户数据与数据字典数据分离,减少竞争     * 应用程序之间的数据分离,防止某个...
  • yhj198927
  • yhj198927
  • 2015年10月19日 10:36
  • 161

http中的cookie简介

cookie简单的说就是用户通过浏览器访问一个网站时记录在服务器端的用户标识码,用以在服务器数据库中记录用户在该网站上的所有活动。 工作流程: 当用户张三浏览某个使用cookie的网站时,该网站的...
  • u010275850
  • u010275850
  • 2015年10月26日 19:16
  • 282

TableSpace 的概念及创建

  一、TableSpace管理准则   1、使用多个TableSpace   ...
  • mmm123lmj
  • mmm123lmj
  • 2009年11月03日 13:39
  • 319

cookie的概念

Cookies现在经常被大家提到,那么到底什么是Cookies,它有什么作用呢?Cookies是一种能够让网站服务器把少量数据储存到客户端的硬盘或内存,或是从客户端的硬盘读取数据的一种技术。Cooki...
  • fubinhnust
  • fubinhnust
  • 2013年03月05日 09:36
  • 1844

oracle中的tablespace的概念及创建

一、TableSpace管理准则1、使用多个TableSpace* 用户数据与数据字典数据分离,减少竞争 * 应用程序之间的数据分离,防止某个TableSpace脱机后对多个程序造成影响 * 不同磁盘...
  • qq805886694
  • qq805886694
  • 2016年08月12日 12:47
  • 308

WPF重要的几个概念:

WPF重要的几个概念: Binding :用来绑定数据的,非常强大 Command:用来实现命令,比如键盘和按钮都能实现某个功能, Template:模板,有数据模板也有控件模板 上述几个功能...
  • etwdone
  • etwdone
  • 2013年03月07日 10:17
  • 908

c++内存模型------计算机系统核心概念及软硬件实现

c++编程语言有3中不同类项的变量:全局变量、局部变量和动态分配变量。变量的值存储在计算机的内存中,但是变量存储的方式取决于变量的类项。3种类型的变量分别对应存储器中3个特定的区域: 全局变量存...
  • li_haoren
  • li_haoren
  • 2017年10月23日 23:53
  • 36

图像配准之概念简述

这系列文章是5年前的,也是从自己的QQ(632846506)日志中移过来的。https://user.qzone.qq.com/632846506/infocenter。      1、概念     ...
  • lliming2006
  • lliming2006
  • 2017年07月28日 16:02
  • 192

Cookie概念及使用

Cookie概念:    Cookie的格式实际上是一段纯文本信息, 由服务器随着网页一起发送到客户端, 并保存在客户端硬盘中指定的目录的. 大家都传说Cookie会造成严重的安全威胁什么的, 其实不...
  • kang275284
  • kang275284
  • 2007年08月11日 14:25
  • 364
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:oracle中的tablespace的概念及创建
举报原因:
原因补充:

(最多只允许输入30个字)