Topic: Oracle自动备份详细步骤

ERP俱乐部

第 1 页 总共 1 页 [共有 1 条记录]


Posted by weilm on 2012-09-28 11:37 上午

背景:Oracle10g 服务器,Oracle10g 客户端,windowsXP 操作平台

要求:Oracle 数据库服务器对数据库 ytcn 每天自动备份一次。 

  解决方案:利用任务计划、批处理文件和 Oracle 的 exp 导出功能,根据日期自动生成 Oracle 备份文件。

详细步骤:   1 创建批处理文件 ytcn.bat  

ytcn.bat中详细内容如下:  

 exp ytcn/ytcn file=C:\test\ntsmsall_bak_%date:~0,10%-%time:~0,2%-%time:~3,2%.dmp log=C:\test\ntsmsall_log_%date:~0,10%-%time:~0,2%-%time:~3,2%.log owner=ntsmsall
exit

  其部分是根据需要进行变动的地方,例如作者的项目名“银通网”,数据库 ytcn 用户名 ytcn,密码 ytcn,要在目录 "e:/bak/ytcn/oracle/" 下生成形如 "ytcn20090711.dmp" 和 "ytcn20090711.log" 的备份和日志文件,全表导出。   另外:%date%的值在不同的系统、语言版本下可能是不一样的,控制面板里面区域选项的设定也会改变%date% 的值。请先在命令行中测试echo %date% 的返回值。%date:~4,10% 是返回日期函数,~后的第一个参数是要截取的起始位置(从0开始),第二个参数是要截取的长度,如没有则是截取到最后,参数可酌情修改。如需要准确的时间 做为文件名,请用%time%函数,参数同上。 

  2 添加一个任务计划 ytcn   开始 >所有程序 >附件 >系统工具 >任务计划 >添加任务计划 >下一步 >在 浏览中查找刚刚写好的 ytcn.bat 文件 >任务名输入ytcn,执行这个任务选择每天,下一步 >起始时间下午12:00,起始日期2009-7-11,下一步 >输入用户名及密码,用户名要求是管理员权限用户名,下一步 >完成   点击"完成"之后,会在任务计划栏目下新增一个名为"ytcn"的任务计划,表明已经配置完毕。   备注:有时点击"完成" 之后,系统警告   "已创建新任务,但可能不能运行,因为无法设置账户信息。       

   指定的错误:

Ox80041315:任务计划程序服务没有运行"   这是因为电脑的任务计划程序服务没有启动起来。开始 >所有程序 >管理工具 >服务,找到"Task Scheduler"服务,发现启动类型为"已禁用",右键单击更改为"自动",并把它启动起来,然后重新添加一次任务计划 ytcn 就可以了。

我的使用:

从数据库系统C:\Program Files\WinRAR中拷贝Rar.exe文件到 C:\WINDOWS\system32中

set filename=C:\DataBack\%date:~0,10%
exp ntsmsall/goldpalm file=%filename%.dmp log=%filename%.log owner=ntsmsall
rar a -df %filename%.zip %filename%.dmp %filename%.log

set一个路径,开始导出数据库,压缩文件,并使用 df 命令删除源文件。