温馨提示×

ubuntu sqladmin备份怎么操作

小樊
41
2025-12-02 06:49:43
栏目: 云计算

Ubuntu 上使用 SQLAdmin 进行数据库备份

一 通过 Web 界面备份

  • 登录 SQLAdmin 的 Web 管理界面(浏览器访问服务器地址与端口,输入账号密码)。
  • 在左侧或顶部菜单找到备份/Export相关入口。
  • 选择目标数据库,配置备份选项(如备份名称、类型、保存路径/文件名等)。
  • 如需要定期执行,设置备份计划/定时任务
  • 点击开始备份,等待完成并查看生成文件;必要时用导入功能做一次完整性验证

二 命令行自动化备份脚本

  • 准备备份目录并赋权:
    • sudo mkdir -p /backup/mysql
    • sudo chown mysql:mysql /backup/mysql
  • 创建备份脚本(示例为 /usr/local/bin/backup_db.sh):
    • #!/bin/bash DB_USER=“your_username” DB_PASS=“your_password” DB_NAME=“your_database” BACKUP_DIR=“/backup/mysql” DATE=$(date +“%Y%m%d%H%M%S”) BACKUP_FILE=“$BACKUP_DIR/${DB_NAME}_${DATE}.sql.gz” mysqldump -u “$DB_USER” -p"$DB_PASS" --single-transaction --quick “$DB_NAME” | gzip > “$BACKUP_FILE” if [ $? -eq 0 ]; then echo “$(date ‘+%F %T’) Backup succeeded: $BACKUP_FILE” else echo “$(date ‘+%F %T’) Backup failed!” >&2 fi
  • 赋权并测试:
    • sudo chmod +x /usr/local/bin/backup_db.sh
    • /usr/local/bin/backup_db.sh
  • 加入定时任务(每天 02:00 执行):
    • crontab -e
    • 0 2 * * * /usr/local/bin/backup_db.sh >> /var/log/backup_db.log 2>&1
  • 说明:示例使用了 mysqldump 的**–single-transaction**(InnoDB 一致性)与**–quick**(减少内存占用)选项;如为 MyISAM 或需强一致,可改用 --lock-tables。

三 备份策略与维护要点

  • 保留策略:定期清理旧备份,示例保留7
    • find /backup/mysql -type f -name “*.sql.gz” -mtime +7 -delete
  • 安全性:备份文件含敏感数据,设置严格权限(如仅 mysql 用户可读),必要时加密与异地/云存储存放。
  • 监控与验证:脚本写入日志,定期手动恢复演练验证可用性;监控磁盘空间与任务执行状态。

四 常见问题与快速排查

  • 权限或连接失败:确认数据库用户具备SELECT/SHOW VIEW/LOCK TABLES/RELOAD等权限,且主机、端口、密码正确。
  • 一致性问题:InnoDB 建议使用**–single-transaction**;MyISAM 需加读锁或选择低峰期执行。
  • 大库备份:使用**–quickgzip**流式压缩,避免占用过多内存;必要时按表/分库拆分备份。
  • 定时任务未执行:检查 crontab 语法、脚本可执行权限与日志输出路径;确保环境 PATH 正确。

0