通过简单的设置,可以让mysql数据库备份自动化

通过简单的设置,可以让mysql数据库备份自动化.减少维护的工作量!

一、对于Windows主机

==============

假想环境:

MySQL 安装位置:C:MySQL

论坛数据库名称为:bbs

MySQL root 密码:123456

数据库备份目的地:D:db_backup

@echo off

C:MySQLinmysqladmin -u root –password=123456 shutdown

C:MySQLinmysqldump –opt -u root –password=123456 bbs > D:db_backupbs.sql

C:MySQLinmysqld-nt

将以上代码保存为backup_db.bat

然后使用Windows的"计划任务"定时执行该脚本即可。(例如:每天凌晨5点执行back_db.bat)

二、对于Linux主机

===========

假想环境:

MySQL 安装位置:/usr/local/mysq

论坛数据库名称为:bbs

MySQL root 密码:123456

数据库备份目的地:/var/db_backup/

#! /bin/bash

/usr/local/mysql/bin/mysqladmin -u root –password=123456 shutdown

/usr/local/mysql/bin/mysqldump –opt -u root –password=123456 bbs > /var/db_backup/bbs.sql

/usr/local/mysql/bin/mysqld_safe –user=mysql &

将上述代码保存在/usr/local/sbin/backup_db.sh

对该脚本赋予执行权限:

# chmod 755 /usr/local/sbin/backup_db.sh

加入crontab中自动执行:

# crontab -e

加入:

0 5 * * * /usr/local/sbin/backup_db.sh

方法:

把cron加入到启动脚本中:

# rc-update add vixie-cron default

crontab -l #查看你的任务

crontab-e#编辑你的任务

crontab-r#删除用户的crontab的内容

实例讲解二:

系统cron设定:/etc/crontab 通过 /etc/crontab 文件,可以设定系统定期执行的任务,当然,要想编辑这个文件,得有root权限

0 7 * * * root mpg123 ~/wakeup.mp3分 时 日 月 周

示例:

0 4 * * 0 root emerge --sync && emerge -uD world #每周日凌晨4点,更新系统0 2 1 * * root rm -f /tmp2 * * * * root ............... #每两分钟就执行........0 6,12,18 * * * root ............... #每天6点、12点、18点执行........

每两个小时

0 */2 * * * echo "have a break now." >> /tmp/test.txt

晚上11点到早上8点之间每两个小时,早上八点

0 23-7/2,8 * * * echo "have a good dream:)" >> /tmp/test.txt

每个月的4号与每个礼拜的礼拜一到礼拜三的早上11点

0 11 4 * 1-3 command line

1月1日早上4点

0 4 1 1 * command line

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171214A0VJ5Z00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券