使用shell脚本自动备份MySQL数据库的具体操作
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,不知道大家之前对类似使用shell脚本自动备份MySQL数据库的具体操作的文章有无了解,今天我在这里给大家再简单的讲讲。感兴趣的话就一起来看看正文部分吧,相信看完使用shell脚本自动备份MySQL数
千家信息网最后更新 2025年02月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安全错误
数据库的锁怎样保障安全
二道区网络技术服务欢迎来电
三国杀十周年服务器挂了
佛山教育网络安全直播
手机录屏直播服务器密码
微信记录保存在服务器多久
c 数据库 类
网络技术应用课件教科版
2020网络安全周闭幕式
世界网络安全企业500强
网络安全监测措施有哪些
app软件开发学习网
数据库 between
软件开发安防系统设计
成都水果软件开发
hp服务器电源指示灯
互联网科技失误
怎么看服务器日志
美国与华为网络安全
网络安全 五点主张
上海星斗互联网科技有限公司
上海软件开发公司地址
qq服务器多少钱
图像识别软件开发哪家好
ccb服务器
imperva数据库安全
教育行业软件开发工作前景
管理服务器显示图标
我的世界澪pro版服务器
火绒安全软件服务器能用
azure云服务器免费