oracle exp增量备份实验

Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP、EXPDP/IMPDP)、热备份和冷备份。

导出备件是一种逻辑备份,冷备份和热备份是物理备份。

exp支持增量备份,而expdp不支持增量备份。

exp/imp增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。

在进行此种导出时,系统不要求回答任何问题。

导出文件名缺省为export.dmp

,如果不希望自己的输出文件定名为

export.dmp,必须在命令行中指出要用的文件名。

增量导出包括三种类型: 完全备份,累积备份,增量备份。

执行增量备份必须满足下列条件:

1.只对完整数据库备份有效,且第一次需要full=y参数,以后需要inctype=incremental参数。

2. 用户必须有EXP_FULL_DATABASE的系统角色。

下面简单三种备份的用法以及区别:

1,完全备份:顾名思义,导出整个数据库所有数据

exp system/oracle inctype=complete file=full.dmp log=full.log

2,累积备份:导出上次“完全备份”后数据库变化的信息

exp system/oracle inctype=cumulative file=cumulative_1.dmp log=sys_cumulative_1.log

3,增量备份:备份上次“备份”后变化的信息

exp system/oracle inctype=incremental file=sys_cumulative_3.dmp log=sys_cumulative_3.log

例如我设置一个oracle备份策略:

周六:完全备份

周日:增量备份

周一:增量备份

周二:增量备份

周三:累积备份

周四:增量备份

周五:增量备份

那么当周六我的数据库被破坏了(备份之前),恢复数据库的流程呢,那就是:

第一,用命令CREATE DATABASE重新生成数据库结构。

第二,创建一个足够大的附加回段。

第三,完全备份导入(周六)

imp system/oracle inctype=RESTORE FULL=y FILE=周六完全备份文件

第四,累积备份导入(周三)

impsystem/oracle inctype=RESTORE FULL=y FILE=周三累积备份文件

第五,增量备份导入(周四)

impsystem/oracle inctype=RESTORE FULL=y FILE=周四累积备份文件

第六,增量备份导入(周五)

impsystem/oracle inctype=RESTORE FULL=y FILE=周五累积备份文件

注意:使用这种方式对oracle数据库进行备份的,有一个弊端,就是最后一次备份到数据库宕机前的数据会丢失。

--下面给大家附上一段博主自己写的完全备份策略脚本,累积备份和增量备份修改部分参数后即可:

#!/bin/bash

#oracle数据库备份用脚本,该脚本对全库进行备份,每周六1:00执行

##############################

##author-------***###

##############################

if [ -f ~/.bash_profile ]; then

. ~/.bash_profile

fi

set -e

last_day=`date -d "-7 day" +%Y%m%d`

#上次数据备份时间

stime=`date +%s`

echo `date +"%F %T"`################### 全库备份开始##################

cd /mnt/sd02/oracle_bak_68/

#备份数据存放目录

/data/app/oracle/product/11.2.0/dbhome_1/bin/exp system/oracle inctype=complete

file=sys_all_`date +%Y%m%d`.dmp log=sys_all_`date +%Y%m%d`.log

#声明exp路径,有些环境下不声明在定时任务中报错找不到该命令

rm sys_all_${last_day}.dmp

rm sys_all_${last_day}.log

#删除上周完全备份文件

etime=`date +%s`

s=`echo "scale=0; ($etime - $stime)%60" | bc`

m=`echo "scale=0; ($etime - $stime)/60%60" | bc`

h=`echo "scale=0; ($etime - $stime)/60/60" | bc`

echo `date +"%F %T"`################全库备份结束#####################

echo `date +"%F %T"` end 脚本执行耗时 $h 小时 $m 分钟 $s 秒

--定时任务中备份策略设置如下:

####全库备份用脚本,每周六早上一点执行

01 01 * * 6 sh /home/oracle/zcb/oracle_all_bak.sh >>/home/oracle/zcb/log/oracle_

a

ll_`date +"\%Y\%m\%d"`.log 2>&1

####增量备份脚本,每周日,周一,周二,周四,周五 执行

00 01 * * 0 sh /home/oracle/zcb/oracle_incremental_bak.sh >>/home/oracle/zcb/log/oracle_in

cremental_`date +"\%Y\%m\%d"`.log 2>&1

00 01 * * 1 sh /home/oracle/zcb/oracle_incremental_bak.sh >>/home/oracle/zcb/log/oracle_in

cremental_`date +"\%Y\%m\%d"`.log 2>&1

00 01 * * 2 sh /home/oracle/zcb/oracle_incremental_bak.sh >>/home/oracle/zcb/log/oracle_in

cremental_`date +"\%Y\%m\%d"`.log 2>&1

00 02 * * 4 sh /home/oracle/zcb/oracle_incremental_bak.sh >>/home/oracle/zcb/log/oracle_in

cremental_`date +"\%Y\%m\%d"`.log 2>&1

00 01 * * 5 sh /home/oracle/zcb/oracle_incremental_bak.sh >>/home/oracle/zcb/log/oracle_in

cremental_`date +"\%Y\%m\%d"`.log 2>&1

####累积备份脚本,每周三执行

00 01 * * 3 sh /home/oracle/zcb/oracle_cumulative_bak.sh >>/home/oracle/zcb/log/oracle_cu

