超实用的Oracle数据库自动备份脚本

数据库 Oracle
数据是应用的核心部分,程序坏了换台机器重新发布就可以,但数据一旦丢失,造成的损失将不可挽回,程序发布到生产后,数据的备份便显得尤为重要,由于不一定所有的服务均有资金完成高级的备份如RAC和DG,在我们只有一台数据库服务器的,暂时采取最简单的备份策略,export出dmp进行保存。

概述

数据是应用的核心部分,程序坏了换台机器重新发布就可以,但数据一旦丢失,造成的损失将不可挽回,程序发布到生产后,数据的备份便显得尤为重要,由于不一定所有的服务均有资金完成高级的备份如RAC和DG,在我们只有一台数据库服务器的,暂时采取最简单的备份策略,export出dmp进行保存。

一、备份脚本

1、初始化变量,记录开始日志

  1. #变量  
  2. sysname=填写自己的系统名称  
  3. syspath=/home/oracle/databak/$sysname  
  4. v_date=$(date '+%Y%m%d%H%M%S')  
  5. #日志目录  
  6. logfile=${syspath}/backup.${v_date}.log  
  7. #打印开始时间  
  8. echo backup_time>>${logfile}  
  9. date '+%Y-%m-%d %H:%M:%S' >> ${logfile}  
  10. echo "backup jcd">>${logfile}  
  11. echo "start_time">>${logfile}  
  12. date '+%Y-%m-%d %H:%M:%S' >> ${logfile} 

2、进入oracle目录,设置oracle的参数

  1. #进入oracle目录,设置oracle变量  
  2. cd /home/11g/app/oracle/product/11.2.0  
  3. export ORACLE_HOME=/home/11g/app/oracle/product/11.2.0/db_1  
  4. export PATH=$PATH:/home/11g/app/oracle/product/11.2.0/db_1/bin  
  5. export ORACLE_SID=SID名称 

3、导出数据

  1. echo $syspath  
  2. v_date=$(date '+%Y%m%d%H%M%S')  
  3. filename=$syspath/jcd${v_date}.dmp  
  4. #导出命令  
  5. exp username/password file=${filename} compress=n >> ${logfile}  
  6. echo "end_time">>${logfile}  
  7. date '+%Y-%m-%d %H:%M:%S'>>${logfile} 

4、压缩dump包

  1. gzip ${filename} 

5、使用scp,将压缩后的包传递到备份服务器,注意备份服务器上目录需要预先创建

  1. scp ${filename}.gz remot_name@remot_ip:/home/weblogic/databak/备份目录 

二、设定脚本执行时间

我们设定规则为每天凌晨2点执行一次,采用crontab来进行处理

执行crontab -e,设定如下规则:

  1. 0 2 * * * sh /home/oracle/db.sh 

大家可以参照上面去写一个适合自己生产数据库的一个脚本,定期备份。

责任编辑:庞桂玉 来源: 快资讯
相关推荐

2010-04-09 15:22:57

Oracle数据库

2011-08-24 15:16:37

Oracle数据库自动备份

2010-04-19 12:54:01

Oracle数据库

2011-08-08 10:10:21

Linux备份

2011-03-30 13:57:41

MySQL数据库自动备份

2010-10-26 13:33:08

Oracle自动备份

2011-05-16 09:32:33

mysql数据库备份

2019-10-16 00:37:36

Oracle数据库游标数

2009-03-26 11:42:36

定时备份Oracle

2009-08-12 18:16:37

Oracle数据库自动UNIX

2010-04-09 15:35:28

Oracle数据库

2010-04-19 13:15:00

Oracle数据库

2011-05-17 15:02:15

ORACLE数据库备份

2010-04-19 12:35:36

Oracle数据库

2009-11-20 14:08:39

Oracle数据库备份

2010-05-20 15:22:37

2009-03-16 13:30:55

脚本数据字典Oracle

2010-04-14 17:29:33

Oracle数据库

2010-04-12 10:40:49

Oracle数据库

2010-10-26 11:14:07

Oracle数据库备份
点赞
收藏

51CTO技术栈公众号