天天看点

ORA-01861: literal does not match format string

不知道兄台在用oracle rman 工具恢复数据库时会不会遇到ORA-01861: literal does not match format string的提示,笔者我真的在windows 环境下折腾了6天,经过不断的摸索,问题是解决了,先公布解决方法:第1步:<b>在windows 命令行下输入C:\Users\andy&gt;set nls_date_format=yyyy-mm-dd hh24:mi:ss</b> 

第2步:重新C:\Documents and Settings\Administrator&gt;rman target sys/taixin@test

第3步:RMAN&gt;  recover database until time '2013-01-26 22:20:45';

最后大喜!!!!成功,

MAN&gt; restore database;

启动 restore 于 26-1月 -13

使用目标数据库控制文件替代恢复目录

分配的通道: ORA_DISK_1

通道 ORA_DISK_1: sid=155 devtype=DISK

通道 ORA_DISK_1: 正在开始恢复数据文件备份集

通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件

正将数据文件00001恢复到D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SYSTEM01.DBF

正将数据文件00002恢复到D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\UNDOTBS01.DBF

正将数据文件00003恢复到D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SYSAUX01.DBF

正将数据文件00004恢复到D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\USERS01.DBF

通道 ORA_DISK_1: 正在读取备份段 D:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\TES

\BACKUPSET\2013_01_26\O1_MF_NNNDF_TAG20130126T221814_8J7SF6XG_.BKP

通道 ORA_DISK_1: 已恢复备份段 1

段句柄 = D:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\TEST\BACKUPSET\2013_01_26\

1_MF_NNNDF_TAG20130126T221814_8J7SF6XG_.BKP 标记 = TAG20130126T221814

通道 ORA_DISK_1: 恢复完成, 用时: 00:00:55

完成 restore 于 26-1月 -13

MAN&gt; recover database until time='2013-01-26 22:20:45';

启动 recover 于 26-1月 -13

使用通道 ORA_DISK_1

MAN-00571: ===========================================================

MAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

MAN-03002: recover 命令 (在 01/26/2013 22:27:42 上) 失败

RA-01861: 文字与格式字符串不匹配

MAN&gt; run{sql 'alter session set NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"';

&gt;         sql 'alter session set NLS_LANGUAGE="AMERICAN"';

&gt; }

ql 语句: alter session set NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"

ql 语句: alter session set NLS_LANGUAGE="AMERICAN"

正在开始介质的恢复

无法恢复介质

MAN-03002: recover 命令 (在 01/26/2013 22:28:21 上) 失败

MAN-11003: 在分析/执行 SQL 语句期间失败: alter database recover if needed

start until time '1月  26 2013 22:20:45'

RA-01861: literal does not match format string

MAN&gt; recover database until time '2013-01-26 22:20:45';

MAN-03002: recover 命令 (在 01/26/2013 22:30:43 上) 失败

MAN&gt; recover database until time "to_date('2013-01-26 22:20:45','yyyy-mm-dd hh2

:mi:ss')";

MAN-03002: recover 命令 (在 01/26/2013 22:34:42 上) 失败

MAN&gt;  run{sql 'alter session set NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"';

MAN-03002: recover 命令 (在 01/26/2013 22:36:42 上) 失败

MAN&gt; recover database until time= '2013-01-26 22:20:45';

MAN-03002: recover 命令 (在 01/26/2013 22:36:52 上) 失败

MAN&gt; list backup;

备份集列表

==================

S 关键字  类型 LV 大小       设备类型 经过时间 完成时间

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

       Full    556.66M    DISK        00:01:01     26-1月 -13

       BP 关键字: 9   状态: AVAILABLE  已压缩: NO  标记: TAG20130126T215827

段名:D:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\TEST\BACKUPSET\2013_01_26\O1_M

_NNNDF_TAG20130126T215827_8J7R884K_.BKP

 备份集 9 中的数据文件列表

 文件 LV 类型 Ckp SCN    Ckp 时间   名称

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

 1       Full 559392     26-1月 -13 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SYSTE

01.DBF

 2       Full 559392     26-1月 -13 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\UNDOT

S01.DBF

 3       Full 559392     26-1月 -13 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SYSAU

 4       Full 559392     26-1月 -13 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\USERS

1.DBF

0      Full    6.80M      DISK        00:00:02     26-1月 -13

       BP 关键字: 10   状态: AVAILABLE  已压缩: NO  标记: TAG20130126T215827

_NCSNF_TAG20130126T215827_8J7RB6CD_.BKP

 包括的控制文件: Ckp SCN: 559417       Ckp 时间: 26-1月 -13

 包含的 SPFILE: 修改时间: 26-1月 -13

1      Full    557.09M    DISK        00:00:50     26-1月 -13

       BP 关键字: 11   状态: AVAILABLE  已压缩: NO  标记: TAG20130126T221814

_NNNDF_TAG20130126T221814_8J7SF6XG_.BKP

 备份集 11 中的数据文件列表

 1       Full 560640     26-1月 -13 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SYSTE

 2       Full 560640     26-1月 -13 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\UNDOT

 3       Full 560640     26-1月 -13 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\SYSAU

 4       Full 560640     26-1月 -13 D:\ORACLE\PRODUCT\10.2.0\ORADATA\TEST\USERS

2      Full    6.80M      DISK        00:00:02     26-1月 -13

       BP 关键字: 12   状态: AVAILABLE  已压缩: NO  标记: TAG20130126T221814

_NCSNF_TAG20130126T221814_8J7SGZNO_.BKP

 包括的控制文件: Ckp SCN: 560663       Ckp 时间: 26-1月 -13

MAN&gt; list backupset summary;

备份列表

==============

关键字     TY LV S 设备类型 完成时间   段数 副本数 压缩标记

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

       B  F  A DISK        26-1月 -13 1       1       NO         TAG20130126T21

827

0      B  F  A DISK        26-1月 -13 1       1       NO         TAG20130126T21

1      B  F  A DISK        26-1月 -13 1       1       NO         TAG20130126T22

814

2      B  F  A DISK        26-1月 -13 1       1       NO         TAG20130126T22

MAN&gt; exit

恢复管理器完成。

:\Documents and Settings\Administrator&gt;set nls_date_format=yyyy-mm-dd hh24:mi:s

:\Documents and Settings\Administrator&gt;rman target sys/taixin@test

恢复管理器: Release 10.2.0.1.0 - Production on 星期六 1月 26 22:50:04 2013

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

已连接到目标数据库: TEST (DBID=2103739987, 未打开)

MAN&gt;  recover database until time '2013-0-26 22:20:45';

启动 recover 于 2013-01-26 22:51:13

通道 ORA_DISK_1: sid=157 devtype=DISK

MAN-03002: recover 命令 (在 01/26/2013 22:51:14 上) 失败

RA-01843: 无效的月份

MAN&gt;  recover database until time '2013-01-26 22:20:45';

启动 recover 于 2013-01-26 22:51:36

介质恢复完成, 用时: 00:00:00

完成 recover 于 2013-01-26 22:51:37

继续阅读