Oracle建立新的表空间

2014-11-24 19:01:32 · 作者: · 浏览: 31

查看表空间和数据文件的信息
select tablespace_name,file_name,ceil(bytes/1024/1024) mb
from dba_data_files order by 1;


创建表空间


CREATE TABLESPACE tanzugan LOGGING DATAFILE 'H:\APP\ZUGANTAN\ORADATA\ORCL2012\tanzugan.dbf'
SIZE 100M REUSE EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;


---查看表空间信息


select * from dba_data_files order by 1;


------穿插 order by 1 order by2


order by 1按照第一列排序


order by 2 按照第二列排序


若只有2列 写成了 order by 3就会报错。


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


--------------------删除表空间 数据文件


alter tablespace ts1 drop datafile 'D:\ORACLE\ORADATA\ORA10\TS1.2';


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


改变数据文件的大小
可以加大,也可以缩小
Alter database datafile ‘…..’ resize 100m;


数据文件的自动扩展
select FILE_NAME,AUTOEXTENSIBLE,MAXBLOCKS,
INCREMENT_BY from dba_data_files;
改为自动扩展
alter database datafile 'D:\ORACLE\ORADATA\O10\TS1.1'
autoextend on next 1m maxsize 100m;
改为手工扩展
alter database datafile 'D:\ORACLE\ORADATA\O10\TS1.1'
Autoextend off;
表空间只读
Alter tablespace users read only;
验证
select TABLESPACE_NAME,STATUS from dba_tablespaces;
读写
Alter tablespace users read write;
只读表空间内的表不能dml,但可以drop .
因为DROP操作的是system表空间,SYSTEM表空间不能设为只读。


Offline表空间
alter tablespace users offline;
验证
select TABLESPACE_NAME,STATUS from dba_tablespaces;
在线
alter tablespace users online;
只有完整的数据文件才可以online,如果不完整请恢复。
恢复一致后再online;
文件online时用户才可以访问