Skip to content

MinIO 数据迁移(mc mirror)

通过 MinIO Client(mc)将源 MinIO 桶数据镜像同步到目标 MinIO。

NOTE

mc 更完整的用法可参考:Minio 客户端工具 (mc) 使用指南

一、下载与安装 mc

plain
# 下载 mc(国内镜像)
wget https://dl.minio.org.cn/client/mc/release/linux-amd64/mc

# 安装到 PATH,并赋予可执行权限
mv mc /usr/local/bin/
chmod +x /usr/local/bin/mc

# 验证
mc --version

二、配置源 / 目标别名

2.1 连接源 MinIO

plain
# 设置源 MinIO 别名(将 endpoint / ACCESSKEY / SECRETKEY 换成实际值)
mc alias set source http://source-minio-endpoint ACCESSKEY SECRETKEY

# 示例
mc alias set source183 http://10.156.156.183:9000 ACCESSKEY SECRETKEY

# 查看源端桶列表
mc ls source183

2.2 连接目标 MinIO

plain
# 设置目标 MinIO 别名
mc alias set target http://target-minio-endpoint ACCESSKEY SECRETKEY

# 示例
mc alias set target229 http://192.168.1.2:9000 ACCESSKEY SECRETKEY

# 查看目标端桶列表
mc ls target229

三、执行数据迁移

3.1 前台同步

plain
# 将源桶镜像到目标桶(示例:hse-safe → hse-safe)
mc mirror source183/hse-safe target229/hse-safe

3.2 后台同步

数据量大时建议后台执行:

plain
nohup mc mirror source183/srebro-demo target229/srebro-demo > mirror.log 2>&1 &

# 查看进度日志
tail -f mirror.log

3.3 校验结果

plain
# 查看目标桶对象
mc ls target229/srebro-demo

# 比较源与目标差异;输出为空表示两边文件/目录一致
mc diff source183/hse-safe target229/hse-safe

WARNING

迁移前确认目标桶已存在(或不存在时由策略允许自动创建),并核对密钥权限具备读写能力;生产环境建议先小桶试跑再全量 mirror

最近更新