利用DBS备份ECS自建数据库

背景:
        DBS是阿里云对ECS自建数据库或者线下IDC自建数据库做异地备份的一个补充,适用于对安全、备份容灾有一定要求的企业或者个人,DBS的规格选择有点像中国移动的套餐,有适合于经常出差的商务人士的全球通(medium、large、xlarge),也有适用小老百姓的神州行(micro、small)。每个规格都对应一定的备份备份流量,规格越大,流量就越多。不管是商务人士还是小老百姓,当你流量用完后都可以升级到更高规格或按需付费。

DBS官网介绍:https://www.aliyun.com/product/dbs
DBS规格介绍:https://help.aliyun.com/document_detail/84372.html

一、购买数据库备份DBS

        确认好自己要备份的数据库类型后,就可以在DBS官网首页进行购买,如果有多个数据库实例需要备份就需要购买多个,如:我有2个MySQL服务器,分别是MySQL5.6和MySQL8.0,1个SQL Server 2012数据库,如果我全部都要备份则需要购买3个DBS进行备份。今天以1个MySQL数据库为例着手演示怎么购买并配置备份规则。
        根据自己备份的频率和数据量的大小确定购买备份的规格(建议和服务器备份在不同的地域):
利用DBS备份ECS自建数据库
        如果之前没有开通过OSS,则可以购买对应的存储包:
利用DBS备份ECS自建数据库

二、配置备份计划

        购买成功后需要到管理控制台创建备份计划
(配置备份计划虽然简单,但需要操作的步骤有点多,需要一步一步的来,不能着急)
DBS物理备份文档:https://help.aliyun.com/document_detail/94675.html
添加备份网关文档:https://help.aliyun.com/document_detail/93250.html
利用DBS备份ECS自建数据库

        1、创建备份计划,添加备份网关,此时我们可以看到”备份网关“处是空白的,安装成功后此处可以看到备份网关对应的实例ID:
利用DBS备份ECS自建数据库

        2、再点击“添加备份网关”:
利用DBS备份ECS自建数据库

        3、根据系统类型选择Linux或Windows,目前只支持这两种,应该对满足绝大多数用户的需要了吧。(建议先看说明),如果是跨地域、备份线下IDC或服务器在其它云厂商请选择“公网”,如果ECS和DBS在同一个地域可以尝试选择“ECS私网/VPC”。利用DBS备份ECS自建数据库
        4、执行java -version查看ECS服务器是否有安装JRE(如果有安装,本步骤可忽略)。利用DBS备份ECS自建数据库

参考添加备份网关:https://help.aliyun.com/document_detail/93250.html
执行yum install java-1.8.0-openjdk –y 安装JRE。
再执行java –version,若如下提示则说明安装JRE成功。
利用DBS备份ECS自建数据库

        5、JRE安装成功后,再执行部署命令“”,“一定要注意是公网还是ECS私网/VPC ”,如果选错了命令,安装文件就不能正常获取。(本例使用的是公网,非截图所示”ECS私网/VPC“)
利用DBS备份ECS自建数据库
可看到下载还是非常快速的,有近16M,网速真不是盖的。
利用DBS备份ECS自建数据库

        6、文件下载完成后,会自动开始进行初始化,根据提示输入1或者回车使用默认配置就可以了。
利用DBS备份ECS自建数据库

        7、输入1接受协议:
利用DBS备份ECS自建数据库

        8、“回车“使用默认路径:
利用DBS备份ECS自建数据库

        9、最后一步会提示输入AccessKey信息,如果之前没有使用过,可通过下图的方式进行获取(AK信息相当于人的身份信息,更多AK的介绍可见:
https://help.aliyun.com/document_detail/117142.html
利用DBS备份ECS自建数据库

        10、保存AK信息。
利用DBS备份ECS自建数据库

        11、输入对应的AK信息后再次回车:
利用DBS备份ECS自建数据库

        12、输入AK信息后提示安装完成:
利用DBS备份ECS自建数据库

        13、现在我们可以到管理控制台”备份网关“处进行查看,可以看到当前内网IP与ECS服务器IP是一致的,说明我们”备份网关“的插件是安装OK的。
利用DBS备份ECS自建数据库

        14、我们再次回到”备份计划“列表,配置”配置计划“,可以看到”备份网关“自动多了一个选项。利用DBS备份ECS自建数据库

        15、将标注“星号“的地方按实际情况填写,如果有购买对应地域或全国通用的的OSS存储,则选择”用户OSS“,如果没有购买建议选择”OSS内置存储“。
(如果对账号权限不清楚的,可以查看旁边的”账号说明“:
https://help.aliyun.com/document_detail/69076.html
利用DBS备份ECS自建数据库

        16、设置实际情况填写备份频率和保留时间,”预检查并启动“将检查填写的密码和环境是否已就位。
利用DBS备份ECS自建数据库

第一次初始化的时候就初始失败了,点击旁边的”叹号“,可以查看具体的原因并根据提示进行修复就可以了(第一次输入时,把密码填错了,要仔细):利用DBS备份ECS自建数据库

        17、在”备份计划“列表找到”管理“修改为正确的账号和密码再次启动:利用DBS备份ECS自建数据库

非常不幸的是没有按第15步进行账号授权,现在使用高权限账号进行授权,登录后,使用“解决方案“提示的命令进行授权:
利用DBS备份ECS自建数据库

授权后再刷新权限使其生效flush privileges。
利用DBS备份ECS自建数据库

        18、 再次回到”备份计划“列表,找到“启动“按钮并启动。
利用DBS备份ECS自建数据库

        19、 现在一切顺利通过,点击”立即启动“按钮。
利用DBS备份ECS自建数据库

三、启动备份计划

        1、我们可以在 “备份计划”列表中看到当前任务处于“运行中”
利用DBS备份ECS自建数据库

        2、点击“备份计划ID”,可以看到当前“全量数据备份”已处于“初始化中”状态,初始化完成后即可看到第一次全量备份。
利用DBS备份ECS自建数据库

四、检查成果

        1、我们可以看到“全量数据备份”处已创建了三个备份。
利用DBS备份ECS自建数据库

        2、我们到OSS的管理控制台,可以看到已创建的三个备份已保存在对应的Bucket了。
利用DBS备份ECS自建数据库

到此,我们的DBS备份就算是完成了。

五、填坑

        如果在启动备份计划,初始化后是提示“异常”。

利用DBS备份ECS自建数据库
        请点击右侧“管理”
利用DBS备份ECS自建数据库

        会看到具体的提示信息,我们到系统下找到对应的日志文件进行查看
“/usr/local/aliyun/dbs_agent/dbbackup/s1jzj1i4r61y_dbbackup.log”。

        下期预告:下期我们再直接在OSS中查询已备份的数据,目前只支持逻辑备份:
https://help.aliyun.com/document_detail/97632.html
利用DBS备份ECS自建数据库
我在初始化的过程中,安装了如下模块:
yum -y install perl-Digest-MD5
yum -y install perl-DBD-MySQL
        上面两个模块都会在提示异常后在对应的日志中找到,可能提示的异常模块不一样,但肯定有提示;
        最后,这两个模块都安装完成后,还是备份不成功,一直接提示“Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)”,这个原因是因为MySQL的配置文件my.cnf中mysqld的socket=/var/lib/mysql/mysql.sock和client中的socket保持一致。
利用DBS备份ECS自建数据库

上一篇:listview 设置数组为空


下一篇:基于Prometheus+Grafana的应用监控系统建设(一)