我想通过12c中的rman设置运行oracle在线备份。我有3个需要运行的脚本,它们是:
rman target sys@[db_name]/[db_password] nocatalog
configure channel device type disk clear;
RUN {
ALLOCATE CHANNEL c1 DEVICE TYPE DISK FORMAT 'C:\Users\Administrator\Documents\Backup\%U';
BACKUP DATABASE PLUS ARCHIVELOG;
}
我希望能够通过c#Process
对象将它们作为单个条目运行。我想使用命令行而不是批处理文件进行模拟。
所以,我看了几个问题/答案并使用&&
尝试组合命令,但这并不是很有效。它花了前两个命令并将我连接到RMAN中心,但RUN
命令没有执行(很可能是因为脚本的那部分内的;
)。
编辑* - 实际上只运行了第一个命令。第二个没有执行。
我的问题:有没有办法可以将这3个脚本项合并为1来运行c#Process.Start()
方法?
答案 0 :(得分:0)
创建了两个不同的文件。
第一个文件是包含以下内容的批处理文件:
rman target sys@[db_name]/[db_password] runRman.rman
第二个是名为runRman.rman
的RMAN文件,其中包含:
configure channel device type disk clear;
RUN {
ALLOCATE CHANNEL c1 DEVICE TYPE DISK FORMAT 'C:\Users\Administrator\Documents\Backup\%U';
BACKUP DATABASE PLUS ARCHIVELOG;
} c#进程调用了批处理文件,后者又调用了rman文件,之后一切都为我工作。