oracle删除表空间及数据文件|Oracle 11G删除数据库表空间的文件

oracle删除表空间及数据文件|Oracle 11G删除数据库表空间的文件的第1张示图

A. 更改或删除Oracle表空间的数据文件

alter database rename datafile 'xxxxx/data02.ora' to 'xxxxx/data2.ora' 修改名字或移动数据文件位置alter database datafile 'xxxxx/data03.ora' resize 100M 缩小数据文件大小 删除数据文件通常对于已经存在数据的情况你需要先把存在该数据文件里的数据转移后清空才能删除

B. Oracle 11G删除数据库表空间的文件

Oracle 11G删除数据库表空间的文件:删除表空间:drop tablespace ittbank including contents and datafiles;修改表空间大小(注:修改=可以增大,可以减小。)alter database datafile '/u01/app/oracle/oradata/ORCL/ittbank.dbf' resize 200m;增加表空间大小(注:增加=只能增大,不能减少。)alter tablespace ittbank add datafile '/u01/app/oracle/oradata/ORCL/ittbank.dbf' size 2048m;查询数据库文件:select * from dba_data_files;查询当前存在的表空间:select * from v$tablespace;表空间情况:select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name;查询表空间剩余空间:select tablespace_name,sum(bytes)/1024/1024 from dba_free_space group by tablespace_name;查看表结构:desc table;查看用户当前连接数:select count(*) from sys.v_$session;pl/sql[declare/*申明部分,一般是变量及常量*/][ begin/*执行部分,流程结构控制,sql部分*/][exception/*异常处理部分*/]end

C. 如何从表空间中“删除”数据文件

存在两种情况可能需要从表空间中“移走”数据文件。1. 你不小心给一个表空间增加了一个数据文件,或者你把文件大小设得过大,所以想把它删掉。2. 你正在进行恢复,因为丢失了一个数据文件所以不能启动数据库。本文主要处理第一种情况,有别的文章来讲述由于丢失数据文件而不能使用数据库的恢复问题。在我们详细介绍之前,我们必须说清楚一点:Oracle不提供如删除表。视图一样删除数据文件的方法,数据文件是表空间的一部分,所以不能“移走”表空间。在对表空间/数据文件进行任何脱机、删除之前,首先对数据库进行一个全备份。 如果数据文件是所在表空间的唯一的数据文件,你只要简单地删除表空间即可:DROP TABLESPACE INCLUDING CONTENTS;你可以运行下面的命令来查询表空间包含多少数据文件。select file_name, tablespace_namefrom dba_data_fileswhere tablespace_name ='';DROP TABLESPACE命令从Oracle数据字典删除表空间、数据文件和表空间的内容。Oracle不会再访问该表空间中的任何内容。物理地删除文件需要使用操作系统命令(Oracle从不物理地删除文件注:本文是针对8i或者之前,9i可以使用including datafile选项来删除物理文件>),依赖你的操作系统平台,有的操作系统需要Oracle完全关闭才才可以删除(例如在WINDOWS NT 中需要关闭数据库,停掉相应的服务,在有的情况下Oracle还可能持有文件锁)。如果你的表空间有多个数据文件,而你不需要表空间中的内容,或者你可以很容易重新生产表空间的内容,你可以使用DROP TABLESPACE INCLUDING CONTENTS;命令来从Oracle数据字典删除表空间、数据文件和表空间的内容。Oracle不会再访问该表空间中的任何内容。然后重新创建表空间并重新导入数据。如果你的表空间有多个数据文件,而你还需保留该表空间中的其它数据文件中的内容,则你必须首先export出该表空间中的所有内容。为了确定表空间中包含那些内容,运行:select owner,segment_name,segment_typefrom dba_segmentswhere tablespace_name=''export出你想保留的内容。如果export结束,你可以使用DROP TABLESPACE tablespace INCLUDING CONTENTS. , 这样永久删除表空间的内容,使用操作系统命令物理删除数据文件,按所需数据文件重新创建表空间,把数据import至表空间。注意:ALTER DATABASE DATAFILE OFFLINE DROP命令不能允许你删除数据文件,它的目的是脱机该数据文件以删除表空间。如果在归档模式下,使用ALTER DATABASE DATAFILE OFFLINE DROP来代替OFFLINE DROP。一旦数据文件脱机,Oracle不会再访问该数据文件的内容,但它仍然是表空间的一部分。这个数据文件在控制文件中标记OFFLINE,在数据库启动时不会对它与控制文件进行SCN的比较。在控制文件中保留这个数据文件的入口是方便以后的恢复。如果你不想按照上述方法来删除表空间,还有其它一些解决方法。1. 如果你想删除数据文件的原因是因为分配了不合适的文件大小,你可以考虑RESIZE命令。2. 如果你不小心增加了一个数据文件,而这个文件还没有分配空间,你可以使用ALTER DATABASE DATAFILE RESIZE;命令使其小于5个 Oracle块大小,如果数据文件的大小小于这个,Oracle将不会进行扩展数据文件。在以后,Oracle可以重建的时候来剔除这个不正确的文件。

