• 记录一下~~~Linux配置定时任务备份数据库dmp文件


    1.创建备份目录:

    mkdir -p /dcits/sx_xmz/sx_data_bak
    chown -R oracle18c:oinstall /dcits/sx_xmz/sx_data_bak

    2.脚本文件编写 vi databak.sh 输入如下内容

    #设置环节变量
    export ORACLE_SID=orcl18c
    export ORACLE_BASE=/home/oracle18c/u01/app/oracle
    export ORACLE_HOME=/home/oracle18c/u01/app/oracle/product/18.3/dbhome_1
    export PATH=/usr/sbin:$PATH
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
    export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
    export PATH=$ORACLE_HOME/bin:$PATH
    #设置用户变量, 数据库用户
    orowner=sx_rms
    #设置时间
    days=10
    #设置文件名称
    bakdata=$orowner"_"$(date +%Y%m%d).dmp
    #设置导出执行日志名称
    baklog=$orowner"_"$(date +%Y%m%d).log
    #设置打包名称
    ordatabak=$orowner"_"$(date +%Y%m%d).tar.gz
    #设置备份文件存放地址
    bakdir=/dcits/sx_xmz/sx_data_bak
    #编写备份命令
    cd $bakdir
    exp sx_rms/sx_ams@pdb1 file=$bakdir/$bakdata owner=sx_rms log=$bakdir/$baklog
    tar -zcvf $ordatabak  $bakdata $baklog
    find $bakdir  -type f -name "*.log" -exec rm {} \;
    find $bakdir  -type f -name "*.dmp" -exec rm {} \;
    find $bakdir  -type f -name "*.tar.gz" -mtime +$days -exec rm -rf {} \;
    

    **编写完成之后,手动执行下脚本验证脚本是否正确,完事用chmod命令给脚本文件赋予执行权限 **

    3.切换到oracle的用户,创建Linux定时任务

    -e edit user's crontab 编辑定时任务
    -l list user's crontab 查看定时任务列表
    -r delete user's crontab 删除定时任务
    crontab -l 查看当前用户下的定时任务
    crontab -e 编辑定时任务,编辑完成保存
    30 1 * * * /dcits/sx_xmz/sx_data_bak/databak.sh
    crontab -l 查看是否添加成功
    30 1 * * * /dcits/sx_xmz/sx_data_bak/databak.sh

    定时任务设置时间结构:

     ┌────────── minute (0 - 59)
     │ ┌──────── hour (0 - 23)
     │ │ ┌────── day of month (1 - 31)
     │ │ │ ┌──── month (1 - 12)
     │ │ │ │ ┌── day of week (0 - 6 => Sunday - Saturday, or
     │ │ │ │ │                1 - 7 => Monday - Sunday)
     ↓ ↓ ↓ ↓ ↓
     *   *   *  *   * command to be executed
    

    注意事项:

    a、星期和数字对应
    0 - Sun      Sunday
    1 - Mon      Monday
    2 - Tue      Tuesday
    3 - Wed      Wednesday
    4 - Thu      Thursday
    5 - Fri      Friday
    6 - Sat      Saturday
    7 - Sun      Sunday
    
    b、’day or month‘ 、‘month’ 、‘day of week’  --这三项注意  如果不能确定月份日期和周日期对应关系,可以两个取一个  即 规定了 月份和日期 就不选择星期 星期 执行 *  规定了 星期  月份和日期就 * *
    

    参考链接:https://www.cnblogs.com/huangjiangyong/p/15434857.html

  • 相关阅读:
    代码随想录算法训练营第五十三天|1143.最长公共子序列、1035.不相交的线、53. 最大子序和
    (第一天:)1.字典赋值默认值、字典解压赋值
    Golang http 请求如何设置代理
    学习C++第二课
    vue中组件间的通信
    JSONObject和JSONArray区别及注意事项
    【Spring Cloud Alibaba】seata分布式事务官方入门案例(实战版)
    时间跟踪工具:Timemator Mac汉化版
    算法手撕代码66~70
    【战略合作】新的游戏合作伙伴来袭,CARV 助力 Aavegotchi 发展!
  • 原文地址:https://www.cnblogs.com/lunzi1992/p/16662486.html