首页 > 解决方案 > 如何为日常备份添加名称差异

问题描述

我用这段代码创建了一个备份 cmd 文件

EXPDP system/system EXCLUDE=statistics DIRECTORY=bkp_dir DUMPFILE=FULLDB.DMP LOGFILE=FULLDB.log FULL=Y

它工作得很好,但是,当我再次运行备份时,它发现文件存在并终止进程。除非我删除以前的文件或重命名它,否则它不会运行。我想在转储文件和日志文件名称中添加一些内容,从而在它们之间产生每日差异,例如系统日期、副本号或其他内容。

标签: sqloracleexpdp

解决方案


该选项REUSE_DUMPFILES指定是否覆盖预先存在的转储文件。

通常,如果您指定的转储文件名已存在,Data Pump Export 将返回错误。REUSE_DUMPFILES 参数允许您覆盖该行为并重用转储文件名。

如果您希望每天转储单独的文件名,您可以date在 Unix/Linux 环境中使用 using 命令的变量。

DUMPFILE=FULLDB_$(date '+%Y-%m-%d').DMP 

Windows 中提供了类似的技术,如果您expdp在 Windows 环境中运行,您可以探索这些技术。


推荐阅读