`

oracle数据文件(表空间文件)被rm掉了。表空间如何删除

阅读更多

转自:http://blog.csdn.net/skylinethj/article/details/7892054

单位要将旧数据服务器的数据库迁移到新的服务器上,新服务器连接存储,在处理表空间的过程中不小心将新服务器上/oracle目录下的u01文件夹删除,于是删除表空间时出现问题,现在就演示一下如何解决这个问题

环境:10gR2

[oracle@db1 ~]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Wed Dec 21 11:31:18 2011

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

 

Connected to:

Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production

With the Partitioning, Real Application Clusters, OLAP and Data Mining options

SQL> 

1.查看数据文件:

SQL> select name from v$datafile;

NAME

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

+DATA/orcl/system01.dbf

+DATA/orcl/undotbs01.dbf

+DATA/orcl/sysaux01.dbf

+DATA/orcl/users01.dbf

+DATA/orcl/undotbs02.dbf

/oracle/u01/app/oracle/oradata/orcl/SMS.dbf

/oracle/u01/app/oracle/oradata/orcl/WEBDB.dbf

7 rows selected.


2.查看数据文件状态

SQL> select file#,status,name from v$datafile where name like '%SMS%';

 

     FILE# STATUS

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

NAME

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

         6 ONLINE

/oracle/u01/app/oracle/oradata/orcl/SMS.dbf

 

1 rows selected.


3.确认操作系统上SMS数据文件已经不存在,u01文件夹都没有

[oracle@db1 ~]$ ll /oracle/

总计 6778872

drwxr-xr-x 2 oracle oinstall       4096 12-16 17:07 bak

-rw-rw-r-- 1 oracle oinstall        170 12-19 15:41 IMPORT.LOG


4.此时查看数据文件状态,状态没有异常
sec@ora10g> select file#,status,name from v$datafile where name like '%SMS%';
     FILE# STATUS  NAME
---------- ------- ------------------------------------------------------------
         6 ONLINE  /oracle/u01/app/oracle/oradata/orcl/SMS.dbf
       
5.手工将误删除的文件offline drop,成功

SQL> alter database datafile '/oracle/u01/app/oracle/oradata/orcl/SMS.dbf' offline drop;

Database altered.


6.此时,该文件的状态为“RECOVER”
SQL> select file#,status,name from v$datafile where name like '%SMS%';

     FILE# STATUS  NAME
---------- ------- ------------------------------------------------------------
         6 RECOVER /oracle/u01/app/oracle/oradata/orcl/SMS.dbf


7.演示删除表空间,成功。

SQL> alter database datafile '/oracle/u01/app/oracle/oradata/orcl/SMS.dbf' offline drop;

 

Database altered.

8.最后确认,删除得很彻底。

SQL>select file#,status,name from v$datafile where name like '%SMS%';

 

no rows selected

 

SQL> select name from v$datafile;

NAME

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

+DATA/orcl/system01.dbf

+DATA/orcl/undotbs01.dbf

+DATA/orcl/sysaux01.dbf

+DATA/orcl/users01.dbf

+DATA/orcl/undotbs02.dbf

/oracle/u01/app/oracle/oradata/orcl/WEBDB.dbf

6 rows selected.

9.下面的任务就是继续删除WEBDB

 

 

分享到:
评论

相关推荐

    oracle10g的用户和表空间重建

    表空间是Oracle数据库中的一个逻辑存储单元,用于组织和管理数据文件。重建表空间通常包括以下步骤: 1. **查询表空间的空闲空间**: ```sql SELECT SUM(bytes)/(1024*1024) AS free_space, tablespace_name ...

    删除rm_oracle

    标题与描述中的“删除oracle rm_oracle完整”指的是在Linux系统中彻底移除Oracle数据库环境的过程,这通常涉及多个步骤,以确保所有相关的文件、目录、用户和配置都被正确地清除,避免留下任何可能导致后续软件安装...

    Oracle 11g数据恢复向导恢复数据文件

    以下步骤展示了如何使用Oracle 11g RMAN恢复一个普通数据文件(如users表空间的数据文件)的过程: 1. **模拟数据文件删除** - 使用命令行删除一个数据文件,例如`users01.dbf`。 ```bash [oracle@testA/]$ rm /...

    oracle数据泵服务器备份

    ### Oracle 数据泵服务器备份知识点详解 #### 一、Oracle 数据泵简介 Oracle 数据泵是一种用于高效导入导出数据的强大工具,它比传统的 `EXPDP` 和 `IMPDP` 工具更加高效且易于管理。数据泵操作主要包括 `EXPDP`...

    ORA-00257Oracle释放archivelog空间.doc

    在Oracle数据库中,释放archivelog空间需要两个步骤:第一步删除物理文件,第二步释放逻辑空间。 第一步删除物理文件是指删除早期的日志文件,以释放磁盘空间。这些日志文件可以通过查看v$flash_recovery_area_...

    shell脚本操作oracle删除表空间、创建表空间、删除用户

    oracle下表空间的导出,用户的删除,表空间删除,用户新建,表空间新建,数据导入的shell使用非oracle用户执行该脚本参数说名$1:base表空间的用户名$2:同步表空间的用户名使用场景测试用,base表空间用于升级建立...

    关于oracle数据库备份存在空间不足问题.docx

    在 Linux 操作系统下,备份 Oracle 11g 数据库表空间 jtkg 的结构和数据时,发现磁盘空间不足,无法完成数据库备份。数据库用户为 jtkg,密码为 123456,表空间为 jtkg。 解决方法 解决这个问题,我们需要创建一个...

    卸载oracle.txt

    确保在执行此命令前已经备份了重要的数据文件,因为这将永久删除目录下的所有内容。 #### 步骤3:删除系统配置文件 为了完全清除Oracle的痕迹,还需要删除几个系统级别的配置文件,包括: - `/etc/oraInst.loc` - `...

    Linux7.6+Oracle 12c+文件系统单机安装.pdf

    在Oracle环境中,LVM可以用于创建Oracle数据文件的存储卷,便于管理和扩展。 最后,多路径配置是在Linux环境下确保I/O冗余和负载均衡的重要手段,特别是在使用多个HBA(Host Bus Adapter)或存储设备时。通过多路径...

    如何正确删除Oracle归档日志

    以Oracle用户身份登录到数据库服务器主机,或者通过网络连接进入Oracle数据备份工具RMAN: ``` rman target / ``` 或 ``` rman target /@orcl ``` 其中`orcl`为数据库实例名。 ##### 2. 执行RMAN命令 - **检查...

    Oracle 删除归档日志实例

    在归档模式下,每当一个重做日志文件组被填满并且提交时,Oracle会自动将其内容复制到归档日志中,并将该重做日志文件组标记为可重用。 #### 清理归档日志的步骤 ##### 1. 删除归档日志物理文件 归档日志通常存储...

    Oracle dbf文件移动的方法

    在Oracle数据库环境中,dbf文件(数据文件)是存储数据库数据和对象的主要文件。当遇到空间不足的问题时,有时需要将这些文件移动到其他更大的存储位置。本篇将详细介绍如何安全地移动Oracle dbf文件。 1. **背景...

    如何手工创建Oracle数据库

    在这个例子中,使用`rm`命令删除了正在运行的数据库的数据文件,这无疑是一个灾难性的错误。因此,DBA应避免使用危险命令,即使在不得不使用时,也要反复确认并谨慎操作。 接下来,我们开始创建Oracle数据库的步骤...

    oracle逻辑导出脚本

    逻辑导出是指通过SQL语句或类似方法导出数据库对象的数据和结构,而不是直接复制数据文件。这种方式特别适合于备份特定的表、用户或模式,而不仅仅是整个数据库。 #### 描述解析:Oracle逻辑导出脚本,自己写的 这...

    定时删除oracle日志脚本

    总之,定时删除Oracle日志脚本是一个实用的工具,它帮助我们有效地管理数据库日志,释放存储空间,同时保持数据安全。不过,使用时一定要遵循最佳实践,确保在删除日志文件之前做好备份,并理解删除日志对数据库的...

    aix_设置定期删除oracle日志归档

    这个脚本可能包括检查归档日志的年龄、大小,然后使用`rm`命令删除指定时间以前的日志文件。例如: ```bash #!/bin/bash # 定义归档日志路径 ARCHIVE_DIR=/path/to/oracle/archivelogs # 设置保留天数 RETENTION_...

    Oracle备份恢复实验集

    - 如果临时表空间中的数据文件丢失,可以在删除临时表空间数据文件后,重启数据库。 - Oracle数据库会自动检测到临时文件的缺失并尝试恢复,相关信息可以在alert日志中查看。 - 如果数据库无法自动重起,可以通过...

    Oracle的日志管理攻略

    如果在数据库运行过程中删除该文件,Oracle仍然会使用原有的文件指针进行写操作,可能会写入一个不存在的文件,从而导致硬盘空间被误占用。 因此,正确的做法是使用以下命令来截断日志文件: ```bash # 先提取最新...

    RMAN 删除指定几天前的归档

    如果确实需要手动释放归档日志所占用的磁盘空间,可以使用操作系统命令(如Linux系统的`rm`命令)来删除归档日志文件。但是,强烈建议在执行这一操作之前做好充分的数据备份,并仔细确认无误后操作,因为一旦删除将...

    trc等文件定时清理脚本.zip_oracle_thinqhz_归档及trc文件自动清理脚本

    oracle_thinqhz_归档及trc文件自动清理脚本" 提供了一个解决方案,针对Oracle数据库的归档日志(Archive Log)和跟踪文件(Trace File)进行自动化清理,以保持数据库系统的高效运行和存储空间的有效利用。...

Global site tag (gtag.js) - Google Analytics