您的位置:首页 > 数据库 > Oracle

[Oracle命令] 基本表空间管理

2014-03-24 12:59 344 查看
 

一、了解表空间结构信息:查询数据字典视图DBA_TABLESPACES
 


  

二、查看表空间的管理类型:本地化管理(oracle11g默认)/数据字典管理

 

SQL> select tablespace_name,extent_management,allocation_type

     2 from dba_tablespaces;

 

TABLESPACE_NAME               EXTENT_MAN ALLOCATIO

------------------------------           ----------           ---------

SYSTEM                                     LOCAL             SYSTEM

SYSAUX                                     LOCAL             SYSTEM

UNDOTBS1                               LOCAL             SYSTEM

TEMP                                         LOCAL             UNIFORM

USERS                                        LOCAL             SYSTEM

TEMP0310                                LOCAL             SYSTEM

 

 

 

三、创建基本表空间CREATE…TABLESPACE
SQL> create tablespace temp0310
  2  datafile'/home/useradmin/oracle11g/temp0310.dbf' size 20m
  3  autoextend on next 10m maxsize unlimited;
 
Tablespace created.
 
语法:
CREATE[ TEMPORARY | UNDO ]TABLESPACEtablespace_name
[ DATAFILE datafile_tempfile_spacification ]
[ BLOCKSIZE number K ]
[ ONLINE | OFFLINE ]
[ LOGGING | NOLOGGING ]
[ FORCE LOGGGING ]
[ DEFAULT STORAGE storage ]
[ COMPRESS | NOCOMPRESS ]
[ PERMANENT | TEMPORARY ]
[ EXTENT MANAGEMETN DICTIONARY |
LOCAL[ AUTOALLOCATE | UNIFORM SIZE number K | M ]  ]
[ SEGMENT SPACE MANAGEMENT AUTO | MANUAL ];
 
子句:
DATAFILE | TEMPFILE file_name SIZE K | M REUSE
[ AUTOEXTEND OFF | ON
[ NEXT number K | M MAXSIZE UNLIMITED | number K | M ]  ];
 
 
 
四、修改表空间
   
  1.为表空间增加新的数据文件ALTERTABLESPACE,
ADD DATAFILE

SQL> alter tablespace temp0310

     2  add datafile'/home/useradmin/oracle11g/temp03101.dbf'

     3  size 10m;

 
修改数据文件的大小RESIZE
--了解表空间的空闲分区情况:查询数据字典视图DBA_FREE_SPACE



 

--了解数据文件的名称、大小和路径等信息:查询数据字典视图DAB_DATA_FILES


 



注:使用column file_name formata50语句,表示FILE_NAME字段最多允许占用50个字符。

 

 
--修改数据文件大小RESIZE



 

 
修改数据文件的自动扩展属性
--查看数据文件是否具有自动扩展功能



 

 
--增加或者修改数据文件时,都可以显示使用AUTOEXTENDON子句设置数据文件为自动扩展

ALTER TABLESPACE … ADD DATAFILE

ALTER DATABASE … DATAFILE

 

SQL> alter tablespace temp0302

     2  add datafile'/home/useradmin/oracle11g/temp0302.dbf'

     3  size 10m

     4  autoextend on next 5m;

 

SQL> alter database datafile'/home/useradmin/oracle11g/temp0301.dbf'

     2  autoextend on maxsize10m;

 

 

 
修改表空间的状态:OFFLINE,
ONLINE, READ ONLY,  READ WRITE
--通过STATUS列了解表空间的状态

SQL> select tablespace_name, status from dba_tablespaces;

SQL> alter tablespace temp0301 { offline |online …} ;

 
 
移动数据文件
移动数据文件的操作步骤:
(1)修改表空间为OFFLINE状态,防止其他用户进行操作

    SQL> alter tablespace temp0301 offline;
(2)复制数据文件到另一个磁盘
(3)使用ALTER TABLESPACERENAME语句修改数据文件名称

    SQL> alter tablespace temp0301

       2 rename datafile '/home/useradmin/oracle11g/temp0301.dbf'

       3 to '/home/oracle/oracle11g/temp0301.dbf';
(4)将表空间的状态修改为ONLINE.

    SQL> alter tablespace temp0301 online;
(5)查询数据字典,确认数据文件移动正确

         SQL > column file_name format a50;

         SQL > select file_id, file_name from dba_data_fieles;

 

 
删除表空间:DROP
TABLESPACE
语法:

DROP TABLESPACE tablespace_name

| [ INCLUDING CONTENTS ]

| [ INCLUDING CONTENTS AND DATAFILES ];

 

SQL > drop tablespace temp0301

      2  including contents and datafiles;

 




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: