RMAN按照时间点不完全恢复数据库的时间设置

SQL Code


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
RMAN> recover database until time ‘2012-02-29:21:30:00‘;
Starting recover at 2012-02-29:22:47:33
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=159 devtype=DISK
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 02/29/2012 22:47:34
ORA-01861: literal does not match format string
 
 
解决方法:
Oracle的日期格式默认设置是DD-MON-YY,很多时候我们需要修改这种格式以满足我们的需求。
 可以通过设置NLS_DATE_FORMAT来改变日期格式,为了让这种改变永久生效,介绍下面的几种方法:
1、修改glogin.sql文件,这个文件的路径:
Windows下,%ORACLE_HOME%\sqlplus\admin
UNIX下,$ORACLE_HOME/sqlplus/admin
在文件中加上:alter session set nls_date_format=‘yyyy-mm-dd hh24:mi:ss‘;
2、修改注册表(Windows平台下)
开始 =》运行=》regedit=》HKEY_LOCAL_MACHINE=》SOFTWARE=》ORACLE=》HOME0 =》新建 字符串值NLS_DATE_FORMAT ,并设置其值为:YYYY-MM-DD:HH24:MI:SS
     如果是windows:
    set NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1 
    set NLS_DATE_FORMAT=YYYY_MM_DD:HH24:MI:SS
3、修改用户环境变量配置文件(UNIX平台下),加上
export NLS_LANG=AMERICAN
export NLS_DATE_FORMAT=‘YYYY-MM-DD HH24:MI:SS‘
有时候只设置了NLS_DATE_FORMAT,而不设置NLS_LANG可能日期格式不会改变(参考RollingPig的文章),这个可能跟平台及Shell类型有关系。
rman会话中设置nls_date_format和nls_lang
run {
......
sql ‘alter session set NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"‘;
sql ‘alter session set NLS_LANGUAGE="AMERICAN"‘;
......
}
时间: 2024-10-13 16:16:06

RMAN按照时间点不完全恢复数据库的时间设置的相关文章

【RMAN】利用备份片还原数据库(中)

[RMAN]利用备份片还原数据库 [RMAN]利用备份片还原数据库(上): http://blog.itpub.net/26736162/viewspace-1621581/ 在上一篇blog中我们介绍了采用dbms_backup_restore来找回控制文件并恢复整个数据库的方法,本篇blog我们介绍采用创建临时库来找回控制文件的方法. 1.1.1  方法二:尝试采用创建临时库来找回控制文件 由于RMAN必须工作在MOUNT模式,所有的数据文件都丢失,无法通过只重建控制文件将其启动到MOUNT

【RMAN】利用备份片还原数据库(上)

[RMAN]利用备份片还原数据库 群里有同学说把ORACLE_BASE目录删掉了,现在只有备份片和归档文件了,试问如何恢复.坑,,,,咋能这么干,ORACLE_BASE都敢删,,试着恢复了下,并且记录下来,当然软件安装部分就不记录了. 我再说说目前的情况,只有备份片和归档文件,且从文件名称是看不出dbname和dbid的,在这种情况下其实恢复控制文件是很重要的了,但是鬼知道备份片里边是不是有控制文件的备份呢?我们可能碰到的就是这样的情况,只有备份文件,其它的什么都不知道.我们且看这样的情况下如何

RMAN恢复案例之--不完全恢复错误案例

RMAN恢复案例之--不完全恢复错误案例 RMAN恢复案例: 不完全恢复,由于在先前的数据文件备份有误,导致恢复失败. [[email protected] ~]$ rman target / Recovery Manager: Release 11.2.0.1.0 - Production on Sat Sep 20 15:54:25 2014 Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserve

ORACLE RMAN备份及还原 RMAN可以进行增量备份:数据库,表空间,数据文件

ORACLE RMAN备份及还原 RMAN可以进行增量备份:数据库,表空间,数据文件 只有使用过的block可以被备份成backup set 表空间与数据文件对应关系:dba_data_files / v$datafile_header 在noarchivelog模式下,可以使用RMAN备份read-only和offline的表空间 ORACLE RMAN停机备份: 备份 RMAN连接上ORACLE,WINDOWS下在命令模式下 RMAN TARGET / 连接本地数据库用的是本地认证模式.RM

【RMAN】利用备份片还原数据库(下)

[RMAN]利用备份片还原数据库 [RMAN]利用备份片还原数据库(上): http://blog.itpub.net/26736162/viewspace-1621581/ [RMAN]利用备份片还原数据库(中):http://blog.itpub.net/26736162/viewspace-1621661/ 在上2篇blog中介绍了备份片中含有控制文件的备份的情况下,如何从备份集中找回控制文件的备份并恢复数据库,本篇blog来介绍下在备份片中没有控制文件的备份的情况下如何恢复数据库. 1.

DB2数据库表示时间的类型

天王盖地虎,宝塔镇河妖,春雷一声吼,码农满街走! 这是菜鸟级码农人生的第一篇博客,来谈谈我在工作中遇到的问题:DB2数据库表示时间的类型,这是我今天在工作中遇到的一个比较2的问题, 由于我比较菜,当时没有第一时间找到问题处在哪儿,首先我先谈一谈我遇到的问题,在Dao层的实现中对DB2数据库进行数据插入的时候, 我定义的Date类型是这样的 DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss") 然而它进入数据库的时

【RMAN】利用备份片还原数据库(中)

[RMAN]利用备份片还原数据库       blog文档结构图:      [RMAN]利用备份片还原数据库(上): http://blog.itpub.net/26736162/viewspace-1621581/    在...yuedu.baidu.com/album/view/a9e914106c175f0e7cd13760/2015-05-11 yuedu.baidu.com/album/view/a9e914106c175f0e7cd13760.html/2015-05-11 yu

sqlserver 数据库中时间函数的建立

create function [dbo].[HtoSec](@lvalue as int)RETURNS intBEGINDECLARE @temp intSet @temp = @lvalue * 60 * 60RETURN @tempEND create function [dbo].[GetTime](@dtmValue as datetime)RETURNS intBEGINDECLARE @temp intDECLARE @GMT_TIMEZONE intSET @GMT_TIMEZ

Oracle数据库更新时间的SQL语句

---Oracle数据库更新时间字段数据时的sql语句---格式化时间插入update t_user u set u.name='pipi',u.modifytime=to_date('2015-10-07 00:00:00','YYYY-MM-DD HH24:MI:SS') where u.uid = 11111---使用数据库系统当前时间update t_user u set u.name='pipi',u.modifytime=sysdate where u.uid = 11111