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

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. IdentityServer4 SigningCredential(RSA 证书加密)

    IdentityServer4 默认提供了两种证书加密配置: services.AddIdentityServer() .AddDeveloperSigningCredential() .AddTem ...

  2. Linux替换命令

    :s/^.*$/\L&/100 ##将100行内的小写转换成大写 vi/vim 中可以使用 :s 命令来替换字符串. :s/vivian/sky/ 替换当前行第一个 vivian 为 sky ...

  3. Java IO编程全解(三)——伪异步IO编程

    转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/7723174.html 前面讲到:Java IO编程全解(二)--传统的BIO编程 为了解决同步阻塞I/O面临 ...

  4. Log4j – Log4j 2 API

    Overview The Log4j 2 API provides the interface that applications should code to and provides the ad ...

  5. SQL Server 数据类型转换函数

    T-SQL提供了两个显示转换的函数:CAST函数和CONVERT函数. 1. CAST函数 语法: CAST ( expression AS data_type [ ( length ) ] ) 示例 ...

  6. C# Post和Get请求

    Get请求: /// <summary> /// 调用ToxyzAPI /// </summary> /// <param name="requetid&quo ...

  7. HTML中引入CSS的方法

    在HTML中引入CSS的方法主要有四种,它们分别是行内式.内嵌式.链接式和导入式. 1.行内式 行内式是在标记的style属性中设定CSS样式.这种方式没有体现出CSS的优势,不推荐使用. 2.内嵌式 ...

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

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

  9. 通讯框架 t-io 学习——websocket 部分源码解析

    前言 前端时间看了看t-io的websocket部分源码,于是抽时间看了看websocket的握手和他的通讯机制.本篇只是简单记录一下websocket握手部分. WebSocket握手 好多人都用过 ...

  10. 小白必看Python视频基础教程

    Python的排名从去年开始就借助人工智能持续上升,现在它已经成为了第一名.Python的火热,也带动了工程师们的就业热.可能你也想通过学习加入这个炙手可热的行业,可以看看Python视频基础教程,小 ...