问题描述:

Oracle自动备份脚本的实现。

错误提示1:

Message file RMAN.msb not found

Verify that Oracle_HOME is set properly

。。。。。。

错误原因:

自动执行的不能够识别相应的命令,需要在自动备份脚本中显式的声明Oracle的环境变量。

错误提示2:

standard in must be a tty

。。。。。。

错误原因:

不能在cron使用su或者管道等操作,必须将su命令移动到相关的shell脚本中。

错误提示3:

Argument     Value          Description

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

target       quoted-string  connect-string for target database

catalog      quoted-string  connect-string for recovery catalog

nocatalog    none           if specified, then no recovery catalog

cmdfile      quoted-string  name of input command file

log          quoted-string  name of output message log file

trace        quoted-string  name of output debugging message log file

append       none           if specified, log is opened in append mode

debug        optional-args  activate debugging

msgno        none           show RMAN-nnnn prefix for all messages

send         quoted-string  send a command to the media manager

pipe         string         building block for pipe names

timeout      integer        number of seconds to wait for pipe input

checksyntax  none           check the command file for syntax errors

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

Both single and double quotes (' or ") are accepted for a quoted-string.

Quotes are not required unless the string contains embedded white-space.

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

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

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

RMAN-00556: could not open CMDFILE "backup_ar.rcv"

。。。。。。

错误原因:

需要在cmdfile中指明绝对路径,不能因为shell脚本调用的cmdfile是在同一个目录下就可以直接使用文件名或者直接使用./

正确示例代码:

1、#cron文件

0 12,18 * * * /home/Oracle/bak_sh/backup_ar.sh

#表示每天12,18点对数据库归档日至进行全备份

2、入口shell文件,文件名:backup_ar.sh

export Oracle_HOME=/home/u01/app/Oracle/Oracle/product/10.2.0/db_1

export Oracle_SID=test

export LANG=en_US.UTF-8

/home/u01/app/Oracle/Oracle/product/10.2.0/db_1/bin/rman cmdfile = backup_ar.rcv

3、rman备份脚本

connect target /

connect catalog rman/rman@rman

run{

allocate channel d1 device type disk;

sql 'alter system archive log current';

backup archivelog all delete input

format '/opt/rmanback/full_%u_%p_%c.ac' filesperset = 3;

release channel d1;

}

解决方法:

1、两种办法

一是用root的crontab,*/2 * * * * a.sh --》su - Oracle -c a.sh

一是在a.sh里加上Oracle的环境。

2、我们做的cron测试:

实例:

Vi /etc/cron.minly/new.sh

内容:

Su – Oracle –c “/home/Oracle/mginfo.sh”

Vi /home/Oracle/mginfo.sh

内容:

Exp mginfotech/mginfotech file=mginfotech.dmp log=mginfotech.log

Vi /etc/crontab

内容:

59 23 * * * root run-parts /etc/cron.minly

每晚23:59分钟执行

cron中无法读取环境变量

在shell中显示地export环境变量

export Oracle_HOME=/opt/ora9/product/9.2

export Oracle_SID=Oracle

export NLS_LANG=xxxxx

Oracle自动备份脚本的实现的更多相关文章

  1. Oracle自动备份脚本(网上找到的资料)

    废话不多说了,直接给大家贴代码了,具体代码如下所示: ? 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 ...

  2. Oracle自动备份脚本

    set mydate=%date:~0,4%%date:~5,2%%date:~8,2%exp 用户名/密码@实例名 file=D:\mydata_%mydate%.dmp owner=用户名 log ...

  3. Windows环境下Oracle数据库的自动备份脚本

    批处理文件(.bat) @echo off echo ================================================ echo  Windows环境下Oracle数据 ...

  4. oracle expdp自动备份脚本

    windows: @echo off echo ================================================ echo Windows环境下Oracle数据库的自动 ...

  5. Oracle数据库的自动备份脚本

    @echo off echo ================================================ echo Windows环境下Oracle数据库的自动备份脚本 echo ...

  6. Windows环境下Oracle数据库的自动备份脚本自动删除30天前的备份

    @echo off echo ================================================ echo Windows环境下Oracle数据库的自动备份脚本 echo ...

  7. Windows:Oracle 11g 备份脚本

    @echo off echo ================================================ echo Windows环境下Oracle数据库的自动备份脚本 echo ...

  8. Oracle自动备份bat

    很多时候我们需要自动备份数据库这边推荐bat+Windows计划任务实现 方案1 创建以下bat 然后添加到TaskSchedule(路径最好不要包含中文) @echo off @echo ===== ...

  9. Mysql 自动备份脚本

    转自: Mysql 自动备份脚本2 - - ITeye技术网站http://kangh.iteye.com/blog/2309091 备份方案: 备份主机:192.168.10.11 数据库服务器:1 ...

随机推荐

  1. jQueryEasyUi行编辑打造增删改查

    var $obj;$(function() { $obj = $("#configQueryGrid"); $obj.datagrid({ loadMsg : '数据加载中请稍后… ...

  2. 看了这个才发现jQuery源代码不是那么晦涩

    很多人觉得jquery.ext等一些开源js源代码 十分的晦涩,读不懂,遇到问题需要调试也很费劲.其实我个人感觉主要是有几个方面的原因: 1.对一些js不常用的语法.操作符不熟悉 2.某个functi ...

  3. OpenMediaVault的OwnCloud扩展不支持NTFS格式硬盘

    来源https://forum.openmediavault.org/index.php/Thread/15510-OwnCloud-Operation-not-supported-setfacl/ ...

  4. 问题解决-某些项目因位于工作空间目录中而被隐藏 & 如何解决java项目导入出错:与另一项目重叠

    有时候我们导入现有的工程时会出现错误,没有继续下一步的那个按钮,错误提示如下:some projects were hidden because they exist in the workspace ...

  5. jquery 中json数组的操作(转)

    在jquery中处理JSON数组的情况中遍历用到的比较多,但是用添加移除这些好像不是太多. 今天试过json[i].remove(),json.remove(i)之后都不行,看网页的DOM对象中好像J ...

  6. ceRNA 调控机制

    ceRNA 不同于mRNA, lncRNA, ncRNA 等概念,其指的既不是某一种类型的RNA(比如mRNA, lncRNA), 也不是某一类的RNA(如ncRNA); ceRNA 其实指的是不同种 ...

  7. CentOS开关机命令

    命令简介 shutdown,poweroff,reboot,halt,init都可以进行关机,大致用法. /sbin/halt     [-n] [-w] [-d] [-f] [-i] [-p] [- ...

  8. MVC中用View.bag保存json字符串。在js中使用,不用ajax请求。。。。

    有时候我们只需要使用一次json数据,这时候直接在后台查出json,然后用view.bag传到前台使用,就会很方便..(在前台用ajax请求的话,感觉有点多余..) 上代码 后台: public Ac ...

  9. 使用Java程序片段动态生成表格

    <% String[] bookName = { "javaweb典型模块大全", "java从入门到放弃", "C语言程序设计" } ...

  10. 查看 SharePoint 2013 部署到GAC的自定义dll

    在SharePoint 2007和2010中,自定义dll存放在“C:\Windows\assembly\”文件夹中,在Windows资源管理器中可以看到. 但在Sharepoint 2013中,却无 ...