温馨提示×

ubuntu mariadb怎么备份

小樊
37
2026-09-22 21:13:59
栏目: 云计算

在 Ubuntu 上备份 MariaDB 常见、可靠的方式是使用官方工具 mysqldump,也可以结合物理备份工具(如 mariabackup)。下面按常见场景说明。


一、使用 mysqldump 备份(最常用)

1️⃣ 备份单个数据库

mysqldump -u root -p dbname > dbname_$(date +%F).sql

2️⃣ 备份所有数据库

mysqldump -u root -p --all-databases > all_db_$(date +%F).sql

3️⃣ 备份并压缩

mysqldump -u root -p --all-databases | gzip > all_db_$(date +%F).sql.gz

4️⃣ 只备份结构或数据

# 只结构
mysqldump -u root -p --no-data dbname > schema.sql

# 只数据
mysqldump -u root -p --no-create-info dbname > data.sql

二、使用配置文件避免输入密码(可选)

编辑 /root/.my.cnf:

[mysqldump]
user=root
password=yourpassword

然后可直接执行:

mysqldump --all-databases > backup.sql

⚠️ 注意权限:

chmod 600 /root/.my.cnf

三、使用 mariabackup(物理热备,适合大库)

1️⃣ 安装

sudo apt install mariadb-backup

2️⃣ 全量备份

mariabackup --backup \
  --target-dir=/backup/mariadb \
  --user=root --password=yourpassword

3️⃣ 准备备份

mariabackup --prepare --target-dir=/backup/mariadb

✅ 适合 几十 GB 以上数据库


四、自动定时备份(cron)

编辑定时任务:

crontab -e

每天凌晨 2 点备份:

0 2 * * * mysqldump -u root -p'password' --all-databases | gzip > /backup/db_$(date +\%F).sql.gz

五、恢复数据库

恢复 SQL 备份

mysql -u root -p dbname < dbname.sql

恢复压缩备份

gunzip < dbname.sql.gz | mysql -u root -p dbname

六、推荐备份策略

场景 建议
小库 (<10GB) mysqldump
大库 mariabackup
生产环境 每日全备 + binlog
重要数据 异地/云存储

如果你告诉我:

  • 数据库大小
  • 是否生产环境
  • 是否需要自动备份

我可以帮你写一套完整备份脚本。

0 踩