使用shell脚本自动备份MySQL数据库的具体操作
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,不知道大家之前对类似使用shell脚本自动备份MySQL数据库的具体操作的文章有无了解,今天我在这里给大家再简单的讲讲。感兴趣的话就一起来看看正文部分吧,相信看完使用shell脚本自动备份MySQL数
千家信息网最后更新 2026年11月01日使用shell脚本自动备份MySQL数据库的具体操作
不知道大家之前对类似使用shell脚本自动备份MySQL数据库的具体操作的文章有无了解,今天我在这里给大家再简单的讲讲。感兴趣的话就一起来看看正文部分吧,相信看完使用shell脚本自动备份MySQL数据库的具体操作你一定会有所收获的。
目的:
192.168.1.2服务器对192.168.1.1服务器上的MySQL数据库进行备份。
必须满足的条件:
1、在192.168.1.1服务器上创建专门用来备份的数据库账号,并赋予相应的权限:
mysql> grant select,lock tables on *.* to 'operator'@'192.168.%.%' identified by '123456'; #备份数据库需要账号具有查看表和锁定表的权限
2、在192.168.1.2服务器上使用该账号进行手工备份,测试是否可以备份成功:
[root@localhost ~]# mysqldump -u operator -p123456 -h 192.168.1.1 --databases test1 > test1.sql
编写shell脚本:
[root@localhost ~]# mkdir -p /opt/backup #创建备份后的存放目录[root@localhost ~]# vim mysqlbak.sh #编写shell脚本#!/bin/bash#定义数据库连接、目标信息库等信息:user="operator" #定义用户名账号pass="123456" #密码host="192.168.1.1" #目标主机conn=" -u $user -p$pass -h $host"data1="test1" #备份目标库data2="test2" bak="/opt/backup" #指定备份目录cmd="/usr/local/mysql/bin/mysqldump" #指定命令工具time=`date +%Y%m%d-%H%M` #定义时间变量name_1="$data1-$time" #定义备份后的名字name_2="$data2-$time"cd $bak #切换至备份目录下$cmd $conn --databases $data1 > $name_1.sql #备份为.sql文件$cmd $conn --databases $data2 > $name_2.sql/bin/tar zcf $name_1.tar.gz $name_1.sql --remove > /dev/null #打包后删除源文件/bin/tar zcf $name_2.tar.gz $name_2.sql --remove > /dev/null
测试备份是否成功:
[root@localhost ~]# chmod +x mysqlbak.sh #赋予该脚本执行权限[root@localhost ~]# ./mysqlbak.sh #执行脚本测试是否备份成功Warning: Using a password on the command line interface can be insecure.Warning: Using a password on the command line interface can be insecure.[root@localhost ~]# ls /opt/backup/ #查看备份后的文件,OK!test1-20190521-2254.tar.gz test2-20190521-2254.tar.gz
设置计划任务:
[root@localhost ~]# mv mysqlbak.sh /opt/backup/ #将脚本也移至备份目录[root@localhost backup]# crontab -e #编辑计划任务00 22 * * * /opt/backup/mysqlbak.sh[root@localhost backup]# systemctl status crond #确保crond服务已运行● crond.service - Command Scheduler Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled) Active: active (running) since 二 2019-05-21 22:15:30 CST; 49min ago Main PID: 1493 (crond) Tasks: 1 CGroup: /system.slice/crond.service └─1493 /usr/sbin/crond -n
看完使用shell脚本自动备份MySQL数据库的具体操作这篇文章,大家觉得怎么样?如果想要了解更多相关,可以继续关注我们的行业资讯板块。
备份
脚本
数据
数据库
服务
服务器
目录
账号
成功
权限
目标
测试
任务
信息
文件
主机
信息库
兴趣
变量
名字
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
深圳九邦互联网科技有限公司
华服互联网科技怎么样
互联网属科技
平安科技 互联网
成都互联网科技公司
睿民互联网科技
多迪互联网科技有限公司
互联网科技有限公司 翻译
山东吉时兔互联网科技有限公司
现代科技和互联网有关系吗
科技互联网的估值
阿里互联网科技公司
广州市恰铎互联网科技有限公司
互联网科技创新的路径
江苏苏星互联网科技有限公司
互联网科技实习生岗位
半导体是互联网高科技吗
三亚科技创新互联网基地
每日互联网科技新闻
颐高云石互联网科技
百单网互联网科技有限公司怎么样
互联网与科技发展
礼当家互联网科技
美国互联网黑科技
字节跳动和互联网科技
996高科技互联网公司
乌鲁木齐新华智原互联网科技学校
西安小鹰速贷互联网科技有限公司
玉溪新华互联网科技好不好
四川互联网展示科技馆设计