oracle 管理表空间

时间:2021-09-05 07:48:37

表空间:是oracle数据库中最大的逻辑存储结构,与操作系统中的数据文件相对应,用于存储数据库中用户创建的所有内容

 

表空间>数据文件

4.1创建一个永久性表空间myspace

create tablespace myspace 

datafile 'F:\oracle\app\myspace.dbf'    //要有引号

size 20m

autoextend on next 5m      //指定自动增长 每次增长5m

maxsize 100m;     //最大为100m

 

4.2通过数据字典dba_tablespaces查看表空间myspace的部分属性

select tablespace_name,logging,allocation_type,extent_management,segment_space_management

from dba_tablespaces

where tablespace_name='MYSPACE';   //区分大小写

logging:表示是否为表空间创建日志记录

allocation_type :标识表空间的盘区大小的分配方式。字段值为system,自动分配

extent_management:标识表空间盘区的管理方式

segment_space_management:标识表空间中断的管理方式

 

 

表空间状态属性

1 online      只有为该状态,才允许访问该表空间中的数据     例如:alter tablespace myspace online;

2offline    不允许访问表空间中的数据  alter tablespace myspace offline parameter;

    parameter有4个参数

   normal 默认情况  

    temporary 可能需要对数据库进行恢复

    immediate 必须对数据库进行恢复  

    for recover 可以使用备份的数据文件覆盖原有的数据文件,然后再根据归档重做日志将表空间恢复到某个时间点的状态

3read only 

注意事项

   1表空间必须处于online状态

   2表空间不能包含任何事务的回退段

    3表空间不能正处于占线数据库备份期间

可以访问但仅限于阅读  alter tablespace myspace read only; 

4read write

  alter tablespace myspace read write;   需要保证表空间处于online状态

 

 

四.3 查看当前数据库中的表空间的状态

select tablespace_name ,status from dba_tablespaces;

oracle 管理表空间

 

status 有online,offline和read only

online表示在线且读写

offline离线

read only 表示在线且只读

 

四 重命名表空间

alter tablespace myspace rename to myspace2;   //这里myspace的状态属性为offline的话,就无法重命名表空间

 

四 修改表空间中的数据文件大小

通过dba_free_space查看表空的空间空闲信息

select tablespace_name,bytes,blocks

from dba_free_space            

where tablespace_name='MYSPACE';      

四 通过dba_data_files查看myspace表空间的数据文件信息

1看下表空间的空闲情况、

select tablespace,bytes,blocks       //bytes表示以位表示空闲空间大小,blocks以数据库的形式表示大小

from dba_free_space

where tablespace_name='MYSPACE';

 

 

2select tablespace_name,file_name,bytes

from dba_data_files

where tablespace_name='MYSPACE';    

//最好格式化下列

 

修改数据文件大小

alter database 

datafile  'F:\oracle\app\myspace.dbf'  resize 40m;

oracle 管理表空间

四 为myspace表空间增加两个新的数据文件

alter tablespace myspace

add datafile 

'F:\oracle\app\myspace.dbf2'

size 10m

autoextend on next 5m maxsize 100m;

oracle 管理表空间

四 删除表空间的数据文件

在需要时,也可以删除表空间的数据文件,但是该数据文件中不能包含数据

删除myspace表空数据文件

alter tablespace myspace

drop datafile 'F:\oracle\app\myspace.dbf2';