#!/bin/bash

# Name:bakmysql.sh

# This is a ShellScript For Auto DB Backup and Delete old Backup

#备份地址

backupdir=/home/mysqlbackup

#备份文件后缀时间

time=_` date +%Y_%m_%d_%H_%M_%S `

#需要备份的数据库名称

db_name=test

#mysql 用户名

db_user=root

#mysql 密码

db_pass=123456

mysqldump -u $db_user -p$db_pass $db_name | gzip > $backupdir/$db_name$time.sql.gz

#删除一分钟之前的备份文件

find $backupdir -name $db_name"*.sql.gz" -type f -mmin +1 -exec rm -rf {} \; > /dev/null 2>&1

保存退出

说明:

代码中 time=` date +%Y%m%d%H `也可以写为time=”$(date +”%Y%m%d$H”)”

其中`符号是TAB键上面的符号,不是ENTER左边的’符号,还有date后要有一个空格。

db_name:数据库名;

db_user:数据库用户名;

db_pass:用户密码;

-type f    表示查找普通类型的文件,f表示普通文件。

-mtime +7  按照文件的更改时间来查找文件,+7表示文件更改时间距现在7天以前;如果是 -mmin +7 表示文件更改时间距现在7分钟以前。

-exec rm {};   表示执行一段shell命令,exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{},一个空格和一个,最后是一个分号。

/dev/null 2>&1  把标准出错重定向到标准输出,然后扔到/DEV/NULL下面去。通俗的说,就是把所有标准输出和标准出错都扔到垃圾桶里面;其中的&表示让该命令在后台执行。

定时执行

bak_config文件代码如下

#every day exec

0 0 * * * /home/bak_sh/bak_day.sh

#every week exec

0 0 * * 0 /home/bak_sh/bak_week.sh

#every month exec

0 0 1 * * /home/bak_sh/bak_month.sh

先用查询状态命令查询crond状态,如果处在停止状态则须先启动;如已在启动状态,则无须理会。

操作命令如下:

/sbin/service crond start 启动

/sbin/service crond restart 重启

/sbin/service crond stop 停止

/sbin/service crond status 查询状态

查看服务是否已经运行用

ps -ax | grep cron

查看调度任务

crontab -l//列出当前的所有调度任务

crontab -r//删除所有任务调度工作

添加调度任务

crontab /home/bak_sh/bak_config

linux定时备份mysql_linux定时备份MySQL数据库并删除七天前的备份文件相关推荐

  1. linux mysql定时删除数据_让linux每天定时备份MySQL数据库并删除五天前的备份文件...

    MYSQL定期备份是一项重要的工作,但人工操作太繁琐,也难避免有所疏漏,使用下面的方法即可让系统定期备份数据.利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的. 1. ...

  2. linux 下备份MySQL数据库 并删除7天前的备份数据

    #!/bin/bash #备份数据库hz jshuabo sdhuabo name=$(date +%Y%m%d) /alidata/server/mysql-5.1.73/bin/mysqldump ...

  3. linux java 查询mysql_Linux Java连接MySQL数据库

    Linux(Ubuntu平台)Java通过JDBC连接MySQL数据库,与Windows平台类似,步骤如下: 解压 jdbc: tar -zxvf mysql-connector-java-5.1.1 ...

  4. linux jsp连接mysql_Linux JSP连接MySQL数据库

    Linux(Ubuntu平台)JSP通过JDBC连接MySQL数据库,与Windows平台类似,步骤如下: 解压 jdbc: tar -zxvf mysql-connector-java-5.1.18 ...

  5. 重新打包mysql数据库文件_服务器每天早上备份一次 MySQL 数据库并自动打包,同时删除 5 天前的备份文件...

    终于让服务器每天早上备份一次 MySQL 数据库并自动打包,同时删除 5 天前的备份文件.分享如下: 1. 环境: windows server 2003 + Apache 2.0 + PHP5 + ...

  6. Linux下自动备份Oracle数据库并删除指定天数前的备份

    说明: Oracle数据库服务器 操作系统:CentOS IP:192.168.0.198 端口:1521 SID:orcl Oracle数据库版本:Oracle11gR2 具体操作: 1.root用 ...

  7. Mysql —— linux下使用c语言访问mySql数据库

    示例1: #include<stdio.h> #include<mysql.h> int main() { MYSQL mysql; mysql_init(&mysql ...

  8. 在 MySQL 数据库中删除重复记录的步骤

    在 MySQL 数据库中删除重复记录的步骤 当我们在处理数据库中的数据时,有时候会出现重复记录的情况,这些重复记录会影响数据的正确性,需要将其删除.下面是在 MySQL 数据库中删除重复记录的步骤: ...

  9. python如何删除mysql数据库_python删除数据mysql数据库连接

    Python学习之旅:访问MySQL数据库 Python学习之旅:访问MySQL数据库 MySQL是Web世界中使用最广泛的数据库服务器.为服务器端设计的数据库,能承受高并发访问. python如何使 ...

最新文章

  1. UI自动化测试工具White简介以及使用经验总结(一)
  2. mint ui datetimepicker 手机端jquery datetimepicker 总结应用
  3. Ecere SDK:用于GUI和图形的跨平台工具包
  4. 2005服务器文件夹网页设设置,设置VSS2005使支持通过Internet访问
  5. 历史上的今天:阿帕网退役;Quintus 收购 Mustang;同步电流磁芯存储器获得专利...
  6. centos7.4批量自动化安装(pxe、cobbler、制作自动化iso镜像);pxe安装;cobbler安装;
  7. 粒子滤波与PF目标追踪
  8. linux 负载高ssh连不上,关于ssh连不上问题的解决方法(必看)
  9. access阿里云 mysql_access数据库如何使用
  10. dcdc转换器计算机显示,DC/DC转换器
  11. android连接airprint打印机,苹果让无线打印更加便捷,安卓已羡慕
  12. C# DataGridView 冻结列或行
  13. 【转】android builder.setPositiveButton处 报错
  14. python print()什么意思_python print用法是什么
  15. 皮皮虾视频分析并加工
  16. 球坐标系下的两点距离公式
  17. 英飞凌TC387学习
  18. Binutils 相关工具记录
  19. 计算机函数if80到90分怎么弄,excel统计80~90分的人数,如何操作?
  20. 软件工程——成本效益分析

热门文章

  1. pythonif语句缩进_Python中多行IF语句缩进的代码样式?
  2. elasticsearch扩展ik分词器词库
  3. Linux中为wget命令设置代理
  4. java虚拟机改装_java虚拟机线上配置
  5. 联想计算机农村,农村的联想
  6. android xml文件操作类,android操作xml
  7. Linux中look命令,如何在Linux上使用look命令 | MOS86
  8. php函数变成变量,为什么我不能在PHP函数中将函数作为默认变量提供?
  9. mysql优化sql相关(持续补充)
  10. 你知道怎么在生产环境下部署tomcat吗?,灵魂拷问