linux定时备份mysql数据库

1、查看磁盘空间情况:

[root@localhost backup]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   17G  2.7G   15G   16% /
devtmpfs                 476M     0  476M    0% /dev
tmpfs                    488M     0  488M    0% /dev/shm
tmpfs                    488M  7.7M  480M    2% /run
tmpfs                    488M     0  488M    0% /sys/fs/cgroup
/dev/sda1               1014M  130M  885M   13% /boot
tmpfs                     98M     0   98M    0% /run/user/0
[root@localhost backup]# 

选择合适磁盘存放备份文件

2、创建备份目录:

cd /home
mkdir backup
cd backup

3、创建备份Shell脚本:

在创建的目录下创建备份脚本(vi bkDatabaseName.sh)

#!/bin/bash
mysqldump -uroot -proot rtak > /data/backup/rtak_$(date +%Y%m%d_%H%M%S).sql
mysqldump -uroot -proot rtak | gzip > /data/backup/rtak_$(date +%Y%m%d_%H%M%S).sql.gz

注:

bkDatabaseName.sh 替换成有意思的名称

sql备份与gz备份可以二选一,也可全备份

用户名密码需要替换

4、添加可执行权限:

chmod u+x bkDatabaseName.sh

测试文件是否可正常执行(./bkDatabaseName.sh)

注:(1)如果报错 mysqldump: 未找到命令,执行

ln -fs /usr/local/mysql/bin/mysqldump /usr/bin (/usr/local/mysql 路径为mysql安装路径)

(2)如果有警告(Warning: Using a password on the command line interface can be insecure.) 可以忽略。

(3)查看备份sql文件是否正常,能否正常导入数据库

5、添加计划任务

确认crontab是否安装: 

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

执行命令:

crontab -e

输入以下内容并保存:

*/* * 1 * * /data/backup/bkDatabaseName.sh

 /* * 1 * * /  几个* 分别代表 分钟 小时 日期 月 星期几 执行备份操作

例如:每分钟执行备份 /1 * * * * /    (已测试)

           每天凌晨3点执行备份/00 3 * * * /    (未测试

6、停止备份操作

在不需要定时备份的时候,执行该操作,正常流程到第五步就完成了 ~

crontab -r

注:及时清理已过期很久的sql备份,防止磁盘占满 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值