背景 对于大多数企业,制定数据库灾备方案是一件非常有挑战的事情。根据企业所在行业、合规要求、数据规模、RPORTO要求的不同,数据库灾备目的和要求各不相同,投入成本也是不同的。数据库灾备解决方案提供实时数据备份能力,满足企业备份多样化选择。 灾备指南 创建DBS备份计划 直接在阿里云上购买即可,不作赘述 配置DBS备份计划 配置备份源和目标 另外,DBS支持以下环境数据库的备份恢复。 公网IP:Port的自建数据库ECS上的自建数据库云数据库通过专线VPN网关智能网关接入自建数据库根据我们的实际情况,这里我们全部选择:公网IP:Port的自建数据库 数据库类型支持、版本支持、环境支持,详见 备份数据库账号权限,详见 备份文件具体含义,详见 数据库地域选择,DBS提供同城备份和异地备份,详见 OSSBucket地域与DBS备份计划地域保持一致 DBS服务器IP,点击如何添加白名单可以查询,并开放DBS访问 物理备份前提条件:备份网关,详见 配置备份对象 在一个数据库实例中,可能有多个数据库,你可以选择备份全部数据库,或者选择备份其中一个数据库,或者备份几张表。 配置备份时间 这里你可以配置何时备份你的数据库。这里支持,按照周为周期的数据库备份计划,还可以选择具体的备份时间点。你可以根据实际的业务特点进行选择,例如你要备份的数据库的业务低峰时间为03:00,那么你可以让全量备份在这个时间发生。 另外,这里还可以选择,你是否进行增量备份。增量备份可以让你实现秒级RPO的数据库恢复能力,但是因为备份的数据量会更大,也会产生更高的成本。 配置生命周期 为了降低备份存储的成本,DBS还支持对OSS中备份集的生命周期管理。你可以配置全量、增量备份集在OSS中的转移、删除策略。例如,如下的配置定义了,一个新的全量备份集合产生之后,存储的最长时间为730天,超过730天的备份将会被删除。另外,新产生的备份将会被存储在OSS标准存储中,经过180天后,将转入OSS低频访问存储中,再经过365天将存储在OSS归档存储中。同样的,增量备份也可以配置类似的策略,详见 预检查 完成备份计划配置之后,预检查将会检查所有前面的配置选项、数据库连通性、数据库日志(如果开启增量)等内容。检查完成后,就会立刻启动备份计划。 最后 这样就完成一个备份计划的配置。这时候,就可以通过在查看该备份计划详情。 注意事项 为了保证用户隔离,建议专门为DBS创建一个全新的账号,并赋予该账号DBS所需的权限,操作如下:创建新用户createuserabcDBSidentifiedby123456;赋予权限grantSELECT,REPLICATIONSLAVE,REPLICATIONCLIENT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER,CREATEVIEW,SHOWVIEW,CREATEROUTINE,ALTERROUTINE,EVENT,TRIGGERon。toabcDBS;查看权限showgrantsforabcDBS; 配置权限参考 按照提示指引一步一步操作,需要注意:1。备份保留时长最低是7天;2。需要设置源数据库的serverid,否则增量备份不能成功拉取binlog,操作步骤如下;setglobalserverid某个不为1的数,然后在阿里控制台重新预检查设置my。cnf中serverid某个不为1的数看起来当我们首次配置备份计划时,阿里会立刻开始全量备份,而不会等到到达了配置的日期后才开始全量备份 启动备份计划 在完成备份任务配置之后,数据库备份DBS将在系统后台自动调度备份任务,如果你配置增量备份,那么还会在后台实时的进行增量数据的备份。 如果你需要查看某个具体的备份任务的状态,你可以通过DBS控制台进入某个具体的备份计划详情。例如,用户需要了解备份计划的备份状态,那么可以登录控制台,进入备份计划列表页,找到对应备份计划,点击管理进入备份备份配置页。 备份计划配置页 备份计划配置页展示了备份计划的配置详情,并可以调整配置。 全量数据备份 全量数据备份列表页中展示了备份计划的所有全量备份信息,点击查看备份集进入对应OSS存储目录。 增量日志备份 增量日志备份列表页中展示了备份计划的所有增量备份信息,点击查看备份集进入对应OSS存储目录。 启动恢复任务 数据库备份DBS提供数据恢复能力,支持秒级任意时间点恢复,并且用户可以灵活选择恢复对象。DBS除了支持整个实例恢复外,还支持多个数据库、单个数据库、多张表或一张表恢复,详见 操作步骤 在DBS控制台备份计划列表,选择要恢复数据库所在备份计划,点击管理进入备份计划,点击右上角恢复数据库按钮,具体步骤如下。 1。配置恢复时间点2。配置恢复对象3。预检查 配置恢复时间点 数据库备份DBS数据库恢复提供恢复日历,以日历方式展示数据库可恢复时间,用户可以快速定位恢复时间点。 配置恢复对象 数据库备份DBS数据库恢复提供库表映射功能,选中已选择数据库对象,点击编辑进行库表重命名。数据库备份DBS数据库恢复提供同名表冲突处理功能,并提供3个选项:遇到同名对象则失败(遇到同名对象,则恢复失败,用户要手工处理目标数据库同名对象) 假如,同名对象:DB1。table1,选择选项遇到同名对象则失败后,恢复失败,恢复目标实例上只有原始对象DB1。table1,用户要手工将原始对象DB1。table1重命名,并重新发起DBS恢复。遇到同名对象则跳过(同名对象不执行恢复,不同名对象正常执行恢复) 假如,同名对象:DB1。table1,选择选项遇到同名对象则跳过后,同名对象恢复失败,不同名对象恢复成功,恢复目标实例上只有原始对象DB1。table1,用户要手工将原始对象DB1。table1重命名,并重新发起DBS恢复。(不推荐)遇到同名对象则重命名(同名对象在恢复时会被重命名,恢复目标数据库上原有同名对象不动) 预检查 完成数据库恢复配置之后,预检查将会检查所有前面的配置选项、数据库连通性、数据库权限等内容。检查完成后,就会立刻恢复数据库。 以上数据参考:DBS产品技术文档 灾备测试 创建新的mysql用户,并赋予DBS所需权限 查看用户 selecthost,user,authenticationstringfrommysql。user 创建新用户 createuserabcDBSidentifiedby123456; 赋予权限 grantSELECT,REPLICATIONSLAVE,REPLICATIONCLIENT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER,CREATEVIEW,SHOWVIEW,CREATEROUTINE,ALTERROUTINE,EVENT,TRIGGERon。toabcDBS; 查看权限 showgrantsforabcDBS; DBS所需权限参考文档 设置备份计划 按照提示指引一步一步操作,需要注意以下两点:备份保留时长最低是7天;需要设置源数据库的serverid,否则增量备份不能成功拉取binlog 按照如下步骤操作:1。setglobalserverid某个不为1的数2。在阿里控制台重新预检查my。cnf设置时需要添加:〔mysqld〕 设置my。cnf中serverid某个不为1的数 看起来当我们首次配置备份计划时,阿里会立刻开始全量备份,而不会等到到达了配置的日期后才开始全量备份