问题背景

如果,你负责的数据库服务器,在RMAN进行全备时,业务又有大量数据要处理,一时间,系统资源直接被耗尽,影响到了业务的正常,你准备怎么处理?

解决办法

【不推荐】当时我们组的另外一个同事在没有询问我的情况下,直接修改oracle分配内存参数,关闭监听,关闭oracle数据库。数据库停了半小时才停下来。当然数据库停下来,所有进程都消失,资源都释放了。
【推荐】其实还有更好的方法,那就是直接杀rman的备份进程!立即释放资源。

紧急状态下,我们是可以立即终止正在进行的RMAN备份进程的。

(1)查看RMAN分配的各个通道的进程号

SQL>  
SELECT sid, spid, client_info 
 FROM v$process p, v$session s 
 WHERE p.addr = s.paddr
 AND client_info LIKE '%rman%';

SIDSPID CLIENT_INFO
11315898 rman channel=ORA_DISK_1
11915899 rman channel=ORA_DISK_2
12015900 rman channel=ORA_DISK_3
11715901 rman channel=ORA_DISK_4

(2)根据第(1)中得到的进程号,终止RMAN备份

注:这里既要kill 掉RMAN备份脚本的PID,www.linuxidc.com?也要kill 掉RMAN中分配的各个通道的PID

