将MySQL备份存储到Minio Server,作为异地备份

mysql目前备份在本机,现申请了一台服务器做异地备份,有想过使用scp、ftp等方案,因需求单一、存储服务器操作系统未确定等原因,最终选择了minio做存储备份方案。

一、工具介绍

Minio 是一个对象存储服务。非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。

Minio支持Windows、Linux、FreeBSD等系统。

Minio通过纠删码和位衰减技术来保护数据

mc为minio的客户端,支持Windows、Linux、FreeBSD等系统。

二、部署存储服务器

存储备份服务器使用CentOS7操作系统、1颗2603V4 六核1.7G 500W铂金单电 32G内存 2TB 7.2K SAS硬盘*4块,这里有考虑过使用minio自带纠删码的技术做数据保护、因服务器带有raid卡,综合考虑磁盘容量和成本,使用了raild5技术。如果使用minio纠删码技术,磁盘最少4块,最大不超过16块。minio纠删码技术的磁盘实际使用量为磁盘总量的一半,但是丢失一半数量(N/2)的硬盘,,您仍然可以恢复数据。Minio纠删码是作用在对象级别,可以一次恢复一个对象,而RAID是作用在卷级别,数据恢复时间很长。 Minio对每个对象单独编码,存储服务一经部署,通常情况下是不需要更换硬盘或者修复。Minio纠删码的设计目标是为了性能和尽可能的使用硬件加速。如果想使用minio纠删码技术,可以提疑问。

1,安装minio服务

wget https://dl.minio.io/server/minio/release/linux-amd64/minio

chmod +x minio

创建/data目录,用来作为minio的存储目录

mkdir /data

启动minio服务

./minio server /data

启动如下图所示,如果要后台运行,可以使用下面命令

nohup minio server /data &

会生成nohup.out文件夹,里面包含accesskey和secretkey

需要打开9000端口

三、在mysql服务器上部署mc(minio客户端)

mysql服务器使用centos7操作系统

安装mc

wget https://dl.minio.io/client/mc/release/linux-amd64/mc

chmod +x mc

添加minio服务器

mc config host add myminio http://10.23.1.102:9000 KTZWRZX6FQM1TK69S8UY vty8VQzQv1YfekHvQlQGlY+hrd9Ws3J/0StinJlr

myminio是别名,你可以改成你想要的名字

创建mysql备份桶

mc mb myminio/mysql-backup

查看mysql备份桶是否成功

mc ls myminio

也可以通过web界面来查看

访问地址:http://10.23.1.102:9000输入accesskey和secretkey即可。

在mysql服务器上执行备份,并复制到异地备份服务器上

先备份数据库test,备份到mysql-backup文件夹,文件名称为test.dmp

mysqldump test > mysql-backup/test.dmp

使用mc来复制备份的test.dmp

mc cp mysql-backup/test.dmp myminio/mysql-backup

验证是否成功!

mc ls myminio/mysql-backup

也可以通过网页查看

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181023G1AEUG00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

同媒体快讯

扫码关注云+社区

领取腾讯云代金券