MySQL数据库备份
2024-01-09 15:38:01
- 数据备份
mysqldump -u username -p dbname > backup.sql 例:mysqldump -u root -p mydb > /opt/mysql/sql/data-bak.sql
- 数据恢复
mysqldump -u username -p dbname < backup.sql 例:mysqldump -u root -p mydb < /opt/mysql/sql/data-bak.sql
- 备份策略
每天凌晨全量备份,备份路径/opt/mysql/sql,备份文件以时间命名 如:20240109.sql,备份文件最多保留15份。
- 执行脚本
sudo tee /opt/mysql/sql/data-bak.sh <<-'EOF' #!/bin/bash # 设置数据库相关信息 DB_USER="root" DB_PASSWORD="your_password" DB_NAME="mydb" # 设置备份文件路径 BACKUP_DIR="/opt/mysql/sql" # 获取当前日期 CURRENT_DATE=$(date +"%Y%m%d") # 创建备份文件名 BACKUP_FILE="$BACKUP_DIR/$CURRENT_DATE.sql" # 进行全量备份 mysqldump -u $DB_USER -p$DB_PASSWORD $DB_NAME > $BACKUP_FILE # 清理旧备份文件 DAYS_TO_KEEP=15 find $BACKUP_DIR -type f -name "*.sql" -mtime +$DAYS_TO_KEEP -exec rm -f {} \; echo "备份完成:$BACKUP_FILE" EOF # 执行权限 sudo chmod +x /opt/mysql/sql/data-bak.sh
- 执行计划
crontab -e # 使用 crontab -e 创建新的定时任务时,系统会打开一个编辑器供你添加任务,将下面任务添加后保存。
0 0 * * * /opt/mysql/sql/data-bak.sh
文章来源:https://blog.csdn.net/tongxin_tongmeng/article/details/135479324
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!