ORA-01113: 文件 # 需要媒体恢复 ORA-01110

kup*_*upa 7 oracle

我错误地将数据文件添加到表空间......并试图删除它。我运行以下命令:

alter database datafile 'datafile_name'  OFFLINE;
Run Code Online (Sandbox Code Playgroud)

现在当我跑步时

alter database datafile 'datafile_name'  ONLINE;
Run Code Online (Sandbox Code Playgroud)

表明

ORA-01113: file 30 needs media recovery
ORA-01110: data file 30: 'datafile_name'
Run Code Online (Sandbox Code Playgroud)

文件的状态也是 RECOVER... 我能做什么?我无法重新启动数据库....

kup*_*upa 6

找到答案:

SQL> recover datafile 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE02.DBF';

alter database datafile 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE02.DBF';

alter  TABLESPACE EXAMPLE  drop datafile  'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE02.DBF' 
Run Code Online (Sandbox Code Playgroud)

但是对于生产数据库,它需要很多时间来恢复......我不能在不恢复它的情况下删除该文件吗?

还有一个问题......在添加该文件时另一个数据文件可用......是否有可能使用新创建的数据文件来存储数据?我认为 oracle 使用数据文件直到它不会超过其最大大小,然后切换到另一个可用文件......不是吗?

我问这个是因为我想确保新创建的文件不包含任何必要的数据......