初步使用RMAN

       我们已经了解并尝试了rman备份的一些命令,但是在实际环境中,不可能每次备份都要求DBA一条命令一条命令来敲(dba手指头都痉挛啦,老板看着更是肉疼,早知道就是打几个字母,雇个打字的,成本不是更低么),通过前章的学习我们已经立志一定要优化的干活,所以我们应该写好一段脚本,然后放在服务器端定时执行。DBA只需要时不时看看备份的结果就成了。 

在写脚本之前,我们先明确一下我们的目标: 
1、每天夜间1点执行; 
2、数据库全备,同时备份控制文件及归档日志文件,备份文件保存至:D:\backup\目录下,并在完成归档日志文件备份后,自动删除已备份的归档日志; 
3、备份保留7天,过期则自动删除; 
4、保留操作日志备查; 

    以Windows环境为例(linux环境下与此基本类似,rman的脚本您甚至连改都不用改,就把调用rman脚本的命令行改改就行了): 
1、编写rman批处理文件 
保存至:E:\oracleScript\backup\database_backup_jssweb.rman

  
  
RUN { CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS; CONFIGURE CONTROLFILE AUTOBACKUP ON ; CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO ' d:/backup/%F ' ; ALLOCATE CHANNEL CH1 DEVICE TYPE DISK FORMAT ' d:/backup/%U ' ; BACKUP DATABASE SKIP INACCESSIBLE FILESPERSET 10 PLUS ARCHIVELOG FILESPERSET 20 DELETE ALL INPUT; RELEASE CHANNEL CH1; } ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE DISK ; CROSSCHECK BACKUPSET; DELETE NOPROMPT OBSOLETE;


    上述的各项命令均在前面几个章节中提到过,如果有看着眼生的话,再回去翻翻前面。命令是都知晓地,可能有几个参数会不明白其意义,比如:BACKUP命令中的SKIT INACCESSIBLE参数,大家表着急,静心等候俺的外。外外。。外外外。。。。(大锅,看个笔记而已,您不用拎着把菜刀到处晃吧,你你你,你别过来,我说还不成嘛)en,看到大家如此虔诚,俺就提前透露这部分内容吧。 

SKIP选项 说明 
    SKIP INACCESSIBLE:表示跳过不可读的文件。我们知道一些offline的数据文件只要存在于磁盘上就仍然可被读取,但是可能有些文件已经被删除或移到它处造成不可读,加上这个参数就会跳过这些文件; 
SKIP OFFLINE:跳过offline的数据文件; 
SKIP READONLY:跳过那些所在表空间为read-only的数据文件; 

    注意哟,你从网上搜索rman备份脚本,可能有些脚本中会出现一项:sql 'alter system archive log current';这句是让archivelog日志归档,实际上完全没必要,我们在第三节的时候讲过,通过plus archivelog方式备份时,rman会自动对当前的archivelog进行归档。 

2、编写dos批处理 
保存至:E:\oracleScript\backup\database_backup_jssweb.bat 
设定要备份的数据库sid为jssweb,将日志按照日期输出到E:\oracleScript\backup\logs\目录。 

set oracle_sid=jssweb 
rman target / msglog E:\oracleScript\backup\logs\Úte:~0,10%.log cmdfile=E:\oracleScript\backup\database_backup_jssweb.rman 

3、设定执行计划 
    控制面板->任务计划中添加计划,运行E:\oracleScript\backup\database_backup_jssweb.bat,设定日程安排中的时间。 
竣工! 

    说是实战,实际上演练的味道依然浓厚,谁让咱这是在测试泥。上述脚本已初具雏形,当然还应该再增加一些更合理的配置,比如根据您的数据库大小,适当调整通道数量,以及加上日期的判断,根据时间进行增量备份(关于增量备份,限于篇幅这里不介绍,俺保证在外传2尽可能白话,敬请期待)。

 由于三思专职dba生涯刚刚开始,所接触到的数据库在体积上都属于小型数据库(不超10G),即使每次备份都是全备也是可以接受的,所以在备份策略上能够非常灵活,或者说随意。对于那些数百G甚至过T的数据库,我想就需要很是花些心思来考虑备份策略的问题了,在这方面三思目前还无法给出具有建设性的提议,但是有一点我想是毋庸置疑的:备份不仅仅只是在数据库崩溃时才会用到,备份是为了更好的恢复。所以我想做好备份与恢复之间开销的平衡应该是所有备份策略的终极目标吧。 

    备份终于完了。别松气,这仅仅只是开始,加油~~~~~ 

基于STM32设计的数字示波器全套资料(原理图、PCB图、源代码) 硬件平台: 主控器:STM32F103ZET6 64K RAM 512K ROM 屏幕器:SSD1963 分辨率:480*272 16位色 触摸屏:TSC2046 模拟电路: OP-TL084 OP-U741 SW-CD4051 CMP-LM311 PWR-LM7805 -LM7905 -MC34063 -AMS1117-3.3 DRT-ULN2003 6.继电器:信号继电器 7.电源:DC +12V 软件平台: 开发环境:RealView MDK-ARM uVision4.10 C编译器:ARMCC ASM编译器:ARMASM 连机器:ARMLINK 实时内核:UC/OS-II 2.9实时操作系统 GUI内核:uC/GUI 3.9图形用户接口 底层驱动:各个外设驱动程序 数字示波器功能: 波形发生器:使用STM32一路DA实现正弦,三角波,方波,白噪声输出。 任意一种波形幅值在0-3.3V任意可调、频率在一定范围任意可调、方波占空比可调。调节选项可以通过触摸屏完成设置。 SD卡存储: SD卡波形存储输出,能够对当前屏幕截屏,以JPG格式存储在SD卡上。能够存储1S内的波形数据,可以随时调用查看。 数据传输:用C#编写上位机,通过串口完成对下位机的控制。(1)实现STOP/RUN功能(2)输出波形电压、时间参数(3)控制截屏(4)控制波形发生器(5)控制完成FFT(6)波形的存储和显示 图形接口: UCGUI 水平扫速: 250 ns*、500ns、1μs、5 μs、10μs、50μs、500 μs、5ms 、50ms 垂直电压灵敏度:10mV/div, 20mV/div, 50mV/div, 0.1V/div, 0,2V/div, 0.5V/div, 1V/div,2V/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值