--创建表空间
createtablespacetest_datadatafile'E:\app\Administrator\oradata\orcl\TEST_DATA01.DBF'size32mautoextendonnext32Mmaxsize2048Mextentmanagementlocal;
createtablespacetest1datafile'e:\app\Administrator\oradata\orcl\test1.DBF'size32mautoextendonnext32Mmaxsize2048Mextentmanagementlocal;

--增加数据文件

altertablespacetest_dataadddatafile'E:\app\Administrator\oradata\orcl\TEST_DATA02.DBF'size10m;
altertablespacetest_dataadddatafile'E:\app\Administrator\oradata\orcl\TEST_DATA03.DBF'size10m;


--修改数据库表空间大小的语句:

alterdatabasedatafile'E:\app\Administrator\oradata\orcl\TEST_DATA02.DBF'resize40m;


--数据文件移动
selecttablespace_name,file_namefromdba_data_files;
altertablespaceTEST_DATAOFFLINE;
altertablespaceTEST_DATAONLINE;

删除表空间,同时删除数据文件:
droptablespacetest_dataincludingcontentsanddatafiles;

altertablespacetablespace_namedropdatafilefile_name;

altertablespacetest_datadropdatafileTEST_DATA02.DBF;

脱机状态:
alterdatabasedatafile'E:\app\Administrator\oradata\orcl\TEST_DATA02.DBF'offlinedrop;

alterdatabasedatafile'E:\app\Administrator\oradata\orcl\TEST_DATA02.DBF'online


ORA-01110错误
这里的恢复有个前提:

1.删除数据文件,而且没有备份。

2.是在将数据库转变为ARCHIVELOG模式之后建立的数据文件。

解决步骤是:重新创建一个数据文件,然后recover过来就可以了,不过前提是日志文件还在。

1.startupmount

2.alterdatabasecreatedatafile'E:\app\Administrator\oradata\orcl\TEST_DATA02.DBF';

3.setautorecoveryon;

4.recoverdatafile'E:\app\Administrator\oradata\orcl\TEST_DATA02.DBF';

5.alterdatabasedatafile'E:\app\Administrator\oradata\orcl\TEST_DATA02.DBF'online;

6.alterdatabaseopen;

强制更改为force状态:
startupmountforce

selecttablespace_name,statusfromdba_tablespaces;

本人很喜欢Oracle表空间,在工作中也很喜欢总结关于Oracle表空间状态的经验教训,下面就这个问题来详细说说吧。

1、查询Oracle表空间状态

  1. selecttablespace_name,statusfromdba_tablespaces;

2、更改Oracle表空间状态

  1. altertablespacebookoffline/online/readonly/readwrite;

离线/在线/只读/读写

3、数据文件移动

  1. selecttablespace_name,file_namefromdba_data_files;

  2. altertablespacebookoffline;

将要修改的文件移动到新目录下

  1. altertablespacebookrenamedatafile'/u01/oradata/oracle8i/sales01.dbf'to'/u02/oradata/oracle8i/sales01.dbf';

4、修改数据文件的online/offline属性

archivelog模式下

  1. alterdatabasedatafile'/u01/oradata/oracle8i/sales01.dbf'offline;

noarchivelog模式下

  1. alterdatabasedatafile'/u01/oradata/oracle8i/sales01.dbf'offlinedrop;

5、数据字典表空间与本地化管理表空间的转化为

  1. selecttablespace_name,extent_management,allocation_typefromdba_tablespace;

  2. execdbms_space_admin.tablespace_migrate_to_local('book')

系统表空间system和临时表空间temp不得转换

  1. execdbms_space_admin.tablespace_migrate_from_local('book')

6、删除表空间

  1. droptablespacestudentincludingcontents;

includingcontents将表空间及实体删除

  1. createtabletest(idnumber(3))tablespacetest_tablesapce;

以上介绍Oracle表空间状态,这里我发表一下个人理解,和大家讨论讨论。