不知道兄台在用oracle rman 工具恢複資料庫時會不會遇到ORA-01861: literal does not match format string的提示,筆者我真的在windows 環境下折騰了6天,經過不斷的摸索,問題是解決了,先公布解決方法:第1步:<b>在windows 指令行下輸入C:\Users\andy>set nls_date_format=yyyy-mm-dd hh24:mi:ss</b>
第2步:重新C:\Documents and Settings\Administrator>rman target sys/taixin@test
第3步:RMAN> recover database until time '2013-01-26 22:20:45';
最後大喜!!!!成功,
MAN> 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> 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> run{sql 'alter session set NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"';
> sql 'alter session set NLS_LANGUAGE="AMERICAN"';
> }
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> recover database until time '2013-01-26 22:20:45';
MAN-03002: recover 指令 (在 01/26/2013 22:30:43 上) 失敗
MAN> 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> run{sql 'alter session set NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"';
MAN-03002: recover 指令 (在 01/26/2013 22:36:42 上) 失敗
MAN> recover database until time= '2013-01-26 22:20:45';
MAN-03002: recover 指令 (在 01/26/2013 22:36:52 上) 失敗
MAN> 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> 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> exit
恢複管理器完成。
:\Documents and Settings\Administrator>set nls_date_format=yyyy-mm-dd hh24:mi:s
:\Documents and Settings\Administrator>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> 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> 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