Oracle 管理数据文件

 

■创建数据文件的SQL语句及说明

 

CREATE TABLESPACE  创建一个表空间和组成它的数据文件
CREATE TEMPORARY TABLESPACE 创建一个临时表空间和组成它的临时数据文件(临时数据文件是一种特殊类型的数据文件)
ALTER TABLESPACE ... ADD DATAFILE 创建并添加一个数据文件到表空间
ALTER TABLESPACE ... ADD TEMPFILE  创建并添加一个临时数据文件到临时表空间
CREATE DATABASE  创建一个数据库和关联的数据文件

 

 

■创建表空间
 

SQL> create tablespace myts04 datafile '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts04dbf' size 2m
autoextend on
next 1m
maxsize 5m

 

■向空间里添加数据文件并指定自动增长方式
 

SQL> alter tablespace myts02          
add datafile '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts02_2.dbf' size 4m  
AUTOEXTEND ON 
NEXT 4K    
MAXSIZE 5M;

 

■更改原有数据文件为自动增长方式
 

SQL> ALTER DATABASE          
  2  DATAFILE '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts01_3.dbf'                 
  3  AUTOEXTEND ON                       
  4  NEXT 2K           
  5  MAXSIZE 5M;

 

■取消自动增长方式
 

SQL> alter database                                
  2  datafile '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts01_3.dbf'  
  3  autoextend off;

 

■改变原数据文件大小
  

SQL> alter database                             
  2  DATAFILE '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts02_2.dbf' resize 5m;

 
  也可以利用RESIZE子句来缩小数据文件,不过必须保证缩小后的数据文件足够容纳其中已有的数据

■在ARCHIVELOG模式下使数据文件脱胎机
 

SQL> alter database             
  2  datafile '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts02_2.dbf' offline;

 

 

■在NOARCHIVELOG模式中使数据文件脱机
  要注意,这会使数据文件脱机并立即删除它,所以,很可能导致丢失数据文件,这种方法一般只用于临时表空间
  的临时数据文件.

 

  

SQL> alter database            
  2  datafile '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts02_2.dbf' offline drop;

   
  在这之后,如果要使数据文件联机,必须进行介质恢复,否则会有错误提示. 
  
■修改表空间中所有数据文件的可用性
 

ALTER TABLESPACE ... DATAFILE { ONLINE | OFFLINE }
ALTER TABLESPACE ... TEMPFILE { ONLINE | OFFLINE }

 
  表空间本身的联机或脱机状态不改变()
 
■修改整个表空间的可用性

  ALTER TABLESPACE ...  { ONLINE | OFFLINE }

 

 

■同一个表空间的数据文件的重命名
  当改变数据文件的位置和名称时,Oracle只是在控制文件和数据字典中改变了数据文件的指针,并没有物理
  地创建新的数据文件,也没有重定位和重命名任何操作系统文件.DBA必须自己在操作系统层复制文件,并重
  定位或重命名数据文件.
   
 

 SETUP1 SQL> alter tablespace myts04 offline normal;
         将表空间设置为脱机状态是为了关闭该表空间中所有的数据文件,以便在停止数据库服务时不会造成
         数据出现问题

  SETUP2 SQL> shutdown immediate
         如果不停止数据库服务就重命名数据文件,会出现错误提示.   

  SETUP3 将数据文件myts04_1.dbf重新命名为myts04_01.dbf、myts04_2.dbf重新命名为myts04_02.dbf   

  SETUP4 SQL> startup

  SETUP5 SQL> alter tablespace myts02
              rename datafile
              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts04_1.dbf',
              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts04_2.dbf'
              to
              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts04_01.dbf',
              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts04_02.dbf';
  SETUP6 SQL> alter tablespace myts04 online;

 

■多个表空间的数据文件的重定位和重命名
 

 SETUP1 SQL> alter tablespace myts01 offline normal;
         SQL> alter tablespace myts02 offline normal;

  SETUP2 SQL> shutdown immediate

  SETUP3 将myts01表空间的数据文件myts01_1.dbf重新命名为myts01_01.dbf、
         将myts02表空间的数据文件myts02_1.dbf重新命名为myts02_01.dbf、

  SETUP4 SQL> startup

  SETUP5 SQL> alter database
              rename file
              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts01_1.dbf',
              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts02_1.dbf'
              to
              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts01_01.dbf',
              '/export/home/opt/product/10.1.0.3.0/oradata/ldfsys/myts02_01.dbf';

  SETUP6 SQL> alter tablespace myts01 online;  
              alter tablespace myts02 online;  

 

■查询数据文件信息
 

   DBA_DATA_FILES
  DBA_TEMP_FILES
  DBA_EXTENTS
  USER_EXTENTS
  DBA_FREE_SPACE
  USER_FREE_SPACE
  V$DATAFILE
  V$DATAFILE_HEADER

 

■查看数据文件与表空间

SELECT f.tablespace_name "表空间", 
Decode(d.EXTENT_MANAGEMENT,'DICTIONARY','字典','本地')  "表空间类型",
TRUNC(SUM(f.bytes/1024000),2 ) || 'MB' "自由空间",
MIN(f.bytes) "最小字节", MAX(f.bytes) "最大字节",
AVG(f.bytes) "平均字节",COUNT(f.tablespace_name) "分布在"
FROM dba_free_space f, dba_tablespaces d 
Where f.tablespace_name = d.tablespace_name 
GROUP BY f.tablespace_name ,d.EXTENT_MANAGEMENT

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值