本文使用exdpd进行自动备份,以德华安顾的测试环境为例。...一、设置备份目录 创建备份目录 mkdir -p /home/oracle/backup/agtest 将其设置为Oracle备份目录 create or replace directory DATA_BACKUP...#用此用户来执行备份,必须要有备份操作的权限 bakpass=agtest #执行备份的用户密码 bakdir=/home/oracle/backup #备份文件路径,需要提前创建好 bakdata...备份完成后的文件存储在/home/oracle/backup/agtest中 参考文章: * Linux下自动备份Oracle数据库并删除指定天数前的备份 三、自动备份设置 使用crontab来进行定时任务的设置...service crond status 手动启动crontab服务: service crond start 查看crontab服务是否已设置为开机启动,执行命令: ntsysv 加入开机自动启动
date=date +%Y_%m_%d #获取系统当前日期时间 days=5 #设置删除5天之前的备份文件 orsid=ip:port/sidname #Oracle数据库服务器IP、端口、SID...bakdir=/aaa/bbb/oracle_data #备份文件路径,需要提前创建好 bakdata=$orowner"_"$date.dmp #备份数据库名称 baklog=$orowner"_..."$date.log #备份执行时候生成的日志文件名称 ordatabak=$orowner"_"$date.tar.gz #最后保存的Oracle数据库备份文件 cd $bakdir #进入备份目录...mkdir -p $orowner #按需要备份的Oracle用户创建目录 cd $orowner #进入目录 #导出数据库 这里使用了exp 可以根据需要使用expdp exp $bakuser...#打包+加压 cd .. tar -cf $FILENAME.tar $FILENAME rm -rf $FILENAME gzip $FILENAME.tar exit EOF 使用crontab自动调用备份脚本
--======================= -- Oracle 热备份 --======================= Oracle 热备份是指数据库处于open状态下,对数据库的数据文件...热备是基于用户管理备份恢复的一种方式,也是除了RMAN备份之外较为常用的一种备份方式。...一、热备的过程 冻结块头-->控制SCN在备份时不发生变化 进行物理拷贝 解冻块头-->让SCN可以变化(当对SCN解冻后,系统会自动更新SCN至最新的状态) 二、基于数据库的热备 alter...SQL> select * from dual; D - X 有关Oracle的冷备份,请参考:Oracle 冷备份 九、更多参考 Oracle 冷备份 SPFILE错误导致数据库无法启动...Oracle 用户、对象权限、系统权限 Oracle 角色、配置文件 Oracle 联机重做日志文件(ONLINE LOG FILE) Oracle 控制文件(CONTROLFILE) Oracle
3、恢复定义 恢复就是发生故障后,利用已备份的数据文件或控制文件,重新建立一个完整的数据库 4、恢复分类 实例恢复:当oracle实例出现失败后,oracle自动进行的恢复 介质恢复:当存放数据库的介质出现故障时所作的恢复...type disk to '/home/oracle/oracle_bak/ctl_%F'; //设置控制文件与服务器参数文件自动备份的文件格式 说明: format: %c:备份片的拷贝数(从...backupset 3; 这里说明一下,3这个数字代表的是备份集的编号,可以在list backup命令的结果中查看 7、从自动备份中恢复表空间 如果只丢失了特定的表空间的数据文件,那么可以选择只恢复这个表空间...如果星期四需要恢复的话,只需要1+4 如果星期五需要恢复的话,只需要1+4+5 如果星期六需要恢复的话,只需要1+4+5+6 如果需要自动备份,可使用备份脚本+crontab的方式执行 执行脚本命令...、增量、累积备份的脚本,然后使用crontab自动执行即可 2、如果是使用备份脚本 备份脚本内容如下: #!
--====================== -- Oracle 冷备份 --====================== 一、冷备份 数据库在关闭状态下完成所有物理系统文件拷贝的过程,也称脱机备份...适合于非归档模式下,数据库处于一致性状态 二、步骤 首先在运行的库中得到数据库运行的所有的物理文件位置,然后在计划内关闭数据库(shutdown) 再执行拷贝物理文家到备份路径或备份设备 备份完成后立即启动数据库让其提供正常的服务.../oradata/orcl/control01.ctl /u01/app/oracle/oradata/orcl/control02.ctl --创建备份目录 SQL> ho mkdir /u01...start &script ho rm &script startup --执行tmpbak.sql SQL> @/tmp/tmpbak.sql; --执行过程及数据库启动略 --启动后查看备份的文件...缺点 备份时,数据库必须处于一致性关闭状态 只能提供到某一时间点的恢复 备份时速度比较慢,尤其是数据量大性能影响比较大 不能实现基于表和用户级别的数据恢复 五、更多参考 Oracle 备份恢复概念
今天将非常早就实现的一个Oracle数据库备份功能粘贴出来,这个功能是在大学做阶段设计时写的: import java.io.File; import java.io.IOException; /**...* Oracle数据库备份 * * @author GaoHuanjie */ public class OracleDatabaseBackup { /** * Java代码实现Oracle数据库导出...(“gaohuanjie”, “ab19890110”, “orcl”, “d:/BackupDatabase”, “oracledb”)) { System.out.println(“数据库成功备份...; } else { System.out.println(“数据库备份失败! !!”)
全量备份,备份所有 exp system/oracle@orcl buffer=1024 file=/home/oracle/backup/orcl.dmp full=y 用户备份 exp test/test...@orcl file=/home/oracle/backup/test.dmp owner=test 导出指定表 exp test/test@orcl file=/home/oracle/backup.../student.dmp tables=(student,teacher) 备份远程数据库 exp 用户名/密码@远程的IP:端口/实例 file=存放的位置:\文件名称.dmp full=y 加日志...vi /home/oracle/fullbackup.sh !...0 2 * * * sh /home/oracle/fullbackup.sh
1、备份的语句能执行 2、创建一个检单bat脚本能执行 3、把备份的语句放到bat 脚本里面 示例 @echo off echo 正在备份 Oracle 数据库,请稍等…… set expname=%date...:~0,4%%date:~5,2%%date:~8,2% expdp 用户名/密码@orcl schemas=导出的用户 directory=备份的文件夹 dumpfile=%expname%.dmp...logfile=%expname%.log 步骤 1、备份语句 确保导出的语句能够执行 expdp 用户名/密码@orcl schemas=导出的用户 directory=备份的文件夹 dumpfile...3、bat脚本添加导出语句 @echo off echo 正在备份 Oracle 数据库,请稍等…… set expname=%date:~0,4%%date:~5,2%%date:~8,2%...,expname变量赋值为当前日期 用户名:连接数据库的用户名 schemas:要导出哪个用户的数据 directory:备份的文件夹名字,可以通过下面语句查询当前可以备份到哪些目录 cmd >sqlplus
= "777" ] && echo "错误: 你必须用oracle用户执行备份脚本,且在oracle逻辑目录下" && exit 1 # #oracle变量设置 export TMP=/tmp export...#部分导出(分区表导出)备份30天的数据 cd /home/oracle/backup fun1() { expdp ami/Xnjc_201703# directory=MY_DUMP dumpfile...#由于上面写了cd /home/oracle/backup 在这里面备份的。...mv ${backtime}.zip /home/oracle/back #删除备份目录也就是oracle数据库识别到的逻辑目录的.dmp文件。(按表备份的.dmp文件比较多,29个。...已经压缩了所以删除掉) rm -rf /home/oracle/backup/* #为节约磁盘空间,删除/home/oracle/back 7天以前备份的.zip文件 find /home/oracle
支持备份数据库、表空间、数据文件、控制文件、归档日志等 可以保存频繁使用备份恢复脚本 支持增量备份,跳过未使用的块,以及控制备份速度 在备份期间侦测损坏的数据 通过自动并发、限制I/O等提高备份性能...关于数据库的日常规划请参考:Oracle 常见故障及日常规划 四、备份与恢复的几类重要数据结构 1.数据文件 2.联机重做日志文件 3.控制文件 4.自动管理的撤销 5.可选的备份文件(...参数文件、密码文件) 上述有关概念请参考:Oracle实例和Oracle数据库(Oracle体系结构) 五、常见的备份类型 联机数据库备份 -->使用archivelog模式,SCN不一致 脱机数据库备份...八、更多参考 Oracle 冷备份 SPFILE错误导致数据库无法启动 Managing Archived Redo Logs Oracle 用户、对象权限、系统权限 Oracle 角色、配置文件...Oracle 联机重做日志文件(ONLINE LOG FILE) Oracle 控制文件(CONTROLFILE) Oracle 表空间与数据文件 Oracle 归档日志
本文以CentOS 7.6系统与Oracle 11g为例: 一.先找到数据库的环境变量 如果是在root账户下,须先登录到数据库所在账户 su oracle cat ~/.bash_profile...export PATH export ORACLE_BASE=/home/nnc_db/app export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome..._1 export PATH=$PATH:$ORACLE_HOME/bin export ORACLE_SID=orcl 环境变量就已经找到了!...二.编辑备份的脚本文件 vi bak.sh 先把环境变量复制粘贴到bak.sh文件, 然后定义一个变量date(它的作用是为每天备份的文件命名便于识别),使用expdp命令导出数据库,代码如下: date...所以想要看自己的脚本是否自动运行了需要到/var/spool/mail/下看日志文件,如图
张乐奕 云和恩墨副总经理 Oracle ACE 总监 ITPUB Oracle数据库管理版版主、Oracle高可用版版主、ACOUG联合创始人 在 Oracle 10.2.0.5 之前,ASM 磁盘的头块并没有自己的备份...但是从 Oracle 10.2.0.5 之后,ASM 磁盘的头块会自动备份在另外一个块中,这实际上是 Oracle 11g 出现的功能,不过经过测试,在 Oracle 10.2.0.5 版本中,这个备份也是存在的...正是因为存在这个备份,所以 Oracle 10.2.0.5 之后的 kfed 程序才有了新的 repair 命令,该命令将备份块直接覆盖到磁盘头块,完成修复工作。...结论: 从 Oracle 10.2.0.5 开始, ASM 磁盘已经开始自动将头块进行备份,备份块的位置在第 2 个 AU 的倒数第 2 个块上(对于默认 1M 的 AU 来说,是第 510 个块),如果头块损坏...在 Oracle 12c 中,Oracle更是推出了 ASMFD 新特性,防止ASM磁盘收到意外的伤害.
=/u01/app/oracle #oracle软件的基准路径在哪 export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_home1 # export ORACLE_SID...#以上代码为Oracle数据库运行账号oracle的系统环境变量设置,必须添加,否则crontab任务计划不能执行。...# oracle用户的系统环境变量路径:/home/oracle/.bash_profile #获取系统当前日期时间 date=`date +%Y_%m_%d` #设置删除7天之前的备份文件 day...=7 #备份此用户下面的数据 ouser=ami #用此用户来执行备份,必须要有备份操作的权限 user=ami #执行备份的用户密码 passwd=ami #逻辑目录 directory...=MY_DUMP #备份文件路径,需要提前创建好 bakdir=/home/oracle/backup #备份执行时候生成的dmp文件名称 bakdata=$ouser"_"$date.dmp
在进行生产服务器升级、或更换数据库服务器、搭建测试环境时,需要对生产数据库进行备份以及将来可能的还原。...3.exp导出 与expdp导出相比,备份速度很慢,但是有一个优点,不要求在服务器主机执行命令,客户端能执行命令。...fromuser是源数据库用户 touser是目标数据库用户 5.plsql工具备份 用户登录---》工具---》导出用户对象,在弹出的页面,选项数据库用户、输出文件的目录,点击导出按钮,将导出用户的表结构
username/password@数据库名 fromuser=’CLSOFT’ touser=’clsoftoa’ file=’D:\clsoft_2012-06-26_17.dmp’ –备份数据库文件的路径...clsoft_2012-06-26_17.dmp.log’ ignore=y buffer=100000000 导出: exp userid=clsoft/clweiye@orcl –要备份的数据库的...username/password@数据库名 file=clerp20100711.dmp –备份文件名称字定义。
首先把Oracle备份文件传到目标端,解压,如下所示是每天的备份,其中20190816是0级别的差异增量备份 ,其余的都是1级的差异增量备份。...298 Aug 18 18:44 20190818 1.恢复参数文件(参数文件会在自动备份控制文件的时候进行备份) RMAN>restore spfile from '/data/backup/oracle.../backup/oracle'; 3.2具体恢复,基于时间的恢复,选择一个比较大的时间,就是肯定在备份时间之后的时间!...如果你还有更多的 归档日志,可以把日志传输到目的端,然后再进行前面的步骤三,至于到底需要传那几个归档,需要你来判断,就是说只要包含最近一次备份完成后的那个点(scn)即可,然后都是oracle自动去识别哪些是需要应用的...: RMAN> catalog start with '/data/backup/oracle'; 具体恢复,基于时间的恢复,选择一个比较大的时间,就是肯定在备份时间之后的时间!
我们一起来回顾Oracle的物理备份,本文摘自《循序渐进Oracle》 逻辑备份:Oracle的逻辑备份与恢复 正文: 物理备份是指针对Oracle的文件进行的备份,这与逻辑备份针对数据的备份不同。...3、定制自适应的热备份脚本 由于数据库经常处于变化之中,如表空间文件的增减、新表空间的创建等,所以热备份的脚本不能一成不变,如果想让备份充分的自动化,必须定制自适应的备份脚本。...,否则执行归档日志备份,全备份由脚本genbaksql.sh调用并执行,这个脚本就是根据数据库信息自动生成自适应备份脚本的过程,shell脚本包含一系列的SQL*Plus执行SQL,执行过程通过spool...4.Oracle10g的增强 在Oracle 10g中,Oracle新增命令用以简化用户管理的备份,现在可以通过alter databasebegin/end backup来进行数据库备份模式的切换,...因为我们拥有最新的控制文件以及所有的归档及在线日志文件,所以可以简单地通过一条命令执行恢复,在恢复过程中,Oracle会提示归档文件,可以输入Auto让Oracle自动执行恢复: SQL> recover
当用户进程出现故障时,进程监控程序(PMON)会自动执行进程恢复。PMON是oracle的后台进程,用于检测与用户进程失去连接的服务器进程。...当重新启动数据库时,如果发现实例故障,oracle会自动完成实例恢复。实例恢复将数据库恢复到与故障之前的事务一致的状态,oracle会自动回滚未提交的数据。...1、实例恢复:当oracle实例出现失败后,oracle自动进行的恢复。 2、介质恢复:当存放数据库的介质出现故障时所做的恢复。介质恢复又分为完全恢复和不完全恢复。...RMAN [oracle@oracle local]$ rman catalog zhangsan/pwd123 target / RMAN> register database; 自动备份分配通道 RMAN...> configure device type disk parallelism 5; RMAN> configure default device type to disk; 手动备份分配通道(手动和自动二者选一即可
RMAN库由与备份相关的元数据组成。这包括已备份的内容、备份文件和位置、存在哪些归档日志文件、已有的永久配置设置,以及RMAN理解数据库和备份,以完全自动执行还原和恢复操作所需的所有细节。...CONTROLFILE AUTOBACKUP OFF 禁止RMAN自动备份控制文件,作为其他备份操作的一部分。 AUTOBACKUP FORMAT 为控制文件的自动备份生成名称和位置。...ARCHIVELOG DELETION POLICY 允许RMAN根据各种条件,自动删除不再需要的归档日志。...如果使用快速恢复区,且新备份需要磁盘空间,则不需要支持这个恢复窗口的任何备份都标记为OBSOLETE,并由RMAN自动删除。 相反,冗余策略告诉RMAN保留特定数量的备份。...超过冗余策略中的指定的数字的任何额外副本或备份都标记为OBSOLETE。与恢复窗口一样,如果需要磁盘空间,使用了快速恢复区,则过时的备份会自动删除。
Oracle RMAN备份一例: Solaris 10 + Oracle 11.2.0.3 Shell:csh,安装有bash,脚本调用bash 备份策略:周日0级备份,周一~周六1级备份,每6小时备份归档日志...,每天清理历史文件夹. --0级备份脚本: #!...=/opt/app/oracle/ export ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1/ export ORACLE_SID=SHIRNOP...=/opt/app/oracle/ export ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1/ export ORACLE_SID=SHIRNOP...=/opt/app/oracle/ export ORACLE_HOME=/opt/app/oracle/product/11.2.0/dbhome_1/ export ORACLE_SID=SHIRNOP
领取专属 10元无门槛券
手把手带您无忧上云