[root@asmdb ~]# ps -ef | grep beq
oracle    1918     1  0 Jul10 ?        00:00:09 oracle+ASM (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle   15790     1  0 08:53 ?        00:00:00 oracle+ASM (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle   15892 15885  1 08:57 ?        00:00:00 oracleasmdb (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle   15897 15885  1 08:57 ?        00:00:00 oracleasmdb (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle   15898 15885  1 08:57 ?        00:00:00 oracleasmdb (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle   15899 15885  2 08:57 ?        00:00:00 oracleasmdb (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle   15900 15885  2 08:57 ?        00:00:00 oracleasmdb (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle   15901 15885  5 08:57 ?        00:00:00 oracleasmdb (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
root     15903 15823  0 08:57 pts/3    00:00:00 grep beq
[root@asmdb ~]# kill -9 15898
[root@asmdb ~]# kill -9 15899
[root@asmdb ~]# kill -9 15900
[root@asmdb ~]# kill -9 15901

[root@asmdb ~]# ps -ef | grep rman
oracle   15885 15740  1 08:57 pts/2    00:00:02 rman target /
root     15926 15823  0 09:01 pts/3    00:00:00 grep rman
[root@asmdb ~]# kill -9  15885

rman备份的命令行终端的显示输出:
[oracle@asmdb ~]$ rman target /

Recovery Manager: Release 10.2.0.5.0 - Production on Mon Jul 29 08:57:22 2013

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

connected to target database: ASMDB (DBID=557978363)

RMAN> backup database;

Starting backup at 29-JUL-13
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=113 devtype=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: sid=119 devtype=DISK
allocated channel: ORA_DISK_3
channel ORA_DISK_3: sid=120 devtype=DISK
allocated channel: ORA_DISK_4
channel ORA_DISK_4: sid=117 devtype=DISK
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00002 name=+ASMDG01/asmdb/datafile/undotbs1.261.813779611
input datafile fno=00007 name=+ASMDG01/asmdb/datafile/spottbs.268.821100481
channel ORA_DISK_1: starting piece 1 at 29-JUL-13
channel ORA_DISK_2: starting full datafile backupset
channel ORA_DISK_2: specifying datafile(s) in backupset
input datafile fno=00001 name=+ASMDG01/asmdb/datafile/system.260.813779595
channel ORA_DISK_2: starting piece 1 at 29-JUL-13
channel ORA_DISK_3: starting full datafile backupset
channel ORA_DISK_3: specifying datafile(s) in backupset
input datafile fno=00003 name=+ASMDG01/asmdb/datafile/sysaux.262.813779621
input datafile fno=00004 name=+ASMDG01/asmdb/datafile/users.264.813779629
channel ORA_DISK_3: starting piece 1 at 29-JUL-13
channel ORA_DISK_4: starting full datafile backupset
channel ORA_DISK_4: specifying datafile(s) in backupset
input datafile fno=00005 name=+ASMDG01/asmdb/datafile/luroutest01.dbf
input datafile fno=00006 name=+ASMDG01/asmdb/datafile/spot01.dbf
channel ORA_DISK_4: starting piece 1 at 29-JUL-13
RMAN-03009: failure of backup command on ORA_DISK_1 channel at 07/29/2013 08:58:20
RMAN-10038: database session for channel ORA_DISK_1 terminated unexpectedly
channel ORA_DISK_1 disabled, job failed on it will be run on another channel
RMAN-03009: failure of backup command on ORA_DISK_2 channel at 07/29/2013 08:58:20
RMAN-10038: database session for channel ORA_DISK_2 terminated unexpectedly
channel ORA_DISK_2 disabled, job failed on it will be run on another channel
RMAN-03009: failure of backup command on ORA_DISK_3 channel at 07/29/2013 08:58:20
RMAN-10038: database session for channel ORA_DISK_3 terminated unexpectedly
channel ORA_DISK_3 disabled, job failed on it will be run on another channel

Killed
[oracle@asmdb ~]$
[oracle@asmdb ~]$

(3)核实进程是否还存在

此时RMAN备份操作已经被终止。查看(1)中的SQL语句时,结果为空。

注意事项

如果单单kill掉RMAN的进程号,那么RMAN备份并没有停止,必须要连channel进程也一起掉才可以!

___________________________________________________________________________________

版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!

Author:   laven54 (lurou)

Email:    laven54@163.com

Blog:      http://blog.csdn.net/laven54

QQ群: 164734649  可以到群里来提问,Oracle相关的问题我都很感兴趣

如何中途停止RMAN备份任务的更多相关文章

  1. RMAN 备份详解

    一.数据库备份与RMAN备份的概念 1.数据库完全备份:按归档模式分为归档和非归档 归档模式 打开状态,属于非一致性备份        关闭状态,可以分为一致性和非一致性 非归档模式 打开状态,非一致 ...

  2. RMAN备份(转)

    原文:http://blog.csdn.net/leshami/article/details/6032739 一.数据库备份与RMAN备份的概念 1.数据库完全备份:按归档模式分为归档和非归档 归档 ...

  3. DG环境数据库RMAN备份策略制定

    DG环境数据库RMAN备份策略制定: 主库(Primary) 全库备份 归档备份 删除历史文件夹 备库(Standby) 删除归档 引用说明 主库(Primary) $ crontab -l 0 1 ...

  4. 记录一则RMAN备份策略修正案例

    背景:在给某客户处理问题时,发现客户数据库的备份空间即将用尽,进一步查看发现是用户数据库的当前RMAN备份策略存在潜在问题,需要修改备份策略. 环境:SunOS 5.10 + Oracle 11.2. ...

  5. RMAN备份脚本一列分享

    在ORACLE数据库中,RMAN备份的脚本非常多,下面介绍一例shell脚本如何通过RMAN备份,以及FTP上传RMAN备份文件以及归档日志文件的脚本. fullback.sh 里面调用RMAN命令做 ...

  6. RMAN备份失败: ORA-19502 & ORA-27072: File I/O error

    早上检查一ORACLE数据库的RMAN备份的邮件时,发现出现了ORA-27072: File I/O error等错误,具体信息如下所示: channel ORA_DISK_1: starting p ...

  7. oracle数据库rman备份计划及恢复

    1.rman完全恢复的前提条件:历史的datafile,controlfile和spfile备份,加上完整的archivelog和完好的redolog. 2.rman备份脚本: a.RMAN 0级备份 ...

  8. RMAN 备份及策略

    更详细信息请转http://blog.chinaunix.net/uid-21187846-id-3017363.html 天,这里修改为15天:这样比较保险,到时候恢复时也可以找到当时的备份元数据: ...

  9. Oracle RMAN 备份一例

    Oracle RMAN备份一例: Solaris 10 + Oracle 11.2.0.3 Shell:csh,安装有bash,脚本调用bash 备份策略:周日0级备份,周一~周六1级备份,每6小时备 ...

随机推荐

  1. 小安,今天学会了MySQL中查询时间的方法哦

  2. php+mssql 已经写好的万能函数

    <?php /****************************************************************************************** ...

  3. 自定义ListView分割线

    要完成自定义分割线,我们先来认识一下listview中的两个属性: android:divider 设置list 列表项的分隔条(可用颜色分隔,也可用Drawable分隔) android:divid ...

  4. UIAppearance使用详解-备

    iOS5及其以后提供了一个比较强大的工具UIAppearance,我们通过UIAppearance设置一些UI的全局效果,这样就可以很方便的实现UI的自定义效果又能最简单的实现统一界面风格,它提供如下 ...

  5. 一个很好的幻灯片效果的jquery插件--kinMaxShow

    在做一些网站时,或多或少的要给网站做幻灯片效果,以前每次做这个效果,都是现成带网上找,找到的很多很杂,而且用完后就不会再理会更加不会去总结代码. 无意中找到了kinMaxShow这个插件,机会满足了我 ...

  6. Linux iostat监测IO状态(转)

    Linux iostat监测IO状态 2010-03-1  |  13:13分类:Linux,技术细节  |  标签:Linux  |  53,945 views Linux系统出现了性能问题,一般我 ...

  7. WINDOWS 2012忘记密码之后。。。

    要使用windows server 2012安装DVD,选择光盘引导进入 进入修复系统 选择疑难解答,进入界面 选择命令提示符 切换目录至系统目录 执行move命令 执行 copy命令 重新启动系统, ...

  8. 【转】如何在ubuntu12.04设置adb驱动

    原文网址:http://www.xuebuyuan.com/1475698.html 在ubuntu上adb驱动不用像在windows上一样需要额外装,只需要写一个配置文件就可以,下面是设置的步骤: ...

  9. 瑞柏匡丞:app商业价值如何体现

    在互联网行业,想要实现商业价值,必须先实现用户价值.这个观点发源自PC统治互联网的时代,如今PC端的用户停留时间下降,用户行为趋于稳定保守,移动端则蒸蒸日上.而PC与移动端的区别之一是,PC端的用户流 ...

  10. lazy load 图片延迟加载 跟随滚动条

    http://plugins.jquery.com/lazyload/ Jquery.LazyLoad.js插件参数详解: 1,用图片提前占位 placeholder : "img/grey ...