RMAN备份相关的动态性能视图及监控

简介:  1.相关视图        v$backup_files        v$backup_set        v$backup_piece        v$backup_redo...

 1.相关视图

        v$backup_files

        v$backup_set

        v$backup_piece

        v$backup_redolog

        v$backup_spfile

        v$backup_device

        v$rman_configuration

        v$archived_log

        v$backup_corruption

        v$copy_corruption

        v$database_block_corruption

        v$backup_datafile

       

    2.查看channel对应的server sessions

            使用set command id命令

        查询v$process和v$session判断哪一个会话与之对应的RMAN通道

        SQL> select sid,username,client_info from v$session

          2  where client_info is not null;

 

               SID USERNAME                       CLIENT_INFO

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

               146 SYS                            rman channel=ORA_DISK_1

               148 SYS                            rman channel=ORA_DISK_2

               150 SYS                            rman channel=ORA_DISK_3

           

        --下面使用了set command id命令

        RMAN> run{

        2> allocate channel ch1 type disk;

        3> set command id to 'rman';

        4> backup as copy datafile 4

        5> format '/u01/app/oracle/rmanbak/dd_%U';

        6> }

           

        SQL> select sid,username,client_info from v$session

          2   where client_info is not null;

 

               SID USERNAME                       CLIENT_INFO

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

               140 SYS                            id=rman

          

        SQL> select sid,spid,client_info

          2  from v$process p ,v$session s

          3  where p.addr = s.paddr

          4  and client_info like '%id=%';

 

               SID SPID         CLIENT_INFO

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

               140 5002         id=rman 

          

        --查看rman完整的进度      

        SQL> select sid,serial#,context,sofar,totalwork,

          2  round(sofar/totalwork*100,2) "% Complete"

          3  from v$session_longops

          4   where opname like 'RMAN:%'

          5  and opname not like 'RMAN:aggregate%'

          6  and totalwork!=0;    

 

        --通过如下SQL获得rman用来完成备份操作的服务进程的SID与SPID信息:

        select sid, spid, client_info

          from v$process p, v$session s

         where p.addr = s.paddr

           and client_info like '%id=rman%'

     

    3.Linux下的rman自动备份

        备份脚本+crontab

        bak_inc0 :级增量备份,每周日使用级增量进行备份

        bak_inc1 :级增量备份,每周三使用级增量备份,备份从周日以来到周三所发生的数据变化

        bak_inc2 :级增量备份,备份每天发生的差异增量。如从周日到周一的差异,从周一到周二的差异

       

        --下面是级增量的脚本,其余级与级依法炮制,所不同的是备份级别以及tag标记

        [oracle@oradb scripts]$ cat bak_inc0

        run {

        allocate channel ch1 type disk;

        backup as compressed backupset  incremental level 0

        format '/u01/oracle/bk/rmbk/incr0_%d_%U'

        tag 'day_incr0'

        database plus archivelog delete input;

        release channel ch1;

        }

               

        逐个测试脚本

        [oracle@oradb bk]$ rman target / log=/u01/oracle/bk/log/bak_inc0.log /

        > cmdfile=/u01/oracle/bk/scripts/bak_inc0.rcv

        RMAN> 2> 3> 4> 5> 6> 7> 8> 9>

        [oracle@oradb bk]$

 

        编辑crontab

        [root@oradb ~]# whoami

        root

        [root@oradb ~]# crontab -e -u oracle

 

        45 23 * * 0 rman target / log=/u01/oracle/bk/log/bak_inc0.log append cmdfile =/u01/oracle/bk/scripts/bak_inc0.rcv

        45 23 * * 1 rman target / log=/u01/oracle/bk/log/bak_inc2.log append cmdfile =/u01/oracle/bk/scripts/bak_inc2.rcv

        45 23 * * 2 rman target / log=/u01/oracle/bk/log/bak_inc2.log append cmdfile =/u01/oracle/bk/scripts/bak_inc2.rcv

        45 23 * * 3 rman target / log=/u01/oracle/bk/log/bak_inc1.log append cmdfile =/u01/oracle/bk/scripts/bak_inc1.rcv

        45 23 * * 4 rman target / log=/u01/oracle/bk/log/bak_inc2.log append cmdfile =/u01/oracle/bk/scripts/bak_inc2.rcv

        45 23 * * 5 rman target / log=/u01/oracle/bk/log/bak_inc2.log append cmdfile =/u01/oracle/bk/scripts/bak_inc2.rcv

        45 23 * * 6 rman target / log=/u01/oracle/bk/log/bak_inc2.log append cmdfile =/u01/oracle/bk/scripts/bak_inc2.rcv

        "/tmp/crontab.XXXXInBzgR" 7L, 791C written

        crontab: installing new crontab

        保存之后重启crontab

        [root@oradb ~]# service crond restart

        Stopping crond: [  OK  ]

        Starting crond: [  OK  ]

       

        检查自动备份是否成功执行

相关文章
|
存储 Oracle 关系型数据库
9-3 Oracle数据字典和动态性能视图介绍
9-3 Oracle数据字典和动态性能视图介绍
167 1
|
2月前
|
存储 关系型数据库 数据库
数据库启用慢速查询日志如何增强 Postgres 可观测性
数据库启用慢速查询日志如何增强 Postgres 可观测性
40 1
|
4月前
|
监控 Oracle 关系型数据库
"深度剖析:Oracle SGA大小调整策略——从组件解析到动态优化,打造高效数据库性能"
【8月更文挑战第9天】在Oracle数据库性能优化中,系统全局区(SGA)的大小调整至关重要。SGA作为一组共享内存区域,直接影响数据库处理能力和响应速度。本文通过问答形式介绍SGA调整策略:包括SGA的组成(如数据缓冲区、共享池等),如何根据负载与物理内存确定初始大小,手动调整SGA的方法(如使用`ALTER SYSTEM`命令),以及利用自动内存管理(AMM)特性实现智能调整。调整过程中需注意监控与测试,确保稳定性和性能。
371 2
|
7月前
|
SQL Oracle 关系型数据库
Oracle-动态性能视图解读
Oracle-动态性能视图解读
165 0
|
SQL 关系型数据库 MySQL
kkitDeploy功能之--备份系统介绍
kkitDeploy功能之--备份系统介绍
|
Oracle 关系型数据库
oracle学习24-数据文件设置自扩展和监听日志文件过大处理
oracle学习24-数据文件设置自扩展和监听日志文件过大处理
348 0
|
网络安全
F5实现一键备份和恢复功能
脚本内容:  root@ltm2:Active:Standalone] tmp # more backup1.sh #!/bin/sh cd /shared/tmp date_tag=`date +%Y%m%d%H%M%S` XXXX save sys  ucs    /shared/tmp/$HOSTNAME-$date_tag.
1181 0
|
SQL 监控 Go
MSSQL-最佳实践-如何监控备份还原进度
--- title: MSSQL · 最佳实践 · 如何监控备份还原进度 author: 风移 --- # 摘要 本期月报是SQL Server备份还原专题分享系列的第六期,打算分享给大家如何监控SQL Server备份还原进度。 # 场景引入 由于SQL Server备份还原操作是重I/O读写操作,尤其是当数据库或数据库备份文件比较大的到时候。那么,我们就有强烈的需求去监
3834 0