ORA-25153: Temporary Tablespace is Empty 重建控制文件导致丢失tempfile

expdp jzh/jzh dumpfile=emp1.dmp directory=test_dir tables=emp1 logfile=emp1.log
Export: Release 11.2.0.3.0 - Production on Sat Sep 27 14:40:07 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-25153: Temporary Tablespace is Empty
ORA-06512: at "SYS.DBMS_LOB", line 724
ORA-06512: at "SYS.DBMS_DATAPUMP", line 3964
ORA-06512: at line 1
导出数据时遇到以上报错,于是先看看temp表空在不在。
SYS@test>select tablespace_name from dba_tablespaces;
TABLESPACE_NAME
------------------------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS
EXAMPLE
SYS@test>select tablespace_name,file_name from dba_temp_files;---临时文件没有了
no rows selected
[oracle@11g test]$ ll
total 1955416
-rw-r----- 1 oracle oinstall  10076160 Sep 27 14:44 control01.ctl
-rw-r----- 1 oracle oinstall 362422272 Sep 27 12:12 example01.dbf
-rw-r----- 1 oracle oinstall  52429312 Sep 27 14:42 redo01.log
-rw-r----- 1 oracle oinstall  52429312 Sep 27 12:12 redo02.log
-rw-r----- 1 oracle oinstall  52429312 Sep 27 12:12 redo03.log
-rw-r----- 1 oracle oinstall 597696512 Sep 27 14:40 sysaux01.dbf
-rw-r----- 1 oracle oinstall 754982912 Sep 27 14:41 system01.dbf
-rw-r----- 1 oracle oinstall  30416896 Sep 25 22:14 temp01.dbf
-rw-r----- 1 oracle oinstall  99622912 Sep 27 14:40 undotbs01.dbf
-rw-r----- 1 oracle oinstall  15736832 Sep 27 14:40 users01.dbf
临时文件在,很奇怪,查查alert.log。
WARNING: Default Temporary Tablespace not specified in CREATE DATABASE command
Default Temporary Tablespace will be necessary for a locally managed database in future rele
ase
Successful mount of redo thread 1, with mount id 2157453076
Completed: CREATE CONTROLFILE REUSE DATABASE "TEST" NORESETLOGS  ARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
WARNING: Default Temporary Tablespace not specified in CREATE DATABASE command
Default Temporary Tablespace will be necessary for a locally managed database in future rele
ase
Successful mount of redo thread 1, with mount id 2157453076
Completed: CREATE CONTROLFILE REUSE DATABASE "TEST" NORESETLOGS  ARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
这时想起来前几天重建了控制文件,add回来。
SYS@test>alter tablespace temp add tempfile
  2  '/u01/app/oracle/oradata/test/temp01.dbf';
Tablespace altered.
TABLESPACE_NAME                FILE_NAME
------------------------------ ----------------------------------------
TEMP                           /u01/app/oracle/oradata/test/temp01.dbf

ok了,回来了。





来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10271187/viewspace-1283074/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10271187/viewspace-1283074/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ORA-01665 错误表示当前的控制文件不是备用控制文件,无法用于备用库的恢复。要解决这个问题,您可以按照以下步骤操作: 1. 首先,确认当前的控制文件是否确实是备用控制文件。可以使用以下 SQL 语句查询: ``` SELECT NAME, VALUE FROM V$PARAMETER WHERE NAME = 'control_files'; ``` 如果查询结果中只包含备用控制文件的路径,则说明当前的控制文件是备用控制文件。如果查询结果中包含多个控制文件路径,您需要确认其中哪一个是备用控制文件。 2. 如果确认当前的控制文件不是备用控制文件,则需要将其替换为备用控制文件。可以按照以下步骤进行操作: - 连接到主数据库,并使用以下命令生成备用控制文件的副本: ``` ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/path/to/standby/controlfile'; ``` - 将备用控制文件的副本传输到备用数据库,并将其命名为“control01.ctl”。 - 在备用数据库上,停止实例并将控制文件更名为“control02.ctl”。 - 将备用控制文件的副本复制到“control02.ctl”的位置。 - 启动实例并尝试启动备用数据库。 3. 如果确认当前的控制文件是备用控制文件,但仍然出现ORA-01665错误,则可能是由于备用控制文件的元数据与主数据库的控制文件不匹配导致的。您可以按照以下步骤解决此问题: - 在备用数据库上,停止实例并备份当前的控制文件。 - 使用以下命令删除当前的控制文件: ``` ALTER DATABASE RENAME FILE '/path/to/controlfile' TO '/path/to/controlfile.bak'; ``` - 将备用控制文件的副本复制到主数据库的控制文件所在的位置。 - 启动实例并尝试启动备用数据库。 通过以上操作,您应该能够解决ORA-01665错误并成功启动备用数据库。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值