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
也可以通过网页查看
领取专属 10元无门槛券
私享最新 技术干货