学习笔记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
相关推荐
姓蔡小朋友4 分钟前
Redis网络I/O模型
网络·数据库·redis
qq_3814549913 分钟前
Python学习技巧
开发语言·python·学习
im_AMBER16 分钟前
算法笔记 18 二分查找
数据结构·笔记·学习·算法
数据库学啊42 分钟前
专业的国产时序数据库哪个好
数据库·时序数据库
van久43 分钟前
.Net Core 学习: Razor Pages -- EF Core简介
学习·.netcore
爱吃面条的猿1 小时前
MySQL 随机日期/时间生成
数据库·mysql
以孝治家行动1 小时前
学习无止境 行动在进行—以孝治家义工暖心守护独居老人
学习·以孝治家
2501_939909051 小时前
Mysql 主从复制、读写分离
数据库·mysql
潇湘秦1 小时前
ORACLE_PDB_SID和ORACLE_SID的区别
数据库·oracle
colus_SEU2 小时前
【编译原理笔记】5.2 SDT Schemes
笔记·编译原理