再次呼叫::在使用rman恢复时,“无效日期”再次提问!!!

philipsis006 2003-10-10 09:27:20
错误代码:
rman-06003:oracle error from target database:ora-01843:无效的月份
rman-06097:text of failing sql statement:select decode<bitand<festa,<4096
+128>>,128,fecps,4096,fecps,0>,decode<............to_date<'JAN 01 1988',
'MON DD YYYY'>>,feofs,to_date<nvl<feonc_tim,'01/01/88 00:01:01'>,'MM/DD
/RR HH24:MI:SS'> into .........
rman-0699:error occurred in source file krmk.pc,line:22229

我用下面方法:
在恢复端机器的注册表HKEY_LOCAL_MACHINE->SOFTWARE->ORACLE->HOME0中,如无系统变量NLS_DATE_FORMAT,则“新建”->“字符串”,重命名为“NLS_DATE_FORMAT”,并赋值为:"YYYY-MM-DD HH24:MI:SS",变量的值要注意引号内的字符应大写。再导库时不需要重启Oracle。
仍不能解决问题!!!!!
怎么办???
...全文
30 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
tiangou 2004-02-12
  • 打赏
  • 举报
回复
也感谢goooooogle(),我郁闷了很久的问题终于解决了

还有楼主,你记得结贴呀!

以下是偶的过程,供参考!
===============================================================


D:\>set NLS_DATE_LANGUAGE=American

D:\>rman catalog rman/rman@zrh target sys/oracle@mzx

恢复管理器:版本8.1.6.0.0 - Production

RMAN-06005:连接到目标数据库:NT817 (DBID=4166433089)
RMAN-06008:连接到恢复目录数据库

RMAN>run{
2> allocate channel c1 type disk;
3> sql "alter session set NLS_DATE_FORMAT=''YYYY-MM-DD HH24:MI:SS''";
4> set until time '2004-02-12 21:57:08';
5> restore database;
6> recover database;
7> release channel c1;
8> }

RMAN-03022:正在编译命令:allocate
RMAN-03023:正在执行命令:allocate
RMAN-08030:分配的通道:c1
RMAN-08500:通道 c1:sid=13 devtype=DISK

RMAN-03022:正在编译命令:sql
RMAN-06162:sql 语句:alter session set NLS_DATE_FORMAT=''YYYY-MM-DD HH24:MI:SS'
'
RMAN-03023:正在执行命令:sql

RMAN-03022:正在编译命令:set

RMAN-03022:正在编译命令:restore

RMAN-03022:正在编译命令:IRESTORE
RMAN-03023:正在执行命令:IRESTORE
RMAN-08016:通道 c1:正在开始恢复数据文件备份集
RMAN-08502:set_count=1 set_stamp=517960484 creation_time=12-FEB-04
RMAN-08089:通道 c1:正在指定从备份集恢复的数据文件
RMAN-08523:正将数据文件00001恢复到C:\ORACLE\ORADATA\NT817\SYSTEM01.DBF
RMAN-08523:正将数据文件00002恢复到C:\ORACLE\ORADATA\NT817\RBS01.DBF
RMAN-08523:正将数据文件00003恢复到C:\ORACLE\ORADATA\NT817\USERS01.DBF
RMAN-08523:正将数据文件00004恢复到C:\ORACLE\ORADATA\NT817\TEMP01.DBF
RMAN-08523:正将数据文件00005恢复到C:\ORACLE\ORADATA\NT817\TOOLS01.DBF
RMAN-08523:正将数据文件00006恢复到C:\ORACLE\ORADATA\NT817\INDX01.DBF
RMAN-08523:正将数据文件00007恢复到C:\ORACLE\ORADATA\NT817\DR01.DBF
RMAN-08023:通道 c1:已恢复备份段 1
RMAN-08511:段 handle=C:\ORACLE\ORA81\DATABASE\01FDUSP4_1_1 tag=null params=NULL

RMAN-08024:通道 c1:恢复完成
RMAN-03023:正在执行命令:partial resync
RMAN-08003:启动部分恢复目录的 resync
RMAN-08005:完成部分 resync

RMAN-03022:正在编译命令:recover

RMAN-03022:正在编译命令:recover(1)

RMAN-03022:正在编译命令:recover(2)

RMAN-03022:正在编译命令:recover(3)
RMAN-03023:正在执行命令:recover(3)
RMAN-08054:正在开始媒体的恢复
RMAN-08055:完成媒体的恢复

RMAN-03022:正在编译命令:recover(4)

RMAN-03022:正在编译命令:release
RMAN-03023:正在执行命令:release
RMAN-08031:释放的通道:c1

RMAN>
philipsis006 2003-10-13
  • 打赏
  • 举报
回复
谢谢你们!
感激goooooogle(),问题解决了!
gladness 2003-10-10
  • 打赏
  • 举报
回复
“decode<bitand<festa,<4096
+128>>,128,fecps,4096,fecps,0>,decode<............to_date<'JAN 01 1988',
'MON DD YYYY'>>,feofs,to_date<nvl<feonc_tim,'01/01/88 00:01:01'>,'MM/DD
/RR HH24:MI:SS'> into .........”
这是你在rman中执行的sql吗?
如果是,那么把'JAN 01 1988','MON DD YYYY'改为'01-01-1988','MM-DD-YYYY'

如果不是,那么把你在rman中执行的命令贴出来
goooooogle 2003-10-10
  • 打赏
  • 举报
回复
手工设置环境变量:
C:\>set NLS_DATE_LANGUAGE=American

再执行RMAN命令.
这个问题可能与安装时选取的字符集有关.

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