在Debian系统上使用MinIO时,可以采用多种备份策略来确保数据的安全性和可恢复性。以下是一些常见的备份策略:
mc。如果没有安装,可以通过以下命令安装:wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
sudo mv mc /usr/local/bin/
mc以连接到你的MinIO服务器:mc alias set myminio http://minio-server:9000 ACCESS_KEY SECRET_KEY
mc cp命令将数据从源存储桶复制到目标存储桶:mc cp -r myminio/source-bucket/ destination-bucket/
或者,如果你想备份整个bucket:
mc cp -r myminio/source-bucket@myalias destination-bucket/
ls -l /path/to/backup/location/source-bucket
rsync,如果没有,可以使用包管理器安装。sudo apt-get install rsync # Debian/Ubuntu
rsync命令将MinIO的数据目录同步到本地或其他存储位置。rsync -avz --progress /path/to/minio/data /path/to/backup/location
注意:确保MinIO服务在备份期间不会写入数据,或者使用--delete选项来保持备份目录与源目录的一致性。
ls -l /path/to/backup/location
backup_minio.sh:#!/bin/bash
BACKUP_DIR="/path/to/backup"
MINIO_DATA_DIR="/path/to/minio/data"
TIMESTAMP=$(date +"%Y%m%d%H%M%S")
BACKUP_PATH="${BACKUP_DIR}/minio_backup_${TIMESTAMP}"
mkdir -p ${BACKUP_PATH}
rsync -avz --progress ${MINIO_DATA_DIR} ${BACKUP_PATH}
chmod +x backup_minio.sh
crontab设置定时任务,例如每天凌晨2点执行备份:crontab -e
添加以下行:
0 2 * * * /path/to/backup_minio.sh
mc命令创建一个备份仓库,用于存储备份数据。CREATE REPOSITORY `minio_repo` WITH S3ON LOCATION "s3://doris" PROPERTIES("s3.endpoint" = "http://10.16.10.6:9001","s3.access_key" = "IPzmVMkcHVxpMriSqsDn","s3.secret_key"="RgOpT7dd4GJFXfOLfjRpNAbkQyWKOVUKIMu33pEy","s3.region" = "us-east-1","use_path_style" = "true");
BACKUP SNAPSHOT ssb.snapshot_label1 TO minio_repo ON (dates) PROPERTIES ("type" = "full");
RESTORE SNAPSHOT demo.`snapshot_label2` FROM `minio_repo1` PROPERTIES("backup_timestamp"="2025-01-28-10-25-07","replication_num" = "1");