学习笔记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
相关推荐
漂亮的小碎步丶21 小时前
【6】数据库事务与锁机制详解(附并发结算案例)
数据库·事务·锁机制
合方圆~小文21 小时前
4G定焦球机摄像头综合介绍产品指南
数据结构·数据库·人工智能
zxrhhm21 小时前
数据库中的COALESCE函数用于返回参数列表中第一个非NULL值,若所有参数均为NULL则返回NULL
数据库·postgresql·oracle
小学鸡!1 天前
DBeaver连接InfluxDB数据库
数据库
UVM_ERROR1 天前
RDMA Scheduler + TX + Completion RTL 开发经验分享
笔记·vscode·ssh·github·芯片
running up1 天前
MyBatis 核心知识点与实战
数据库·oracle·mybatis
薛不痒1 天前
MySQL中使用SQL语言
数据库·sql·mysql
黑客思维者1 天前
机器学习003:无监督学习(概论)--机器如何学会“自己整理房间”
人工智能·学习·机器学习·无监督学习
Vizio<1 天前
STM32HAL库开发笔记-GPIO输入
笔记·stm32·单片机·嵌入式硬件
chinalihuanyu1 天前
蓝牙开发笔记(BlueTooth,BLE,CH592)
笔记