学习笔记081——如何备份服务器中MySQL数据库数据?

方法

可以通过编写sh脚本 的方式,结合Linux中的crontab定时任务来实现定时备份数据的功能。

sh脚本如下:

sh 复制代码
#!/bin/bash
 
# 要备份的数据库
DB_NAME="wms"
# 数据库账号
DB_USER="root"
# 数据库密码
DB_PASSWORD="123456"
# 数据备份存放目录
BACKUP_DIR="/home/htl/backup"
mkdir -p $BACKUP_DIR
 
# 备份文件名
BACKUP_FILE="$BACKUP_DIR/$DB_NAME-$(date +%Y%m%d%H%M%S).sql"
 
# 执行数据库备份
mysqldump -u $DB_USER -p$DB_PASSWORD $DB_NAME > $BACKUP_FILE
 
# 压缩备份文件(可选)
gzip $BACKUP_FILE
 
# 删除旧的备份文件-保存近七天的(可选)
find $BACKUP_DIR -name "*.sql.gz" -type f -mtime +7 -exec rm -f {} \;

crontab定时任务中添加:

bash 复制代码
# 打开crontab配置文件
sudo crontab -e

# 插入
# 每天晚上1点执行一次  /opt 目录下的backup脚本
# 执行频率根据情况调整
0 1 * * * sh /opt/backup.sh

# 查看crontab配置文件
sudo crontab -l
相关推荐
jiushun_suanli17 分钟前
FPGA(现场可编程门阵列)详解
经验分享·学习·fpga开发
q***58191 小时前
【SQL】MySQL中的字符串处理函数:concat 函数拼接字符串,COALESCE函数处理NULL字符串
数据库·sql·mysql
懒羊羊不懒@1 小时前
【MySQL | 基础】多表查询
数据库·sql·mysql
百***6971 小时前
redis 使用
数据库·redis·缓存
mit6.8241 小时前
[Column] 构建十亿/s级DB | 索引DB&RTDB | Kafka 为中心 | Rust 构建引擎
数据库
不会写代码的里奇1 小时前
VMware Ubuntu 22.04 NAT模式下配置GitHub SSH完整教程(含踩坑实录+报错_成功信息对照)
linux·经验分享·笔记·git·ubuntu·ssh·github
_不会dp不改名_1 小时前
HCIP笔记5--OSPF域间路由、虚链路、认证
网络·笔记·hcip
q***0561 小时前
在Mysql环境下对数据进行增删改查
数据库·mysql
爬山算法1 小时前
Redis(124)Redis在电商系统中的应用有哪些?
数据库·redis·缓存
武子康2 小时前
Java-170 Neo4j 事务、索引与约束实战:语法、并发陷阱与速修清单
java·开发语言·数据库·sql·nosql·neo4j·索引