oracle 表空间管理
oracle 表空间管理
1创建表空间
创建本地管理的表空间SQL> create tablespace beijing_data2 datafile 'd:\userdata\beijingdata01.dbf' size 100M3 extent management local4 uniform size 1M;
创建还原表空间SQL> create undo tablespace user_undo2 datafile 'd:\userundo\user_undo.dbf'3* size 30M
创建临时表空间SQL> create temporary tablespace user_temp2 tempfile 'd:\usertemp\user_temp.dbf' size 20M3 extent management local4 uniform size 1M;
创建默认临时表空间默认临时表空间是指一旦该数据库启动则默认使用该表空间作为默认的临时表空间,用话数据如排序操作.
默认临时表空间可以在创建数据库时创建,此时使用指令DEFAUTEMPORARY TABLESPACE,
也可以在数据库创建成功后创建此时需要事先建立一个再使用ALTER DATABASE DEFAULT TEMPORARY TABLESPACE指令更改临时表切换临时表空间.
SQL> alter database default temporary tablespace user_temp
创建本地管理的表空间SQL> create tablespace beijing_data2 datafile 'd:\userdata\beijingdata01.dbf' size 100M3 extent management local4 uniform size 1M;
创建还原表空间SQL> create undo tablespace user_undo2 datafile 'd:\userundo\user_undo.dbf'3* size 30M
创建临时表空间SQL> create temporary tablespace user_temp2 tempfile 'd:\usertemp\user_temp.dbf' size 20M3 extent management local4 uniform size 1M;
创建默认临时表空间默认临时表空间是指一旦该数据库启动则默认使用该表空间作为默认的临时表空间,用话数据如排序操作.
默认临时表空间可以在创建数据库时创建,此时使用指令DEFAUTEMPORARY TABLESPACE,
也可以在数据库创建成功后创建此时需要事先建立一个再使用ALTER DATABASE DEFAULT TEMPORARY TABLESPACE指令更改临时表切换临时表空间.
SQL> alter database default temporary tablespace user_temp
创建表空间o 创建大文件表空间SQL> create bigfile tablespace bigfiletbs2 datafile 'd:\bigfile_tbs\bfile_tbs01.dbf' size 2G;
查询表空间的数据文件属性信息.SQL> select
tablespace_name,file_name,bytes/(1_24*1024*1024) G2* from dba_data_file
2脱机管理脱机管理
的表空间无法实现数据访问,在ORACLE数据所有的表空间都可以设为脱机管理,
其中包括SYSTEM有活跃还原段的表空间和默认临时表空间.表空间一般是处于联机状态的,
此时用户可以访问表空据,但是有些情况下需要将表空间置于脱机状态,
这些 允许用户访问数据库的一部分,而某些空间不允许用 执行脱机的表空间备份.
在数据库打开时,恢复表空间或表空间中的数据文件 在数据库打开时,
移动表空间中的数据文件.o 将表空间设置为脱机状态.
SQL> alter tablespace tbs_name offline
的表空间无法实现数据访问,在ORACLE数据所有的表空间都可以设为脱机管理,
其中包括SYSTEM有活跃还原段的表空间和默认临时表空间.表空间一般是处于联机状态的,
此时用户可以访问表空据,但是有些情况下需要将表空间置于脱机状态,
这些 允许用户访问数据库的一部分,而某些空间不允许用 执行脱机的表空间备份.
在数据库打开时,恢复表空间或表空间中的数据文件 在数据库打开时,
移动表空间中的数据文件.o 将表空间设置为脱机状态.
SQL> alter tablespace tbs_name offline
3只读管理
就是把表空间置为只读状态,这样的表空间中能被用户读取,而不能做任何修改或插入操作,
在数据如果有的数据是静态数据,则可以将存储这些数据的表表空间中,只读管理的表空间不被重做日志保护,
减少文件的大小.把一个表空间置为只读状态的指令为ALTER DATABAtablespace_name READ ONLY.下面通过例子15-何将USERS表空间设置为只读状态o=
将表空间设置为只读状态.
SQL> alter tablespace users read only
就是把表空间置为只读状态,这样的表空间中能被用户读取,而不能做任何修改或插入操作,
在数据如果有的数据是静态数据,则可以将存储这些数据的表表空间中,只读管理的表空间不被重做日志保护,
减少文件的大小.把一个表空间置为只读状态的指令为ALTER DATABAtablespace_name READ ONLY.下面通过例子15-何将USERS表空间设置为只读状态o=
将表空间设置为只读状态.
SQL> alter tablespace users read only
4表空间和数据文件
第一种是在创建表空间时,使用AUTOEXTEND ON字句使得表空间在需要可以自动扩展:
SQL> create tablespace manager_tbs12 datafile 'd:/tbs_manager1/tbs1.dbf'3 size 100M4 autoextend on;
第二种是在创建表空间后使用ALTER DATABASE DATAFILE file_name AUTOEXTEND ON修改不能自动扩展的表空间的数据文件: 第三种方法是在表空间中增加数据文件.
SQL> alter tablespace manage_tbs2 add datafile 'D:\TBS_MANAGER\TBS02.DBF'3 size 50M;
第四种方法是修改数据文件的大小,即重新设置表空间种某个数据文件的大小.
SQL> alter database2 datafile 'D:\TBS_MANAGER\TBS01.DBF' resize 100M
第一种是在创建表空间时,使用AUTOEXTEND ON字句使得表空间在需要可以自动扩展:
SQL> create tablespace manager_tbs12 datafile 'd:/tbs_manager1/tbs1.dbf'3 size 100M4 autoextend on;
第二种是在创建表空间后使用ALTER DATABASE DATAFILE file_name AUTOEXTEND ON修改不能自动扩展的表空间的数据文件: 第三种方法是在表空间中增加数据文件.
SQL> alter tablespace manage_tbs2 add datafile 'D:\TBS_MANAGER\TBS02.DBF'3 size 50M;
第四种方法是修改数据文件的大小,即重新设置表空间种某个数据文件的大小.
SQL> alter database2 datafile 'D:\TBS_MANAGER\TBS01.DBF' resize 100M
删除表空间 当不需要一个表空间时,可以删除该表空间以释放磁盘空间,删除表空间的语法格式比较简单,
DROP TABLESPACE tablespace_name[INCLUDING CONTENTS [AND DATAFILES] [CASCADE CONSTRAINTS]]o
各参数的含义是:
tablespace_name:要删除的表空间名.
INCLUDING CONTENTS:删除表空间中的所有区段(EXTENTS).
AND DATAFILES:删除表空间中的数据文件,该文件是一个ORACLE格式的操作系统文件.
CASCADE CONSTRAINTS:删除和该表空间中的表相关的引用完整性约束,外部表会引用该表空间中的表的唯一键等作为外部表的引
DROP TABLESPACE tablespace_name[INCLUDING CONTENTS [AND DATAFILES] [CASCADE CONSTRAINTS]]o
各参数的含义是:
tablespace_name:要删除的表空间名.
INCLUDING CONTENTS:删除表空间中的所有区段(EXTENTS).
AND DATAFILES:删除表空间中的数据文件,该文件是一个ORACLE格式的操作系统文件.
CASCADE CONSTRAINTS:删除和该表空间中的表相关的引用完整性约束,外部表会引用该表空间中的表的唯一键等作为外部表的引
原文链接:http://www.jxszl.com/biancheng/shujuku/445556.html