`
bluethink
  • 浏览: 98075 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

彻底删除ORALCE数据文件

阅读更多
在创建表空间时通常会指定相应的数据文件,但是如果删除表空间时即便是
加上INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS; oralce的数据依然没用同时被删除,呵呵,看看我的解决方法,我的方法也许不是最好的,如果哪位能有好的解决办法欢迎讨论。

为了作测试方便,我是在WinXP上装的Oralce 10g 10.2.0.1.0.

二话不说,先看DEMO

Step 1:创建一个mydb_tbs表空间

Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 
Connected as SYS
 
SQL> create tablespace mydb_tbs datafile 'J:\oradata\orcl\mydb_tbs_001.dbf' size 50m;
 
Tablespace created
 
SQL> 


看一下结果:
 J:\oradata\orcl 的目录

2011-03-08  22:33    <DIR>          .
2011-03-08  22:33    <DIR>          ..
2011-03-08  22:24         7,061,504 CONTROL01.CTL
2011-03-08  22:24         7,061,504 CONTROL02.CTL
2011-03-08  22:24         7,061,504 CONTROL03.CTL
2011-03-08  22:24       104,865,792 EXAMPLE01.DBF
2011-03-08  22:33        52,436,992 MYDB_TBS_001.DBF
2011-03-08  22:24        52,429,312 REDO01.LOG
2011-03-08  22:24        52,429,312 REDO02.LOG
2011-03-08  22:24        52,429,312 REDO03.LOG
2011-03-08  22:24       251,666,432 SYSAUX01.DBF
2011-03-08  22:24       503,324,672 SYSTEM01.DBF
2011-03-08  22:02        20,979,712 TEMP01.DBF
2011-03-08  22:24        36,708,352 UNDOTBS01.DBF
2011-03-08  22:24         5,251,072 USERS01.DBF
              13 个文件  1,153,705,472 字节
               2 个目录  8,413,822,976 可用字节

可以看到MYDB_TBS_001.DBF 已经存在了

再查一下dba_data_file
SQL> select FILE_NAME from dba_data_files;
 
FILE_NAME
--------------------------------------------------------------------------------
J:\ORADATA\ORCL\USERS01.DBF
J:\ORADATA\ORCL\SYSAUX01.DBF
J:\ORADATA\ORCL\UNDOTBS01.DBF
J:\ORADATA\ORCL\SYSTEM01.DBF
J:\ORADATA\ORCL\EXAMPLE01.DBF
J:\ORADATA\ORCL\MYDB_TBS_001.DBF


Step 2:删除mydb_tbs表空间
SQL>drop tablespace mydb_tbs including contents and datafiles cascade constraints; 
Tablespace dropped

看到了,提示表空间已经被删除,
drop tablespace命令的需要加下面3个参数;
INCLUDING CONTENTS:指删除表空间中的数据段
INCLUDING CONTENTS AND DATAFILES:指删除数据段和数据文件
CASCADE CONSTRAINTS:删除所有与该空间相关的完整性约束条件

Step 3:在OS中删除对应的数据文件
当删除这个数据文件时,会有下面的提示:

可见该文件依然被ORACLE使用着,但是看看下面的查询
SQL> select file_name from dba_data_files;
 
FILE_NAME
--------------------------------------------------------------------------------
J:\ORADATA\ORCL\USERS01.DBF
J:\ORADATA\ORCL\SYSAUX01.DBF
J:\ORADATA\ORCL\UNDOTBS01.DBF
J:\ORADATA\ORCL\SYSTEM01.DBF
J:\ORADATA\ORCL\EXAMPLE01.DBF
 
SQL> 

确实没有J:\ORADATA\ORCL\MYDB_TBS_001.DBF,这种情况看起来似乎很奇怪,我查了很多资料也没讲如何把表空间和数据文件一起删除,看来上面的删除的结果也只是解除了表空间和数据文件的逻辑关系,没办法只好用最后一招了---重启

Step5:重启oralce数据库

C:\>sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 3月 8 22:24:05 2011

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

SQL> conn /as sysdba
已连接。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。

Total System Global Area  293601280 bytes
Fixed Size                  1248600 bytes
Variable Size             100663976 bytes
Database Buffers          184549376 bytes
Redo Buffers                7139328 bytes
数据库装载完毕。
数据库已经打开。
SQL>

经过重启数据库之后,J:\ORADATA\ORCL\MYDB_TBS_001.DBF可以顺利删除。
  • 大小: 13 KB
0
0
分享到:
评论

相关推荐

    如何正确的删除Oracle表空间数据文件

    本文将详细介绍如何正确地删除Oracle表空间数据文件,探讨OFFLINE和OFFLINE DROP的区别,以及在操作系统层面删除数据文件后的恢复策略。 首先,我们来看如何使用`DROP DATAFILE`命令删除数据文件。这个命令允许管理...

    oracle数据文件的删除命令

    6. **删除表空间**:如果需要彻底删除包含该数据文件的表空间,还需要执行以下命令。 ```sql SQL&gt; drop tablespace tablespace_name including contents and datafiles; ``` #### 三、注意事项 - **备份**:在...

    Windows下如何彻底删除Oracle

    通过以上步骤,可以在Windows环境下彻底删除Oracle数据库,确保系统中不再存在任何与Oracle相关的配置或文件。需要注意的是,在执行上述操作前,请确保已经备份了重要数据,并了解每一项操作的目的及可能带来的后果...

    Oracle必杀技物理删除数据文件恢复

    当数据文件遭遇物理删除或丢失时,这将对数据库的正常运行造成严重影响。本篇文章将深入探讨Oracle数据库中物理删除数据文件的恢复方法,帮助你掌握这一关键的故障恢复技能。 首先,我们要理解数据文件物理删除的...

    彻底删除oracle10g手册

    本文将基于“彻底删除oracle10g手册”这一主题,深入解析如何在Windows环境下安全、彻底地移除Oracle 10g,确保系统清洁无残留。 ### 一、了解Oracle 10g Oracle 10g是Oracle公司发布的一款关系型数据库管理系统,...

    如何彻底删除Oracle

    彻底删除Oracle不仅涉及到简单的卸载步骤,还需要仔细清理注册表、调整环境变量、删除相关文件和目录等多个方面。遵循上述步骤可以有效地确保Oracle被完全移除,从而避免潜在的安全风险和技术问题。

    彻底删除Oracle文档.txt

    根据提供的文件信息,本文将详细解释如何在Windows 2000系统环境下彻底删除Oracle 8.1.7版本的相关组件、配置文件以及注册表项等。为了确保Oracle的完全移除,以下步骤应严格按照顺序执行。 ### 一、停止Oracle服务...

    非常规删除ORACLE数据文件解决办法

    本文将深入探讨如何应对"非常规删除ORACLE数据文件"的问题,并提供恢复策略。 首先,我们要理解在Oracle中删除数据文件的后果。数据文件是表空间的一部分,表空间则包含数据库的表、索引和其他对象。当数据文件被...

    彻底删除ORACLE.docx

    "彻底删除 Oracle" Oracle 是一个功能强大且复杂的关系数据库管理系统,然而,在某些情况下,我们可能需要彻底删除 Oracle。删除 Oracle 的过程相对复杂,需要注意许多细节。以下是彻底删除 Oracle 的步骤和相关...

    windows下彻底删除oracle数据库

    ### Windows下彻底删除Oracle数据库 在Windows环境下,彻底删除Oracle数据库需要进行一系列步骤来确保所有与Oracle相关的组件、服务及注册表项都被清除干净。本文将详细介绍如何在Windows系统上彻底删除Oracle...

    批处理文件彻底卸载Oracle文件

    2. **删除Oracle目录**:Oracle的安装文件夹通常位于`C:\Program Files\Oracle`或`C:\Oracle`等位置。批处理文件会使用`rd /s /q directory_path`命令删除这些目录,`/s`表示递归删除子目录,`/q`表示静默模式,不...

    彻底删除oracle9i from xp

    11. **删除日志文件**:在“事件查看器”中,找出并删除Oracle的日志记录。 在某些情况下,某些DLL文件可能无法直接删除,这时只需在完成上述步骤后重启电脑,进行新的Oracle安装,指定一个新目录。新的安装会覆盖...

    彻底删除Oracle文档

    彻底删除Oracle不仅需要卸载其主程序,还需要清理与之相关的所有配置文件和服务。以上步骤提供了全面的指南,帮助用户在Windows 2000环境下彻底删除Oracle 8.1.7版本。通过仔细执行每个步骤,可以确保Oracle及相关...

    彻底删除Oracle系统

    本文将详细介绍如何彻底删除Oracle系统,包括卸载软件、清理注册表以及删除相关文件等步骤。 #### 二、准备工作 1. **备份数据**:在进行任何操作之前,请确保已经备份了所有重要的数据,避免意外丢失。 2. **关闭...

    彻底删除oracle

    ### 彻底删除Oracle的方法 在使用Oracle数据库的过程中,可能会遇到需要卸载并重新安装的情况。然而,有时候简单地通过控制面板卸载程序并不能完全清除Oracle的所有痕迹,这会导致下次安装时出现问题。本文将详细...

    彻底清除Oracle卸载痕迹

    11. **清理事件查看器**:在“事件查看器”中,删除Oracle产生的所有日志记录,以彻底清除系统中的Oracle痕迹。 通过以上步骤,可以确保Oracle从系统中完全移除,避免了因卸载不彻底而产生的问题。在执行这些操作时...

Global site tag (gtag.js) - Google Analytics