Initial commit: Telegram Management System
Some checks failed
Deploy / deploy (push) Has been cancelled
Some checks failed
Deploy / deploy (push) Has been cancelled
Full-stack web application for Telegram management - Frontend: Vue 3 + Vben Admin - Backend: NestJS - Features: User management, group broadcast, statistics 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
50
database/scripts/backup_database.sh
Executable file
50
database/scripts/backup_database.sh
Executable file
@@ -0,0 +1,50 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 数据库备份脚本
|
||||
# 使用方法: ./backup_database.sh
|
||||
|
||||
# 配置
|
||||
DB_HOST="127.0.0.1"
|
||||
DB_USER="root"
|
||||
DB_PASSWORD=""
|
||||
DB_NAME="tg_manage"
|
||||
BACKUP_DIR="../backups"
|
||||
DATE=$(date +"%Y%m%d_%H%M%S")
|
||||
BACKUP_FILE="tg_manage_backup_${DATE}.sql"
|
||||
|
||||
# 创建备份目录
|
||||
mkdir -p $BACKUP_DIR
|
||||
|
||||
echo "开始备份数据库..."
|
||||
echo "数据库: $DB_NAME"
|
||||
echo "备份文件: $BACKUP_DIR/$BACKUP_FILE"
|
||||
|
||||
# 执行备份
|
||||
mysqldump -h$DB_HOST -u$DB_USER -p$DB_PASSWORD \
|
||||
--single-transaction \
|
||||
--routines \
|
||||
--triggers \
|
||||
--complete-insert \
|
||||
--add-drop-table \
|
||||
--extended-insert=FALSE \
|
||||
$DB_NAME > $BACKUP_DIR/$BACKUP_FILE
|
||||
|
||||
# 检查备份是否成功
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "✅ 数据库备份成功!"
|
||||
echo "备份文件大小: $(du -h $BACKUP_DIR/$BACKUP_FILE | cut -f1)"
|
||||
|
||||
# 压缩备份文件
|
||||
gzip $BACKUP_DIR/$BACKUP_FILE
|
||||
echo "✅ 备份文件已压缩: $BACKUP_DIR/$BACKUP_FILE.gz"
|
||||
|
||||
# 清理7天前的备份文件
|
||||
find $BACKUP_DIR -name "tg_manage_backup_*.sql.gz" -mtime +7 -delete
|
||||
echo "✅ 已清理7天前的旧备份文件"
|
||||
|
||||
else
|
||||
echo "❌ 数据库备份失败!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "备份完成!"
|
||||
Reference in New Issue
Block a user