sql - 如何为日常备份添加名称差异
问题描述
我用这段代码创建了一个备份 cmd 文件
EXPDP system/system EXCLUDE=statistics DIRECTORY=bkp_dir DUMPFILE=FULLDB.DMP LOGFILE=FULLDB.log FULL=Y
它工作得很好,但是,当我再次运行备份时,它发现文件存在并终止进程。除非我删除以前的文件或重命名它,否则它不会运行。我想在转储文件和日志文件名称中添加一些内容,从而在它们之间产生每日差异,例如系统日期、副本号或其他内容。
解决方案
该选项REUSE_DUMPFILES
指定是否覆盖预先存在的转储文件。
通常,如果您指定的转储文件名已存在,Data Pump Export 将返回错误。REUSE_DUMPFILES 参数允许您覆盖该行为并重用转储文件名。
如果您希望每天转储单独的文件名,您可以date
在 Unix/Linux 环境中使用 using 命令的变量。
DUMPFILE=FULLDB_$(date '+%Y-%m-%d').DMP
Windows 中提供了类似的技术,如果您expdp
在 Windows 环境中运行,您可以探索这些技术。
推荐阅读
- javascript - 如何在ng-if中进行均衡?(角JS)
- javascript - 在 AnimateCC 中,当我从库中添加一个按钮时,它不起作用,而是连续运行所有状态
- amazon-cloudformation - 在 cloudformation 中使用 s3 相对路径
- c# - 将位置从 3D 相机转换为 2D 相机
- macos - 在 MacOS 上通过 Pycharm 从 iterm2 打开超链接文件
- reactjs - React + Electron + react-hot-loader + react-router + webpack-dev-server
- python - 为什么用 pymysql 操作 MySQL with Class 不行,但是 contextlib 效果很好?
- unit-testing - 如果不满足先决条件,则使用 Artos 跳过测试
- c++ - 我可以将框架视为 C++ 中的类模板吗?
- javascript - 如何将 JavaScript 变量中的数据 JSON 插入数据表