1、创建表空间
CREATE TABLESPACE smTableSpace
DATAFILE 'D:\oracle\product\10.2.0\oradata\XXX.dbf'
SIZE 100M
AUTOEXTEND ON
NEXT 32M;
2、查看所有表空间
select tablespace_name,bytes/1024/1024 from dba_data_files;
select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name。
3、查看未使用表空间大小
select tablespace_name,bytes/1024/1024 from dba_free_space;
select tablespace_name,sum(bytes)/1024/1024 from dba_free_space group by tablespace_name。
4、删除表空间
drop tablespace SMTABLESPACE including contents and datafiles 。
5、oracle数据库中“数据库,表空间和表”这三个名词之间的关系
(1)、数据库--数据库顾名思义是数据的集合,而Oracle则是管理这些数据集合的软件系统,它是一个对象关系型的数据库管理系统;
(2)、表空间--表空间是Oracle对物理数据库上相关数据的逻辑映射。一个数据库在逻辑上被划分成一到若干个表空间,每个表空间包含了在逻辑上相关联的一组结构。每个数据库至少有一个表空间(称之为system表空间)。每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件(datafile)。一个数据文件只能属于一个表空间。
(3)、实例--每一个运行中的数据库都对应着一个Oracle实例。当服务器上的Oracle数据库启动时,Oracle首先会在内存中分配一片区域-称之为System Global Area(SGA),然后启动一个或多个的Oracle进程。SGA和这些进程合起来就称为一个Oracle的实例。实例中的内存和进程管理器用来高效地访问数据库的数据,同时为单个或多个的用户提供服务。一个数据库可以由多个实例打开,但任何时刻一个实例只能打开一个数据库。多个实例可以同时运行在同一个机器上,它们彼此访问各自独立的物理数据库。
6、操作
--数据文件
select file#,status,enabled,name from v$datafile;
--控制文件
select * from v$controlfile;
--联机日志
select * from v$logfile;
--表空间
select * from v$tablespace;
--表
select * from all_tables;