D. oracle 中 如何删除 某个表空间里面的 某一个数据文件

如果不是Oracle11gR2版本,数据文件是无法删除的,要删除数据文件连同表空间一起删除。Oracle11gR2版可以删除数据文件。但你给的题目没有正确答案。Oracle11gR2版删除数据文件的步骤如下:1、保证表空间处在联机状态;2、通过SQL语句删除数据文件;3、删除数据文件语法:ALTER TABLESPACE 表空间名 DROP DATAFILE 数据文件名;

E. 怎么删除用户,表空间,数据文件

Oracle 使用时间长了, 新增了许多user 和tablespace. 需要清理一下对于单个user和tablespace 来说, 可以使用如下命令来完成。 步骤一: 删除userdrop user ×× cascade说明: 删除了user,只是删除了该user下的schema objects,是不会删除相应的tablespace的。步骤二: 删除tablespaceDROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES;但是,因为是供开发环境来使用的db, 需要清理的user 和 table space 很多。思路: Export出DB中所有的user和tablespace, 筛选出系统的和有用的tablespace,把有用的信息load到一张表中去。然后写例程循环,把不在有用表的tablespace删掉1. select username,default_tablespace from dba_users;2. create table MTUSEFULSPACE( ID Number(4) NOT NULL PRIMARY KEY, USERNAME varchar2(30),

F. 高手进:oracle删除表空间后,数据文件不能删除吗

默认是不删的,但可以在删表空间的时候,要求一起删掉,也可以事后自己手动删除。

G. 如何删除oracle临时表空间

删除表空间temp,但不删除其文件用:droptablespacetemp;删除表空间temp同时删除表空间的数据对象用droptablespacetempincludingcontents;删除表空间temp及其包含数据对象以及数据文件用droptablespacetempincludingcontentsanddatafiles;希望能帮助你

H. oracle不小心删除了表空间数据文件

解决办法是:用sqlplus/nolog命令进入:sql>conn/assysdba;sql>startupmount;(数据库已启动则不需要此命令)sql>alterdatabasedatafile''C:\TEST.ORA''offlinedrop;sql>droptablespacetest;一切ok,重启数据库即可。

I. 为什么在Oracle中,删除了表空间但是对应的数据文件还存在

表空间是一个虚拟的概念,指的就是存储一个方案的所有数据的集合,每个方案的数据是逐步增加的;而单个数据文件的大小是有限制的,所以一个表空间会有多个数据文件。多个数据文件存放在不同的磁盘中主要是从io速度考虑。毕竟每个磁盘的io带宽是有限制的。如果所有的数据文件都存储在一个磁盘中,则并发的数据读取时,速度会受到影响,因为io会成为瓶颈。

J. oracle数据库怎么删除表空间

删除无任何数据对象的表空间:首先使用PL/SQL界面化工具,或者使用oracle自带的SQLPLUS工具,连接需要删除的表空间的oracle数据局库。确认当前用户是否有删除表空间的权限,如果没有droptablespace,请先用更高级的用户(如sys)给予授权或者直接用更高级的用户。用droptablespacexxx,删除需要删除的表空间。删除有任何数据对象的表空间使用droptablespacexxxincludingcontentsanddatafiles;来删除表空间。注意事项:如果droptablespace语句中含有datafiles,那datafiles之前必须有contents关键字,不然会提示ora-01911错误

未经允许不得转载:山九号 » oracle删除表空间及数据文件|Oracle 11G删除数据库表空间的文件

赞 (0)