起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 228|回复: 11

[请求]求助,ORACLE 9i的自动定时备份问题? **

[复制链接]
发表于 2005-9-8 11:41:56 | 显示全部楼层 |阅读模式
我们以前的系统一直基于sql server,现在使用oracle 9i。
倒是没有其它问题,就是数据库的自动定时备份问题有些麻烦。
主要是由于我们第一次接触oracle,对他的自动备份机制很不熟悉,看了一些手册也是有些模糊,希望这里的高手帮忙。

我想实现这样的机制:
每天上午9点钟到晚上9点钟,每隔3小时备份一次,要求备份当前系统的全部数据。而且每次备份的文件都独立存放,不能覆盖。但可以删除1周以前的备份文件。
如果系统出现问题或开发当中做了误操作,那么应该能够使用备份文件完全完整的恢复到备份文件当时的状态。

而且,最后给用户安装的时候,我们也想用这种方式。

上述机制在sql server中很容易实现,但在oracle中好像很麻烦。
请大家帮忙,谢了!
回复

使用道具 举报

发表于 2005-9-8 14:20:07 | 显示全部楼层
用ORACLE的快照(SNAPSHOT)功能吧。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-8 15:16:22 | 显示全部楼层
快照可以完成完整备份?以后也可以正常恢复?可以定时快照?
回复 支持 反对

使用道具 举报

发表于 2005-9-8 17:41:09 | 显示全部楼层
快照是针对表的,用日志来保持两个数据库中相同表的数据完全同步(当然,是非实时的,看定时的长短)。
如果完整备份就会比较麻烦,要对每张表建立快照。
可以考虑双机热备份,ORACLE自己的(很贵、但切换到备份机很快,标称1分钟),或第三方的,可能还会涉及一些硬件投资。
回复 支持 反对

使用道具 举报

发表于 2005-9-8 17:42:57 | 显示全部楼层
最简单的,在windows计划任务里加一个计划,每3小时运行一个批处理(删过时备份、EXP一个新备份……),但恢复就要手工干涉了。

如果是LINUX、UNIX就用at启动一个任务……
回复 支持 反对

使用道具 举报

发表于 2005-9-8 17:47:42 | 显示全部楼层
送你一个老早以前写的定时备份程序。

OracleBackup.rar

1.42 MB, 下载次数: 73

回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-8 17:50:53 | 显示全部楼层
你说得我还是不明白,我只想实现类似于sqlserver那样的自动备份机制,简单有效。其主要目的不是为了用户的数据安全,而是为了避免在开发的时候出现误操作或系统错误而导致开发工作报废。也就是说,我们每天的开发成果都应该有备份,以避免以后出现错误不能恢复。就是这么简单的目的。
开发阶段暂不考虑诸如热备等复杂的备份手段。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-9 09:09:00 | 显示全部楼层
谢了,你的那个程序我有空测试一下。
回复 支持 反对

使用道具 举报

发表于 2005-9-9 09:10:01 | 显示全部楼层
非常感谢  henry  的答复,这样才是论坛开发的效果,大家相互交流技术、交流经验,希望有更多的人参与进来,有空来坐坐 :gatherin:   :drunk:
回复 支持 反对

使用道具 举报

发表于 2005-9-9 11:31:02 | 显示全部楼层
最初由 geforceee 发布
[B]你说得我还是不明白,我只想实现类似于sqlserver那样的自动备份机制,简单有效。其主要目的不是为了用户的数据安全,而是为了避免在开发的时候出现误操作或系统错误而导致?..

以下省略...... [/B]


这样的话,用我的程序就可以应付了 :afro:
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-20 23:51 , Processed in 0.044227 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表