adb shell 修改文件名_shell脚本与计划任务

shell脚本与计划任务

说起计划任务,我们可以crond服务来管理(临时文件夹linux文档2018.11.17g-Linux计划任务管理.docx),而步骤复杂、操作繁琐的任务可以使用shell脚本来批量处理,两者结合可以非常灵活、自主地完成各种系统运维工作。

下面通过MySQL数据库的定期自动备份,了解shell脚本与计划任务的完美协作过程。其中,shell脚本负责具体的备份操作,crond服务负责控制备份周期。

1.确定备份方案

对于存在多个应用的数据库服务器,备份工作可能会划分得比较细,需要针对不同的库和表、不同的备份路径使用不同的验证用户等。下面以远程备份某某平台的两个论坛数据库为例,备份环境与需求如下所述:

  • 备份主机:IP地址为172.16.16.220,通过机柜内网络连接目标主机。
  • 数据库服务器:IP地址为172.16.16.22,MySQL服务监听的端口为3306
  • 备份内容:对MySQL服务器中的studydb、coursedb库进行远程备份,每天陵城2:30执行,每个库备份为独立的.sql文件,然后压缩为".tar.gz"格式,文件名中嵌入执行备份时的日期和时刻。

根据需求,首先需要做两个工作:其一,确保备份主机与数据库服务器之间保持连接畅通,不能用网络链路故障、防火墙封锁等阻碍;其二,MySQL服务必须允许从备份主机远程访问,且授权用户能够查询studydb、coursedb库。

针对本案例的情况,可以创建一个专用的数据库备份账户backuper,允许从备份主机172.16.16.220连接到MySQL数据库,并授予对studydb、coursedb库的读取权限。

49b5de3f5a3310294d33a0ae7a8d3016.png

从备份主机中测试数据库访问、查询授权等是否有效,或者直接使用mysqldump备份工具进行测试。如下图:

2cd064333926b3b12cc7c7d9d4b8215a.png

2.编写MySQL备份脚本

在备份主机中,创建用存放备份文件的目录(/opt/dbbak),并编写备份脚本(dbbak.sh),确认能够成功执行备份。

55f1b55c7308883f94d00424aff4fd1b.png

脚本代码中,对于目标主机的ip地址、用户名、密码、备份路径、文件名等信息,可能会在必要的时候变更,为了方便更新脚本,这些内容最好存放到固定名称的变量中。当需要备份的数据库发生变化时,只要修改脚本中的相关变量即可,从而使备份脚本具有可重用、可移植使用的特点,减少了大量的重复编码的工作量。

3.设置计划任务

有了批量备份的shell脚本以后,接下来可按照备份要求设置计划任务,以便自动、定期执行备份操作。在crontab配置记录中,直接指定dbbak.sh脚本程序的路径作为执行命令。

8f97631c720ecfb3b3e56a7cb9f7287c.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值