db2数据库自动备份方法

转载 2006年06月21日 13:42:00
步骤如下:
(1) 编写BAK.java,代码如下:(一周内周六完备、其他日期增量备份)
import java.util.Date;

public class BAK {
  public static void main(String[] args) throws Exception{
    Runtime runtime = Runtime.getRuntime();
    //断开数据库连接
    Process proc = runtime.exec("db2cmd /c db2 force application all");

    //只保留一天的备份
    //runtime.exec("del d://backup//db2bak//autobak//DATACTR.0// /S /F /Q");
    //runtime.exec("del d://backup//db2bak//autobak//RONE.0// /S /F /Q");
    //---------------------------------------------------------------
    //暂停n秒
    Thread.currentThread().sleep(5000);
    //关闭上述进程
    //proc.destroy();
    //--------------------------------------
    //暂停n秒,等待数据库连接断开
    //Thread.currentThread().sleep(5000);
    //备份
    //proc = runtime.exec("db2cmd db2 backup db DATACTR");
    //Thread.currentThread().sleep(5000);
    //proc.destroy();
    //--------------------------------------
    Date date = new Date();
    int dayOfTheWeek = date.getDay();
    if (dayOfTheWeek != 6){
        //不是周六,进行增量备份
//        proc = runtime.exec("db2cmd db2 backup db yndc incremental");
          proc = runtime.exec("db2cmd /c db2 backup db yndc incremental");
    }
    else{
        //是周六,进行完全备份
        proc = runtime.exec("db2cmd /c db2 backup db yndc");
    }
    //proc = runtime.exec("db2cmd db2 backup db gather");
    proc = runtime.exec("db2cmd /c db2 backup db codebase");
    proc = runtime.exec("db2cmd /c db2 backup db rone");
    //proc = runtime.exec("db2cmd db2 backup db datactr");

    //暂停5秒
    //Thread.currentThread().sleep(5000);
    //proc.destroy();
    //--------------------------------------
    //restart db2
    //proc = runtime.exec("db2start");
    //暂停5秒
    //Thread.currentThread().sleep(5000);
    //proc.destroy();
    //--------------------------------------
    runtime.exit(0);
  }
}

(2)编写run.bat,编译BAK.java并执行(注意需设置windows环境变量指向jdk的bin目录,在cmd下敲入命令"java"能找到这个命令,以支持编译和执行BAK.java
javac -deprecation BAK.java
java BAK

(3)通过windows的任务计划每天晚上定时调用run.bat进行数据库备份,譬如每晚22:00

(4)配合winzip软件可实现数据库的异机备份,定时将备份目录压缩至另一台机器的硬盘上(可映射成本地机器的网络硬盘。)

注意:db2 backup命令不支持将备份文件直接备份到网络硬盘上,将提示无法识别盘符
可根据需求选择离线备份或者在线备份。

db2数据库自动备份方法

步骤如下:(1) 编写BAK.java,代码如下:(一周内周六完备、其他日期增量备份)import java.util.Date;public class BAK {  public static v...
  • xiedd
  • xiedd
  • 2006年06月09日 13:39
  • 2057

db2 自动备份(linux 、windows)总结

1.linux  db2 自动备份,备份后压缩,拷贝到另一服务器 全备份: #!/bin/sh #------------------------------------- #db2自...
  • lushuai09
  • lushuai09
  • 2013年08月06日 23:13
  • 4215

为你介绍Oracle 11g数据库每天自动备份的实现方法

方法/步骤 1、登陆oracle数据库服务器,利用plsql程序来登陆数据库。在用户名、密码、数据库的地方分别输入对应的用户名、密码和数据库实例名称。 2、登陆完成后,新建sql窗口,并在sq...
  • u010486495
  • u010486495
  • 2016年06月12日 14:50
  • 18645

Oracle 11g数据库每天自动备份的实现方法

方法/步骤 1、登陆oracle数据库服务器,利用plsql程序来登陆数据库。在用户名、密码、数据库的地方分别输入对应的用户名、密码和数据库实例名称。 2、登陆完成后,新建sql窗口,并在sql窗口...
  • fy_hanxu
  • fy_hanxu
  • 2017年07月25日 12:13
  • 1803

SqlServer 数据库自动备份的两种解决方案

我们需要二个文件: DialyBackup.sql EverydayBackup.bat
  • afandaafandaafanda
  • afandaafandaafanda
  • 2014年11月24日 23:54
  • 2088

Sql Server--如何自动备份数据

对于数据库备份,我自己之前的理解就是找到创建数据库的位置,然后把库Ctrl+C保存到指定的文件夹下。其实不然,从安全性、完整性的角度来说,Ctrl+C mdf和ldf文件然后再附加的方法很繁琐(需要停...
  • u013047584
  • u013047584
  • 2015年11月15日 20:00
  • 2590

用Navicat自动备份mysql数据库

数据库备份很重要,很多服务器经常遭到黑客的恶意攻击,造成数据丢失,如果没有及时备份的话,后果不堪设想。一:备份的目的:做灾难恢复:对损坏的数据进行恢复和还原 需求改变:因需求改变而需要把数据还原到改...
  • u013628152
  • u013628152
  • 2017年02月07日 14:58
  • 4390

windows db2备份至Linux备份服务器之脚本实现

目的:          将WIN2008操作系统上备份的DB2数据库镜像备份至LINUX系统上的备份服务器。即当月备份的数据库备份文件在本地和备份服务器上各保留最近的10份,一个月之前的备份文件,一...
  • Hwh1231
  • Hwh1231
  • 2016年11月14日 16:38
  • 502

Linux 下db2 自动远程备份

1.备份策略周日:全备 周一:迭代增量备份 周二:迭代增量备份 周三:累积增量备份 周四:迭代增量备份 周五:迭代增量备份 周六:累积增量备份2.自动上传ftp3.调度计划0 0 * * ...
  • huryer
  • huryer
  • 2016年12月15日 16:13
  • 668

vba如何连接db2数据库

http://jingyan.baidu.com/article/22a299b5185fd29e19376af2.html
  • pgbiao
  • pgbiao
  • 2015年07月30日 15:56
  • 1012
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:db2数据库自动备份方法
举报原因:
原因补充:

(最多只允许输入30个字)