search
HomeDatabaseMysql TutorialRMAN备份时遇到ORA-19588

客户反映NBU备份任务失败,检查RMAN备份脚本的日志输出发现是由于ORA-19588导致备份任务终止,

客户反映NBU备份任务失败,检查RMAN备份脚本的日志输出发现是由于ORA-19588导致备份任务终止,具体报错如下:

RMAN-00571: ===========================================================
 
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ===========================================================

RMAN-03009: failure of backup command on ch00 channel at 07/15/2015 11:51:47

ORA-19588: archived log recid 125609 stamp 884484359 is no longer valid

错误的是由于备份期间某一个归档文件在控制文件中没有找到导致备份失败,可能导致这个错误的原因主要有3个:
1、控制文件信息与归档文件信息不一致,可以使用如下命令更新控制文件信息;
2、RMAN备份任务被启动了两次;
3、错误的备份脚本语法。
对于第1种错误,可以使用下面的命令对控制文件进行更新:

RMAN> crosscheck archivelog all;
对于第二种错误,需要检查备份任务的启动情况,,不要让RMAN备份任务重复启动,对于第三种错误,通常是在备份脚本中出现了如下的写法:

backup archivelog all archivelog until time 'sysdate -7' delete input ;
  上面的脚本在RMAN中的执行过程是先备份所有的归档,然后删除归档,接着再执行备份直到sysdate-7的归档,所以执行第二步备份时会发现归档已经被删除了,就会出现ORA-19588错误。
 检查备份脚本发现,crosscheck archivelog all已经写入到备份脚本中,所以排除第一种错误,在备份脚本中也没有发现第三种情况中的错误写法。所以怀疑NBU启动了两次备份任务,但是检查NBU日志发现,备份任务只启动了一次,但是有个奇怪的现象是针对这个系统有两个不同的备份任务,接下来检查两个备份任务的脚本,其中一个是对数据库进行全备,同时备份所有的归档文件和控制文件,另外一个备份脚本是备份所有的归档,并删除3天前的归档。两个备份脚本都涉及到对归档的操作,接下来检查两个任务的执行时间:

SQL> select START_TIME,END_TIME,STATUS,ELAPSED_SECONDS from V$RMAN_BACKUP_JOB_DETAILS order by START_TIME;
 

START_TIME                END_TIME        STATUS              ELAPSED_SECONDS

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

2015-07-14 05:00:04 2015-07-14 07:20:31 COMPLETED                      8427

2015-07-14 11:23:57 2015-07-14 11:25:27 FAILED                          90

2015-07-14 11:33:34 2015-07-15 00:28:41 COMPLETED                      46507

2015-07-14 16:59:36 2015-07-15 10:22:13 FAILED                        62557

2015-07-15 00:31:01 2015-07-15 11:51:47 FAILED                        40846

从上面的备份任务的起止时间分析,两个备份任务出现交叉,而且都涉及到对归档的操作,因此导致了ORA-19588。需要将两个备份任务的时间窗口进行重新分布,避免同一时间有两个备份任务执行。

--------------------------------------推荐阅读 --------------------------------------

RMAN备份时遭遇ORA-19571 

RMAN 配置归档日志删除策略

Oracle基础教程之通过RMAN复制数据库

RMAN备份策略制定参考内容

RMAN备份学习笔记

Oracle数据库备份加密 RMAN加密

--------------------------------------分割线 --------------------------------------

本文永久更新链接地址

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
What are the differences in syntax between MySQL and other SQL dialects?What are the differences in syntax between MySQL and other SQL dialects?Apr 27, 2025 am 12:26 AM

MySQLdiffersfromotherSQLdialectsinsyntaxforLIMIT,auto-increment,stringcomparison,subqueries,andperformanceanalysis.1)MySQLusesLIMIT,whileSQLServerusesTOPandOracleusesROWNUM.2)MySQL'sAUTO_INCREMENTcontrastswithPostgreSQL'sSERIALandOracle'ssequenceandt

What is MySQL partitioning?What is MySQL partitioning?Apr 27, 2025 am 12:23 AM

MySQL partitioning improves performance and simplifies maintenance. 1) Divide large tables into small pieces by specific criteria (such as date ranges), 2) physically divide data into independent files, 3) MySQL can focus on related partitions when querying, 4) Query optimizer can skip unrelated partitions, 5) Choosing the right partition strategy and maintaining it regularly is key.

How do you grant and revoke privileges in MySQL?How do you grant and revoke privileges in MySQL?Apr 27, 2025 am 12:21 AM

How to grant and revoke permissions in MySQL? 1. Use the GRANT statement to grant permissions, such as GRANTALLPRIVILEGESONdatabase_name.TO'username'@'host'; 2. Use the REVOKE statement to revoke permissions, such as REVOKEALLPRIVILEGESONdatabase_name.FROM'username'@'host' to ensure timely communication of permission changes.

Explain the differences between InnoDB and MyISAM storage engines.Explain the differences between InnoDB and MyISAM storage engines.Apr 27, 2025 am 12:20 AM

InnoDB is suitable for applications that require transaction support and high concurrency, while MyISAM is suitable for applications that require more reads and less writes. 1.InnoDB supports transaction and bank-level locks, suitable for e-commerce and banking systems. 2.MyISAM provides fast read and indexing, suitable for blogging and content management systems.

What are the different types of JOINs in MySQL?What are the different types of JOINs in MySQL?Apr 27, 2025 am 12:13 AM

There are four main JOIN types in MySQL: INNERJOIN, LEFTJOIN, RIGHTJOIN and FULLOUTERJOIN. 1.INNERJOIN returns all rows in the two tables that meet the JOIN conditions. 2.LEFTJOIN returns all rows in the left table, even if there are no matching rows in the right table. 3. RIGHTJOIN is contrary to LEFTJOIN and returns all rows in the right table. 4.FULLOUTERJOIN returns all rows in the two tables that meet or do not meet JOIN conditions.

What are the different storage engines available in MySQL?What are the different storage engines available in MySQL?Apr 26, 2025 am 12:27 AM

MySQLoffersvariousstorageengines,eachsuitedfordifferentusecases:1)InnoDBisidealforapplicationsneedingACIDcomplianceandhighconcurrency,supportingtransactionsandforeignkeys.2)MyISAMisbestforread-heavyworkloads,lackingtransactionsupport.3)Memoryengineis

What are some common security vulnerabilities in MySQL?What are some common security vulnerabilities in MySQL?Apr 26, 2025 am 12:27 AM

Common security vulnerabilities in MySQL include SQL injection, weak passwords, improper permission configuration, and unupdated software. 1. SQL injection can be prevented by using preprocessing statements. 2. Weak passwords can be avoided by forcibly using strong password strategies. 3. Improper permission configuration can be resolved through regular review and adjustment of user permissions. 4. Unupdated software can be patched by regularly checking and updating the MySQL version.

How can you identify slow queries in MySQL?How can you identify slow queries in MySQL?Apr 26, 2025 am 12:15 AM

Identifying slow queries in MySQL can be achieved by enabling slow query logs and setting thresholds. 1. Enable slow query logs and set thresholds. 2. View and analyze slow query log files, and use tools such as mysqldumpslow or pt-query-digest for in-depth analysis. 3. Optimizing slow queries can be achieved through index optimization, query rewriting and avoiding the use of SELECT*.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

DVWA

DVWA

Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

EditPlus Chinese cracked version

EditPlus Chinese cracked version

Small size, syntax highlighting, does not support code prompt function

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools