Linux环境Minio的数据迁移、备份和恢复
1、请先确保服务器上已安装Minio客户端(已安装可忽略)
下载Linux版客户端文件
安装Minio客户端:
# 创建客户端安装目录mkdir -p /home/minio/client# 将二进制文件mc上传到client目录下,并对其添加可执行权限cd /home/minio/clientchmod +x mc
到此Minio客户端就安装好了。
2、服务器说明
假定现在有两台Linux环境上部署的Minio服务器,分别是旧服务器A和新服务器B,所有操作都在新服务器B上进行。
3、为Minio服务器设置别名
在新服务器B上为服务器A和B分别设置别名
# 切换到客户端程序目录(即mc文件所在目录)cd /home/minio/client# 在新服务器B设置服务器A的别名./mc alias set minio_data_A http://11.11.11.110:9000 yourusername youruserpassword# 在新服务器B设置服务器B的别名./mc alias set minio_data_B http://22.22.22.220:9000 yourusername youruserpassword# 查看已设置的Minio服务器的别名,看到上面设置的两个别名在列出的列表中即OK./mc alias list
说明:
(a)minio_data_A和minio_data_B就是设置的别名;
(b)http://11.11.11.110:9000和http://22.22.22.220:9000是服务器地址;
(c)yourusername表示服务器上Minio服务的用户账号;
(d)youruserpassword表示服务器上Minio服务的用户密码。
4、从服务器A迁移数据到服务器B
# 切换到客户端程序目录(即mc文件所在目录)cd /home/minio/client# 将服务器A上名为“bucket-demo”的桶的数据迁移到服务器B的“bucket-demo”桶中./mc cp --recursive minio_data_A/bucket-demo/ minio_data_B/bucket-demo/# 将服务器A上所有数据迁移到服务器B中./mc cp --recursive minio_data_A minio_data_B
注意:
一次迁移某个服务器所有数据(不指定桶名称)时,则要求新服务器B上必须存在迁移服务器A上所有的桶,否则会提示找不到对应桶而无法迁移数据。
5、备份服务器B的数据
# 切换到客户端程序目录(即mc文件所在目录)cd /home/minio/client# 将服务器B上名为bucket-demo的桶的数据备份到/home/minio/backup/bucket-demo目录./mc cp --recursive minio_data_B/bucket-demo/ /home/minio/backup/bucket-demo# 将服务器B上所有数据备份到/home/minio/backup/目录./mc cp --recursive minio_data_B /home/minio/backup
6、在Minio服务器上根据备份文件恢复数据
# 切换到客户端程序目录(即mc文件所在目录)cd /home/minio/client# 将/home/minio/backup/目录下的备份数据恢复到服务器B,注意备份文件目录路径需以'/'结尾./mc cp --recursive /home/minio/backup/ minio_data_B# 将某个桶(比如:bucket-demo)的备份数据恢复到服务器B的指定桶(比如:bucket-demo2)中./mc cp --recursive /home/minio/backup/bucket-demo/ minio_data_B/bucket-demo2
注意:
(a)可以将某个服务器的备份数据恢复到任意服务器(而不仅仅是原服务器)中;
(b)可以将某个服务器的某个桶的备份数据恢复到任意服务器的任意一个桶(桶和服务器都可以不同)中;
(c)迁移、备份和恢复数据时,若提示某个目录不存在,按提示路径创建即可。