mc(MinIO Client)mc是MinIO官方提供的命令行工具,支持数据复制、镜像同步等功能,是最常用的备份方式之一。
wget下载mc二进制文件,赋予执行权限后移动到系统路径;使用mc alias set命令配置MinIO服务器别名(需替换为实际的服务器地址、访问密钥和秘密密钥)。mc cp -r myminio/mybucket /path/to/backup/location命令,将指定桶的数据递归复制到本地或远程目录。mc mirror myminio/mybucket backup-minio/mybucket-backup命令,实现源桶与目标桶的完全同步(包括新增、修改和删除操作,确保数据一致性)。crontab -e添加定时任务(如每天凌晨2点执行备份),结合mc mirror实现定期自动备份。rsync工具同步数据rsync是Linux系统自带的文件同步工具,适合将MinIO数据目录(默认路径为/data)同步到本地或其他存储设备。
sudo apt install rsync安装;使用rsync -avz --progress /path/to/minio/data /path/to/backup/target命令,递归同步数据并显示进度(-a保留文件属性,-z压缩传输,--progress显示进度)。--delete选项(删除目标目录中源目录不存在的文件),确保备份与源数据完全一致。若MinIO运行在Docker容器中,可通过备份容器数据卷实现数据保存。
docker stop minio-container(替换为实际容器名称)。docker cp minio-container:/data /path/to/backup/location命令,将容器内的/data目录(MinIO数据存储路径)复制到本地。docker start minio-container。MinIO支持创建桶的快照(Snapshot),用于快速备份和恢复数据。
mc admin snapshot create source-minio/mybucket my-snapshot命令,为指定桶创建快照(my-snapshot为快照名称)。mc admin snapshot restore source-minio/mybucket my-snapshot /path/to/restore/命令,将快照数据恢复到指定目录。跨区域复制(Cross-Region Replication, CRR)是MinIO的高级功能,可将数据从一个实例自动同步到另一个实例(支持不同地理位置),实现实时备份。
mc admin policy add命令创建复制策略(指定目标实例地址和密钥),再通过mc admin policy set命令将策略应用到指定桶。结合restic、rclone等第三方工具,可实现更灵活的备份管理(如加密、增量备份、云存储集成)。
restic):
restic:sudo apt install restic。restic init --repo /path/to/restic/repo。restic login(输入密码)。restic backup /path/to/minio/backup/location(将MinIO备份目录添加到restic仓库)。无论选择哪种备份方式,均可通过cron定时任务实现定期自动备份,减少人工干预。
crontab -e,添加如下内容(每天凌晨2点执行备份脚本):0 2 * * * /path/to/your/backup_script.sh
mc mirror或rsync命令,例如:#!/bin/bash
mc mirror myminio/mybucket /path/to/backup/location
ACCESS_KEY和SECRET_KEY)。