Recovery Manager(RMAN)是Oracle的一种可用于备份和恢复Oracle数据库的工具。该软件在管理服务器上运行,并通过网络与目标数据库或服务器进行通信,以管理持续备份数据的过程。
可以使用rman命令访问RMAN命令行,该命令为用户提供了一系列备份或恢复命令的输入命令提示符。通常,备份数据库的过程包括连接到要备份的数据库,然后指定所需备份类型的命令。
RMAN命令可以用脚本编写。 Oracle备份脚本通过将一系列RMAN命令输入到文本文件中,并在rman提示符处引用文件名称,或者使用文本文件作为由@符号进行的RMAN命令的参数来实现:rman @ backupscript.cmd 。然后按顺序执行每个命令。
运行这样的命令是相当简单的,特别是当数据库名称或其他变量被硬编码到脚本文件中时。硬编码不能为使用相同的Oracle备份脚本提供多种用途的灵活性,例如针对一组数据库运行。
另一种选择是使用USING参数将变量传递给脚本文件。在这种情况下,传递的每个参数在命令文件中被引用为&1 - &n,其中n是传递的参数数:rman @ backupscript.cmd USING“db_prod”。
将参数传递给Oracle备份脚本意味着单个脚本可以支持许多数据库实例,这意味着它具有较小的管理开销。可以通过使用CHECKSYNTAX参数运行RMAN来检查RMAN脚本的语法。
这允许在不实际执行命令的情况下验证文件的语法。 开发Oracle备份脚本的***方式是通过探索测试数据库上的命令集。这可以用于验证文件语法和测试备份和恢复工作流。
使用测试环境获得信心后,通过将目标数据库作为在执行脚本时发生更改的变量,可以轻松地将脚本移植到生产环境中。将整个过程包装在一个shell脚本中,可以更好的灵活地传递变量,并使用像CRON这样的工具来调度脚本。