使用shell脚本自动备份MySQL数据库的具体操作
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,不知道大家之前对类似使用shell脚本自动备份MySQL数据库的具体操作的文章有无了解,今天我在这里给大家再简单的讲讲。感兴趣的话就一起来看看正文部分吧,相信看完使用shell脚本自动备份MySQL数
千家信息网最后更新 2025年11月07日使用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安全错误
数据库的锁怎样保障安全
电脑数据库修复教程
事业单位网络技术工程考什么
互联网科技视频网站
csgo服务器对比
查看数据库锁表
重庆服务器虚拟化系统云主机
海康服务器电源灯绿灯一闪一闪
一个服务器相当于多少次请求
服务外包c语言软件开发
缓存替换数据库操作
幸福工厂能开服务器吗
网络安全法于哪一年开始生效
襄阳服务器回收费用多少
数据库sql语句标识符
逃离塔科夫节点和服务器
小学生网络安全小知识竞赛
深圳元征软件开发有限公司
黑色沙漠港服不能连接服务器
软件开发和复制软件
上海智能化网络技术转让操作
我局开展网络安全应急演练
喋血复仇什么服务器中国玩家多
ict奥秘揭晓之网络技术论文
江苏节能刀片服务器生产厂家
如何保存导出身份证数据库
林业规划调查设计数据库
时序数据库有哪些专业函数
西安中信通讯软件开发薪酬
河南网络技术分类产品介绍
株洲软件开发专业学校