mulative_`date +"\%Y\%m\%d"`.log 2>&1

oracle备份数据exp,oracle数据库备份之exp增量备份相关推荐

  1. oracle怎么恢复删除数据库数据库文件,Oracle只有数据文件恢复数据库

    Oracle只有数据文件恢复数据库 恢复前准备工作 1备份数据文件,文件路径为%ORACLE_NOME%/oradata/xxxx(xxxx为数据库实例) 2备份ORACLE安装路径下的D:\app\ ...

  2. oracle备份数据脚本,oracle数据库自动备份脚本

    ::通过exp命令导出远程机器(192.168.2.1)上指定服务(orcl)指定用户(pmis)及密码(pmis)的数据 ::运行该脚本的机器必须安装oracle @echo off @echo [ ...

  3. exp oracle所有数据库命令,oracle数据库exp命令

    通过exp命令对Oracle数据库进行备份操作(提供两种情况的备份:备份本地,备份远程的数据库) 通过exp命令可以对Oracle数据库进行备份操作,其命令含义是:exp 用户名/密码@数据库所在ip ...

  4. oracle修改数据高性能,oracle数据库的性能调整

    oracle是一个高性能数据库软件.用户可以通过参数的调整,达到性能的优化.性能优化主要分为两部分:一是数据库管理员通过对系统参数的调整达到优化的目的,二是开发人员通过对应用程序的优化达到调整的目的. ...

  5. oracle导出数据视频教程,Oracle导入导出数据的几种方式

    oracle导入导出数据 1.导出dmp格式文件 --备份某几张表 !!!! exp smsc/smsc file=/data/oracle_bak/dmp/bakup0209_2.dmp table ...

  6. oracle导出数据视频教程,Oracle数据导入导出基本操作示例

    Oracle数据导入导出基本操作示例 数据导出 a.将数据库orcl完全导出,用户名user 密码password 导出到D:\dc.dmp中 exp user/password@orcl   fil ...

  7. oracle恢复删除数据1440,Oracle数据误删了怎么恢复

    1.最好一定要执行删除之前先备份数据,这是最安全的办法. 2.如果真的不小心误删了数据,还有最后一个办法,不过不一定能成功,下面是从网上找的方法,我是执行delete误删的,发现可以,其他方式没试过, ...

  8. oracle awr 数据删除,Oracle AWR 删除历史快照 说明【转自dave偶像大神】

    http://blog.csdn.net/tianlesoftware/article/details/17286523 一. AWR 概述 之前整理过一篇AWR 的说明的文档: Oracle AWR ...

  9. PostgreSQL数据库系列之六:增量备份和恢复

    [概述] 备份是恢复的前提.不发生故障时,世界很太平,但发生故障时,如果不能顺利进行恢复,那将是一场噩梦!甚至可能对于企业是致命打击,这绝对不是危言耸听! 日常的备份有效性的检查就显得尤其重要,一个无 ...

  10. mysql 备份库的shell_MySQL数据库的shell脚本自动备份

    MySQL数据库的shell脚本自动备份 经常备份数据库是一个好习惯,虽然数据库损坏或数据丢失的概率很低,但一旦发生这种事情,后悔是没用的.一般网站或应用的后台都有备份数据库的功能按钮,但需要去手工执 ...

最新文章

  1. Java入门之包装类
  2. ADO.NET 4.5中的异步与流特性
  3. java io操作_Java 的IO操作(文件的读,写操作)
  4. SQL Server扩展事件(Extended Events)-- 事件的寿命
  5. Spring mvc 请求体处理 @RequestBody
  6. JDK8新特性(八)之Stream流的map()、sorted()、distinct()、match()方法
  7. html 滚动条,菜鸟,ionic 滚动条
  8. 方法和函数有什么区别?
  9. 一位寒门博士的致谢,女友回复...
  10. 记账系统推荐金蝶精斗云_金蝶精斗云的免费财务做账软件有哪些?
  11. 整理MFC中StretchDIBits()函数
  12. SL400装WIN7后声音键无法使用的解决方法
  13. 腾讯云服务器如何安装宝塔面板?
  14. oracle中if语句用法,Oracle IF语句的使用 | 学步园
  15. 树莓派48/100 - 深入研究WS2812彩灯PIO汇编程序
  16. 深圳赛意信息 怎么样_深圳鹏程整形医院怎么样_全新整形价目表_资质
  17. 零基础编程入门先学什么
  18. Java字节码编程之非常好用的javassist
  19. 如何在Windows上测试ip和端口
  20. form-create-desniger 自定义拖拽表单

热门文章

  1. eyoucms表单令牌
  2. 免费OCR文字识别软件,识别图片文字
  3. mysql pxc gcache_MySQL高可用之PXC
  4. hbase0.95 官方文档
  5. 灰度到伪彩色的转换公式
  6. 计算机网络部分英文缩写汇总
  7. 【用C语言绘制谢尔宾斯基三角形】
  8. 基于3DGIS的智慧“云”综合产业园区建设
  9. c语言函数base,c中base的用法
  10. wps计算机一级考试提纲,2012年计算机一级考试WPSOffice考试大纲