【完美】linux系统MySQL数据定时备份与恢复

在互联网行业中数据是很重要的,所以每个数据库都应该做好数据备份的工作。

下面就来讲解一下Linux CentOS系统下的mysql数据备份,以及定时备份的功能。(适用于mysql-cluster)

1.首先查看磁盘空间,看看那个文件空间比较大。

# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/cl-root    50G   15G   36G  30% /
devtmpfs              7.9G     0  7.9G   0% /dev
tmpfs                 7.9G   84K  7.9G   1% /dev/shm
tmpfs                 7.9G   25M  7.9G   1% /run
tmpfs                 7.9G     0  7.9G   0% /sys/fs/cgroup
/dev/sda1             4.0G  155M  3.9G   4% /boot
/dev/mapper/cl-lvol0  296G   65M  281G   1% /data
/dev/mapper/cl-home    20G   37M   20G   1% /home
/dev/mapper/cl-tmp     20G   33M   20G   1% /tmp
tmpfs                 1.6G   16K  1.6G   1% /run/user/42
tmpfs                 1.6G     0  1.6G   0% /run/user/0

可以看到/data的空间最大,决定把备份的sql放在/data里。

2.进入/data文件夹,创建mysql-backup文件夹

cd /data
mkdir mysql-backup
cd mysql-backup

3.创建sh脚本

vi bk-databaseName.sh

在脚本里写入脚本

#!/bin/bash
mysqldump -uusername -ppassword databaseName > /data/mysql-backup/databaseName_$(date +%Y%m%d_%H%M%S).sql

username代表mysql登录账户

password代表mysql登录密码(注意!-p与password之间没有空格!)

databaseName代表数据库名称

4.修改脚本执行权限

chmod +x /data/mysql-backup/bk-databaseName.sh

可以执行预先执行一下脚本,验证一下。

./databaseName.sh
如果mysql-backup文件夹下出现databaseName_20180622_103015.sql,并且文件内容与大小正确,证明备份成功。


5.接下来开始做定时备份

linux的定时功能是用crontab命令

检查crontab是否安装

# rpm -qa|grep crontab
crontabs-1.11-6.20121102git.el7.noarch

6.开始添加任务

crontab -e

7.写入定时任务

0 3 * * * /data/mysql-backup/bk-databaseName.sh

跟vi编写一样

表示每天凌晨3:00执行一次脚本

保存退出后出现以下内容及成功

no crontab for root - using an empty one
crontab: installing new crontab

你可能感兴趣的:(Linux,MySql)