zoukankan      html  css  js  c++  java
  • linux下如何实现mysql数据库每天自动备份定时备份

    1、查看磁盘空间情况:

    既然是定时备份,就要选择一个空间充足的磁盘空间,避免出现因空间不足导致备份失败,数据丢失的恶果!
    存储到当前磁盘这是最简单,却是最不推荐的;服务器有多块硬盘,最好是把备份存放到另一块硬盘上;有条件就选择更好更安全的存储介质;

    1.# df -h
    2.Filesystem Size Used Avail Use% Mounted on
    3./dev/mapper/VolGroup-lv_root 50G 46G 1.6G 97% /
    4.tmpfs 1.9G 92K 1.9G 1% /dev/shm
    5./dev/sda1 485M 39M 421M 9% /boot
    6./dev/mapper/VolGroup-lv_home 534G 3.6G 503G 1% /home

    2、创建备份目录:

    上面我们使用命令看出/home下空间比较充足,所以可以考虑在/home保存备份文件;

    1.cd /home
    2.mkdir backup
    3.cd backup

    3、创建备份Shell脚本:

    注意把以下命令中的DatabaseName换为实际的数据库名称;
    当然,你也可以使用其实的命名规则!

    1.vi bkDatabaseName.sh

    输入/粘贴以下内容:

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


    对备份进行压缩:

    1.#!/bin/bash
    2.mysqldump -uusername -ppassword DatabaseName | gzip > /home/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz

    注意:
    把 username 替换为实际的用户名;
    把 password 替换为实际的密码;
    把 DatabaseName 替换为实际的数据库名;

    4、添加可执行权限:

    1.chmod u+x bkDatabaseName.sh

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

    1. ./bkDatabaseName.sh

    5、添加计划任务

    检测或安装 crontab

    确认crontab是否安装:
    执行 crontab 命令如果报 command not found,就表明没有安装

    1.# crontab
    2.-bash: crontab: command not found


    如时没有安装 crontab,需要先安装它,具体步骤请参考:
    CentOS下使用yum命令安装计划任务程序crontab
    使用rpm命令从CentOS系统盘安装计划任务程序crontab

    添加计划任务

    执行命令:

    1.crontab -e

    这时就像使用vi编辑器一样,可以对计划任务进行编辑。
    输入以下内容并保存:

    1.  10 0 * * * /home/backup/bkDatabaseName.sh

    具体是什么意思呢?
    意思是每天零点十分执行一次shell脚本“/home/backup/bkDatabaseName.sh”。

    6、测试任务是否执行

    很简单,我们就执行几次“ls”命令,看看一分钟过后文件有没有被创建就可以了!

    如果任务执行失败了,可以通过以下命令查看任务日志:

    1.tail -f /var/log/cron

    输出类似如下:

    Sep 30 14:01:01 bogon run-parts(/etc/cron.hourly)[2503]: starting 0anacron
    Sep 30 14:01:01 bogon run-parts(/etc/cron.hourly)[2512]: finished 0anacron
    Sep 30 15:01:01 bogon CROND[3092]: (root) CMD (run-parts /etc/cron.hourly)
    Sep 30 15:01:01 bogon run-parts(/etc/cron.hourly)[3092]: starting 0anacron
    Sep 30 15:01:02 bogon run-parts(/etc/cron.hourly)[3101]: finished 0anacron
    Sep 30 15:50:44 bogon crontab[3598]: (root) BEGIN EDIT (root)
    Sep 30 16:01:01 bogon CROND[3705]: (root) CMD (run-parts /etc/cron.hourly)
    Sep 30 16:01:01 bogon run-parts(/etc/cron.hourly)[3705]: starting 0anacron
    Sep 30 16:01:01 bogon run-parts(/etc/cron.hourly)[3714]: finished 0anacron
    Sep 30 16:15:29 bogon crontab[3598]: (root) END EDIT (root)

  • 相关阅读:
    Windows SDK编程(Delphi版) 之 应用基础,楔子
    一个小问题引发的论证思考
    Delphi 组件开发教程指南(7)继续模拟动画显示控件
    用PyInstaller将python转成可执行文件exe笔记
    使用 .Net Memory Profiler 诊断 .NET 应用内存泄漏(方法与实践)
    Microsof Office SharePoint 2007 工作流开发环境搭建
    How to monitor Web server performance by using counter logs in System Monitor in IIS
    LINQ之Order By
    window 性能监视器
    内存泄露检测工具
  • 原文地址:https://www.cnblogs.com/MR-ws/p/14814598.html
Copyright © 2011-2022 走看看