`
liwenshui322
  • 浏览: 518942 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

(转)oracle自动备份

阅读更多

个人建议用第五种方法

 

Oracle 自动备份
建议一:
利用任务计划、批处理文件和ORACLE的EXP导出功能,可以根据日期自动生成ORACLE备份文件,大大方便了ORACLE数据备份。:
1,批处理文件backup.bat\.
exp system/manager file=d:\backup\oracle\oracle%date:~0,10%.dmp owner=system log=d:\backup\oracle\oracle%date:~0,10%.log
将生成oracle2006-01-09.dmp文件
exp system/manager file=d:\backup\oracle\oracle%date:~11,3%.dmp owner=system log=d:\backup\oracle\oracle%date:~11,3%.log
将生成oracle星期一.dmp文件,则每周循环保留一个备份文件,共7个备份文件循环
2,添加一个任务计划
利用任务计划向导,根据备份策略设置自动执行任务的时间频率(例如每天零时),执行d:\oracle\backup.bat
3、以后每天将在目录中生成形如“oracle2005-08-31.dmp和oracle2005-08-31.log”的备份和日志文件。
说明:
1、%date%的值在不同的系统、语言版本下可能是不一样的,控制面板里面区域选项的设定也会改变%date%的值。请先在命令行中测试 echo %date% 的返回值。%date:~4,10% 是返回日期函数,~后的第一个参数是要截取的起始位置(从0开始),第二个参数是要截取的长度,如没有则是截取到最后,参数可酌情修改。
2、如需要准确的时间做为文件名,请用%time%函数,参数同上。

建议二:
@echo off
set filename=e:\data_bak\%date:~8,2%日
exp userid=user/pass@esdata file=%filename%.dmp owner=user INDEXES=y grants=y constraints=y compress=y log=%filename%.log
rar a %filename%.rar %filename%.*
del %filename%.dmp
del %filename%.log
放计划任务里面定时执行,
文件名以日期的day部分来命名
备份后调用rar进行压缩
这样可以保存一个月的历史数据
注意:需要把program files/winrar目录下的rar.exe拷贝到系统system32目录下
如果是以星期命名,则需要将set filename=e:\data_bak\%date:~8,2%日修改为
set filename=e:\data_bak\%date:~0,3%

建议三:
以下为ORACLE 自动备份批处理文件内容,请配合任务计划实现

@ECHO OFF
SET BACKPATH=d:\
ECHO 准备备份数据库
REM 7天一个循环
IF EXIST %BACKPATH%\ONE GOTO ONE
IF EXIST %BACKPATH%\TWO GOTO TWO
IF EXIST %BACKPATH%\THREE GOTO THREE
IF EXIST %BACKPATH%\FOUR GOTO FOUR
IF EXIST %BACKPATH%\FIVE GOTO FIVE
IF EXIST %BACKPATH%\SIX GOTO SIX
IF EXIST %BACKPATH%\SEVEN GOTO SEVEN
ECHO E > %BACKPATH%\ONE
:ONE
SET BACKPATH_FULL=%BACKPATH%\ONE
REN %BACKPATH%\ONE TWO
GOTO BACK
:TWO
SET BACKPATH_FULL=%BACKPATH%\TWO
REN %BACKPATH%\TWO THREE
GOTO BACK
:THREE
SET BACKPATH_FULL=%BACKPATH%\THREE
REN %BACKPATH%\THREE FOUR
GOTO BACK
:FOUR
SET BACKPATH_FULL=%BACKPATH%\FOUR
REN %BACKPATH%\FOUR FIVE
GOTO BACK
:FIVE
SET BACKPATH_FULL=%BACKPATH%\FIVE
REN %BACKPATH%\FIVE SIX
GOTO BACK
:SIX
SET BACKPATH_FULL=%BACKPATH%\SIX
REN %BACKPATH%\SIX SEVEN
GOTO BACK
:SEVEN
SET BACKPATH_FULL=%BACKPATH%\SEVEN
REN %BACKPATH%\SEVEN ONE
GOTO BACK
:BACK
EXP TESTUSER/TEST FILE=%BACKPATH_FULL%.DMP
SET BACKPATH=
SET BACKPATH_FULL=
EXIT


建议四:
RMAN TARGET=RMAN/RMAN@ORCL < C:\RMAN.TXT


建议五:
在文本里编辑cmd命令。然后保存成bat文件。在windows中定义任务计划,就
可以自动执行了。
例:
编辑文本文件
del c:\exp\*.dmp
exp userid=cw/cw@db file='c:\exp\*.dmp' tables=(student)
保存成bat文件


建议六:
写个简单的批处理文件备份恢复:
备份:
@echo off            不显示命令行
    
echo 开始备份表.....       打印信息               
D: DOS切换到D: 盘
cd oracle\ora92\bin       切换到cd oracle\ora92\bin目录
exp 用户名/密码@数据库 file=d:\config_bak.dmp tables=(table1,table2) 备份表一表二到d:\config_bak.dmp
echo 备份完毕!
恢复:
@echo off           
    
echo 开始恢复表.....                     
D:
cd oracle\ora92\bin
imp 用户名/密码@数据库 file=d:\config_bak.dmp tables=(table1,table2) ignore=y
sqlplus /nolog @oraStartup.sql>>oraStartup.log 调用sql文件
pause 执行完sql文件以后暂停,看信息
echo 恢复完毕!
编写oraStartup.sql
conn 用户名/密码@数据库 as sysdba
select * from table1;
quit;
      
      

 执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,
  DOS中可以执行时由于 在oracle 8i 中 安装目录\ora81\BIN被设置为全局路径,
  该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。
  oracle用java编写,我想SQLPLUS.EXE、EXP.EXE、IMP.EXE这俩个文件是被包装后的类文件。
  SQLPLUS.EXE调用EXP.EXE、IMP.EXE他们所包裹的类,完成导入导出功能。
  下面介绍的是导入导出的实例,向导入导出看实例基本上就可以完成,因为导入导出很简单。
  数据导出:
  1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中
  exp system/manager@TEST file=d:\daochu.dmp full=y
  2 将数据库中system用户与sys用户的表导出
  exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)
  3 将数据库中的表table1 、table2导出
  exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2)
  4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
  exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"
  
  上面是常用的导出,对于压缩我不太在意,用winzip把dmp文件可以很好的压缩。
  不过在上面命令后面 加上 compress=y 就可以了
  数据的导入
  1 将D:\daochu.dmp 中的数据导入 TEST数据库中。
  imp system/manager@TEST file=d:\daochu.dmp
  上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
  在后面加上 ignore=y 就可以了。
  2 将d:\daochu.dmp中的表table1 导入
  imp system/manager@TEST file=d:\daochu.dmp tables=(table1)
导入
  基本上上面的导入导出够用了。不少情况我是将表彻底删除,然后导入。

分享到:
评论

相关推荐

    oracle自动备份脚本

    本文将围绕“Oracle自动备份脚本”这一主题,深入探讨如何利用脚本实现Oracle数据库的自动备份,确保数据的安全与可恢复性。 ### Oracle自动备份脚本的重要性 在日常运营中,数据的丢失或损坏可能对企业造成不可...

    oracle自动备份工具

    Oracle自动备份工具是一款专为Oracle数据库设计的实用备份解决方案,尤其适合那些希望简化数据库备份流程的用户。该工具依赖于.NET Framework 2.0运行环境,确保了在各种Windows操作系统上的兼容性和稳定性。 ...

    oracle数据备份工具,主要对oracle数据库进行自动备份

    oracle数据备份工具,主要对oracle数据库进行自动备份

    oracle数据库自动备份脚本

    功能说明: 备份oracle数据库,并压缩打包,传至远程FTP服务器,做到本地异地同时备份,可自动清理本地过期备份,自动保留N个最新备份(针对此种备份,不针对文件夹),老的备份自动删除,将此文件加入系统任务计划,...

    ORACLE数据库自动备份3种方法

    ### ORACLE数据库自动备份3种方法详解 #### 一、概述 在企业级应用中,数据库的安全性至关重要,定期进行数据库备份是确保数据安全的重要措施之一。对于Oracle数据库而言,实现自动化的数据库备份不仅可以提高效率...

    oracle自动备份、Oracle远程备份

    标题中的“Oracle自动备份、Oracle远程备份”涉及的是Oracle数据库管理中的两个重要概念:自动备份策略和远程备份方法。在Oracle数据库系统中,定期备份是确保数据安全和高可用性的重要措施,而远程备份则提供了额外...

    Oracle自动备份客户端

    Oracle自动备份客户端是一款专为管理Oracle数据库备份设计的工具,它提供了自动化和手动两种备份模式,以满足不同用户的需求。在数据库管理中,备份是确保数据安全和业务连续性的重要环节,尤其对于Oracle这样的大型...

    oracle自动备份

    "Oracle自动备份"的主题聚焦在如何实现Oracle数据库的自动化备份,确保在出现故障或需要恢复数据时,可以快速有效地进行操作。 首先,Oracle数据库提供了多种备份方法,包括物理备份(如文件拷贝)和逻辑备份(如...

    Oracle自动备份数据库.rar

    本资源"Oracle自动备份数据库.rar"提供了在Windows XP、7、10操作系统环境下,针对Oracle 10g和11g版本的数据库自动备份方案,允许用户自定义备份文件的存储目录和名称,从而实现高效且定制化的备份策略。...

    oracle数据库自动备份上传至FTP服务器

    "oracle数据库自动备份上传至FTP服务器" Oracle 数据库自动备份上传至 FTP 服务器是指通过 Shell 脚本来实现对 Oracle 数据库的自动备份,并将备份文件上传至 FTP 服务器上,以防服务器出现故障,导致数据库无法...

    oracle自动备份数据库

    自动备份oracle数据库,可添加windows任务,每天按时自动备份数据库

    Oracle数据库自动备份脚本FOR WIN.rar

    "Oracle数据库自动备份脚本FOR WIN.rar" 是一个针对Windows环境设计的自动化备份解决方案,它使得Oracle数据库的备份过程更加简便和可靠。 这个脚本主要有以下三个特点: 1. **动态日期命名**:备份导出文件时,...

    oracle自动备份_(超方便)

    "Oracle自动备份_(超方便)"这一主题旨在介绍如何在Oracle环境中设置和管理自动备份,以确保数据的安全性和业务连续性。 一、Oracle自动备份的重要性 Oracle数据库中存储的数据通常包含关键业务信息,任何数据丢失...

    Oracle 自动备份

    在本文中,我们将深入探讨Oracle自动备份工具的使用,以及如何在系统中安装Oracle客户端。 首先,让我们了解Oracle客户端。Oracle客户端是与Oracle服务器进行通信的软件组件,它包含了连接数据库所需的库、实用工具...

    Linux oracle 自动备份脚本

    ### Linux Oracle自动备份脚本详解 #### 背景与目的 在企业级数据库管理中,数据的安全性和可靠性至关重要。Oracle作为一款广泛使用的数据库管理系统,其数据备份的重要性不言而喻。通过设置自动化的备份机制可以...

    Oracle 自动备份 v1.025 国际版

    Oracle 自动备份工具是一款专为Oracle数据库设计的实用程序,旨在简化数据库的备份与恢复过程。这个v1.025国际版是针对全球用户的一个版本,具备多语言支持,以便不同地区的用户都能方便地使用。它是一个独立的应用...

    Oracle自动备份压缩

    ### Oracle自动备份压缩详解 在IT领域,数据库的管理和维护是一项至关重要的工作,尤其是在数据安全性和性能优化方面。Oracle数据库作为全球领先的数据库管理系统之一,其数据的定期备份是确保业务连续性和数据恢复...

Global site tag (gtag.js) - Google Analytics