oracle自动备份方法,Oracle自动备份方法详解

Windows环境

写一个批处理文件oracle.bat,加到任务计划中,文件名根据时间自动命名,注意以下命令必须保持在一行内,内容如下:

exp user/pass@name buffer=4096000 file=D:\backup\backup%date:~12,13%.DMP log=D:\backup\backup%date:~12,13%.log

全局数据库导出只需加参数full=y

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

exp参数:

关键字  说明(默认)

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

USERID  用户名/口令

FULL  导出整个文件 (N)

BUFFER  数据缓冲区的大小

OWNER  所有者用户名列表

FILE  输出文件 (EXPDAT.DMP)

TABLES  表名列表

COMPRESS 导入一个范围 (Y)

RECORDLENGTH IO 记录的长度

GRANTS  导出权限 (Y)

INCTYPE  增量导出类型

INDEXES  导出索引 (Y)

RECORD  跟踪增量导出 (Y)

ROWS  导出数据行 (Y)

PARFILE  参数文件名

CONSTRAINTS 导出限制 (Y)

CONSISTENT 交叉表一致性

LOG  屏幕输出的日志文件

STATISTICS 分析对象 (ESTIMATE)

DIRECT  直接路径 (N)

TRIGGERS 导出触发器 (Y)

FEEDBACK 显示每 x 行 (0) 的进度

FILESIZE 各转储文件的最大尺寸

QUERY  选定导出表子集的子句

imp参数:

关键字  说明(默认)

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

USERID  用户名/口令

FULL  导入整个文件 (N)

BUFFER  数据缓冲区大小

FROMUSER 所有人用户名列表

FILE  输入文件 (EXPDAT.DMP)

TOUSER  用户名列表

SHOW  只列出文件内容 (N)

TABLES  表名列表

IGNORE  忽略创建错误 (N)

RECORDLENGTH IO 记录的长度

GRANTS  导入权限 (Y)

INCTYPE  增量导入类型

INDEXES  导入索引 (Y)

COMMIT  提交数组插入 (N)

ROWS  导入数据行 (Y)

PARFILE  参数文件名

LOG  屏幕输出的日志文件

CONSTRAINTS 导入限制 (Y)

DESTROY  覆盖表空间数据文件 (N)

INDEXFILE 将表/索引信息写入指定的文件

SKIP_UNUSABLE_INDEXES 跳过不可用索引的维护 (N)

ANALYZE  执行转储文件中的 ANALYZE 语句 (Y)

FEEDBACK 显示每 x 行 (0) 的进度

TOID_NOVALIDATE 跳过指定类型 id 的校验

FILESIZE 各转储文件的最大尺寸

RECALCULATE_STATISTICS 重新计算统计值 (N)

Quote

回复:Oracle自动备份

请教,怎么设置才能是导出的文件名,如backup20051019.dmp

谢谢

自动加日期时间的批处理文件内容如下:

if "%time:~0,1%"==" " (set backup_file=%date:~4,4%%date:~9,2%%date:~12,2%-0%time:~1,1%) else (set backup_file=%date:~4,4%%date:~9,2%%date:~12,2%-%time:~0,2%)

exp your_usrename/your_password@your_sid file=%backup_file%.dmp log=%backup_file%.log

备份后会生成如下的格式20051020-09.DMP,09是备份时的小时,前面是日期。

还可以将备份后的文件压缩打包,并且删除多余的文件。

步骤:

1.安装Winrar,3.0以上版本都可以,安装完毕后找到安装目录,把安装目录里面的Rar.exe 复制到批处理文件所在的文件夹。

2.在批处理文件内容下面加入:

rar a %backup_file%.rar *.dmp *.log

del *.dmp

del *.log

即可。

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

另:备份后自动打包完整的文件:

if "%time:~0,1%"==" " (set backup_file=%date:~4,4%%date:~9,2%%date:~12,2%-0%time:~1,1%) else (set backup_file=%date:~4,4%%date:~9,2%%date:~12,2%-%time:~0,2%)

exp your_usrename/your_password@your_sid file=D:\Backup\%backup_file%.dmp log=D:\Backup\%backup_file%.log

rar a D:\Backup\%backup_file%.rar D:\Backup\*.dmp D:\Backup\*.log

del D:\Backup\*.dmp

del D:\Backup\*.log

自动备份到D:\Backup\目录下

另:WinXP 下的时间处理

if "%time:~0,1%"==" " (set backup_file=%date:~0,4%%date:~5,2%%date:~8,2%-0%time:~1,1%%time:~3,2%%time:~6,2%) else (set backup_file=%date:~0,4%%date:~5,2%%date:~8,2%-%time:~0,2%%time:~3,2%%time:~6,2%)


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部