• 【Shall脚本】定时在线备份上传


    作者:gnuhpc
    出处:http://www.cnblogs.com/gnuhpc/

    服务器环境不同,部分设置也不同。
    1.Windows环境:
    对于定时功能,在C盘建立一个目录DB2Backup,将以下bat脚本放入其中,使用DB2的任务中心设置一个OS脚本定时执行任务,调用这个自己写bat脚本即可完成,相关bat脚本为:
    @echo off
    set ip=%1
    set user=%2
    set passwd=%3
    set dbname=%4
    for /l %%i in (1,1,4) do (
    if "%1"=="" goto usage
    if "%1"=="/?" goto usage
    if "%1"=="help" goto usage
    Shift
    )
    echo open %ip%> bugfree_ftp.ftp
    echo user %user%>> bugfree_ftp.ftp
    echo %passwd%>> bugfree_ftp.ftp
    echo bin>> bugfree_ftp.ftp
    echo prompt>> bugfree_ftp.ftp
    echo cd pub>> bugfree_ftp.ftp
    echo put %dbname%*>> bugfree_ftp.ftp
    echo quit>> bugfree_ftp.ftp
    start /b /wait ftp -n -s:bugfree_ftp.ftp
    del %dbname%*
    exit
    :usage
    echo Usage: ftpupload.bat IP Username Password Dbname
    在任务中心中使用的脚本为
    db2cmd
    db2 CONNECT TO SAMPLE
    db2 BACKUP DATABASE SAMPLE TO "C:/DB2Backup" WITHOUT PROMPTING
    cd C:/DB2Backup
    ftpupload.bat 9.123.108.154 ftp ftp sample
    其中9.123.108.154为FTP地址,ftp是用户名,第二个ftp是密码,sample为数据库名字
    2.Linux环境
    定时功能可以使用DB2的任务中心,也可以使用crontab
    首先在/usr/local/bin下建立一个shell脚本ftpupload.sh,修改其权限为755
    其内容为
    #!/bin/bash
    db2 CONNECT TO SAMPLE
    db2 QUIESCE DATABASE IMMEDIATE FORCE CONNECTIONS
    db2 UNQUIESCE DATABASE
    db2 TERMINATE
    db2 DEACTIVATE DB SAMPLE
    db2 BACKUP DATABASE SAMPLE TO "/tmp" WITHOUT PROMPTING
    cd /tmp
    ftp -n -v $1 << EOT
    ascii
    user $2 $3
    prompt
    cd pub
    put $4*
    bye
    EOT
    rm $4*
    使用命令crontab -e 在其中加入一句:
    00 18 * * 5 /usr/local/bin/ftpupload.sh 9.123.108.154 ftp ftp SAMPLE >/dev/null 2>&1 &
    使用/etc/init.d/crond restart 重新更新一下定时任务就可以了
    含义是在每周五的18:00 整以上述形式运行脚本进行备份和上传。

    作者:gnuhpc
    出处:http://www.cnblogs.com/gnuhpc/


                   作者:gnuhpc
                   出处:http://www.cnblogs.com/gnuhpc/
                   除非另有声明,本网站采用知识共享“署名 2.5 中国大陆”许可协议授权。


    分享到:

  • 相关阅读:
    javascript线性渐变2
    javascript无缝滚动2
    javascript Object对象
    javascript无缝滚动
    javascript图片轮换2
    javascript图片轮换
    用C/C++写CGI程序
    linux shell 的 for 循环
    重磅分享:微软等数据结构+算法面试100题全部答案完整亮相
    查看linux服务器硬盘IO读写负载
  • 原文地址:https://www.cnblogs.com/gnuhpc/p/2809994.html
Copyright © 2020-2023  润新知