项目需要定时备份数据库,以下是自己的操作笔记

1.检查磁盘空间

  

# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 40G 3.6G 34G 10% /
tmpfs 16G 0 16G 0% /dev/shm

这是我当前linux服务器的情况,至于为什么是这样子,我也不清楚(我是半路接过来的,无奈)

根据上面的信息,我就把备份文件放在/dev目录下面

2.创建备份目录

  

cd /dev
mkdir backup
cd backup

3.创建备份shell命令

vi bkDatabaseName.sh

输入如下内容

 #!/bin/bash
mysqldump -uusername -ppassword -hmysqlIp DatabaseName > /dev/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql

对备份进行压缩

mysqldump -uusername -ppassword -hmysqlIp DatabaseName | gzip > /dev/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz

注意:
把 username 替换为实际的用户名;

把 password 替换为实际的密码;

把mysqlIp替换mysql的IP;

把 DatabaseName 替换为实际的数据库名;

4.添加可执行权限

chmod u+x bkDatabaseName.sh

添加可执行权限之后先执行一下,看看脚本有没有错误,能不能正常使用;

./bkDatabaseName.sh

5.添加定时执行任务

 # crontab
-bash: crontab: command not found

执行 crontab 命令如果报 command not found,就表明没有安装;

安装crontab请参考:http://www.cnblogs.com/dxy1451713982/p/8081569.html

添加定时任务

crontab -e
*/ * * * * /dev/backup/bkDatabaseName.sh

表示每分钟执行一次,注:对于cron表达式,建议自己百度

6.测试任务是否执行

 # tail -f /var/log/cron
Dec :: iZ2318jid47Z run-parts(/etc/cron.daily)[]: finished makewhatis.cron
Dec :: iZ2318jid47Z run-parts(/etc/cron.daily)[]: starting mlocate.cron
Dec :: iZ2318jid47Z run-parts(/etc/cron.daily)[]: finished mlocate.cron
Dec :: iZ2318jid47Z run-parts(/etc/cron.daily)[]: starting prelink
Dec :: iZ2318jid47Z run-parts(/etc/cron.daily)[]: finished prelink
Dec :: iZ2318jid47Z run-parts(/etc/cron.daily)[]: starting readahead.cron
Dec :: iZ2318jid47Z run-parts(/etc/cron.daily)[]: finished readahead.cron
Dec :: iZ2318jid47Z run-parts(/etc/cron.daily)[]: starting tmpwatch
Dec :: iZ2318jid47Z run-parts(/etc/cron.daily)[]: finished tmpwatch
Dec :: iZ2318jid47Z anacron[]: Job `cron.daily' terminated

或者去你存放备份文件的目录下查看,是否有备份文件生成;

7.备份完成后删除5天前的备份文件

find /dev/backup -name databaseName"*.sql.gz" -type f -mtime + -exec rm -rf {} \; > /dev/null >&

find /dev/backup -name databaseName"*.sql" -type f -mtime + -exec rm -rf {} \; > /dev/null >&

 

linux mysql定时备份的更多相关文章

  1. linux mysql 定时备份

    1.查看磁盘空间情况: 既然是定时备份,就要选择一个空间充足的磁盘空间,避免出现因空间不足导致备份失败,数据丢失的恶果! 存储到当前磁盘这是最简单,却是最不推荐的:服务器有多块硬盘,最好是把备份存放到 ...

  2. linux mysql 定时备份 使用crontab

    第一步:在服务器上配置备份目录代码: mkdir /var/lib/mysqlbackup cd /var/lib/mysqlbackup 第二步:编写备份脚本代码:  vi dbbackup.sh ...

  3. linux下mysql定时备份数据库

    linux下mysql定时备份数据库 (2010-10-21 12:40:17) 转载▼ 标签: 杂谈   一.用命令实现备份 首页进入mysql的bin目录 1.备份数据#mysqldump -uu ...

  4. MySQL定时备份之使用Linux下的crontab定时备份实例

    这篇文章主要介绍了使用Linux下的crontab进行MySQL定时备份的例子,需要的朋友可以参考下   复制代码代码如下: ##################################### ...

  5. Linux下定时备份MySQL数据库的Shell脚本

    Linux下定时备份MySQL数据库的Shell脚本   对任何一个已经上线的网站站点来说,数据备份都是必须的.无论版本更新还是服务器迁移,备份数据的重要性不言而喻.人工备份数据的方式不单耗费大量时间 ...

  6. mysql定时备份任务

    简介 在生产环境上,为了避免数据的丢失,通常情况下都会定时的对数据库进行备份.而Linux的crontab指令则可以帮助我们实现对数据库定时进行备份.首先我们来简单了解crontab指令,如果你会了请 ...

  7. Navicat for MySQL定时备份数据库及数据恢复

    在做数据库修改或删除操作中,可能会导致数据错误,甚至数据库奔溃,而有效的定时备份能很好地保护数据库.本篇文章主要讲述Navicat for MySQL定时备份数据库和数据恢复等功能,同时可以定时播放电 ...

  8. mysql 定时备份bat脚本 ,方便小型服务简单快速备份mysql

    mysql定时备份bat脚本 echo 数据库为用户名为root 密码为root 数据库名为kdykt echo mysqldump 命令如果没有配置环境变量要在bin目录下执行 set " ...

  9. MySQL定时备份(全量备份+增量备份)

    MySQL 定时备份 参考 zone7_ 的 实战-MySQL定时备份系列文章 参考 zmcyu 的 mysql数据库的完整备份.差异备份.增量备份 更多binlog的学习参考马丁传奇的 MySQL的 ...

随机推荐

  1. 暑假练习赛 007 C - OCR

    C - OCR Description standard input/outputStatements Optical Character Recognition (OCR) is one of th ...

  2. Linux系列教程(十三)——Linux软件包管理之源码包、脚本安装包

    上篇博客我们讲解了网络yum源和光盘yum源的搭建步骤,然后详细介绍了相关的yum命令,yum 最重要是解决了软件包依赖性问题.在安装软件时,我们使用yum命令将会简单方便很多.我们知道yum命令只能 ...

  3. git clone 带用户名密码的形式但包含@等特殊符号无法正常解析

    正常使用git clone 的方式 git clone https://remote 使用带用户名密码的方式(可以避免后续每次都要输入用户名密码) git clone https://[usernam ...

  4. Python入门学习(一)

    看完了莫烦Python的视频,对于Python有了一点感觉,接下来打算把小甲鱼的视频啃完,附上学习网址:http://blog.fishc.com/category/python 小甲鱼的视频是从零基 ...

  5. jQuery 插件格式 规范

    方式一(自定义对象): (function($, window, document) {  var Plugin, defaults, pluginName; 调用时的函数名:     pluginN ...

  6. HTML学习笔记 基础表格案例 第二节 (原创) 参考使用表

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. MySQL锁学习之UPDATE

    ##==============================================================================## 学MySQL也蛮长时间了,可一直停 ...

  8. R学习笔记 第五篇:字符串操作

    文本数据存储在字符向量中,字符向量的每个元素都是字符串,而非单独的字符.在R中,可以使用双引号,或单引号表示字符,函数nchar用于获得字符串中的字符数量: > s='read' > nc ...

  9. [转载] Hive与HBase的联系与区别

    转载自http://blog.csdn.net/wangmuming/article/details/23954527和http://www.cnblogs.com/justinzhang/p/427 ...

  10. 三种读取HashMap的方式

    package com.biubiu.entity; import java.util.Collection; import java.util.HashMap; import java.util.I ...