云数据库MySQL的备份文件如何恢复到自建数据库

发布时间:2018-02-28 17:52:10
数据库有很多的类型,如MySQL ,SQL Server(也就是我们常说的SQL 数据库) ,Redis 等,但是数据库 MySQL 版是使用最为广泛的数据库,能够广泛的应用于各个应用场景。云服务器上的数据库MySQL使用开源软件Percona Xtrabackup对数据库进行备份,因此我们能够使用该软件将云数据库MySQL的备份文件恢复到自建数据库中,阿里云代理商凯铧互联小编就通过下文介绍详细的操作步骤。
关于数据库MySQL版是如何备份数据,后面我有时间在和大家谈。
前置条件:
1】地MySQL数据库安装在64位的Linux系统中,且与云数据库MySQL版的版本相同。
注:因为软件的限制,现目前只能够支持将云数据 MySQL 的备份文件恢复到安装在 Linux系统中的自建的MySQL数据库之中。但是在linux系统下恢复的数据文件,能够在Windows和Linux操作系统中都正常的使用。
2】需要在操作系统中安装数据恢复工具Percona XtraBackup 2.2.9或以上版本。如果没有完成安装,请从Percona XtraBackup官网下载并安装。(如果需要帮助,可以直接通过本站的联系方式,联系阿里云代理商客服,会有专业技术人员为你提供专业指导及远程服务)
3】要确保作系统中已安装数据备份文件解压工具rds_backup_extract.sh。如果没有完成安装,请下载并安装。
 
具体操作步骤演示;
1】数据备份文件下载地址,具体操作步骤如下。
1、登录到您的RDS管理控制台
2、找到并选择需要数据备份源目标实例所在的地域
3、击目标实例的ID,进入基本信息页面
4、页面左侧导航栏中,选择备份恢复,进入备份恢复页面。
5、选择到数据备份标签页
6、选择查询备份文件的时间范围,然后鼠标单击查询
7、在数据备份的列表中,找到需要恢复的数据备份并进行下载,单击备份文件对应的下载。(如下图所示操作)
阿里云数据库
8、在实例备份文件下载窗口,单击复制外网地址,获取数据备份文件外网下载地址(如下图所示操作)
阿里云代理商查询
 
2】找到需要下载的数据库备份文件后,具体下载数据备份文件操作步骤:
1、录云服务器ECS
2、行如下命令,下载数据备份文件
       et -c '<数据备份文件外网下载地址>' -O <自定义文件名>.tar.gz
参数说明:
-c:启用断点续传模式
-O:将下载的结果保存为指定的文件(建议使用URL中包含的文件名)
注:当提示显示的进队为100%时,就表示文件下载已经完成
 
3】完成上一步操作之后,需要我们把下载的数据备份恢复到本地MySQL 数据库之中,具体操作步骤如下所示:
1、执行如下所示的命令,解压已经下载的数据备份文件
注:阿里云代理商在本文是以自定义路径/home/mysql/data为例进行演示的,当您在实际操作时,要根据实际情况将其替换成实际路径。
      bash rds_backup_extract.sh -f <数据备份文件名>.tar.gz -C /home/mysql/data
参数说明:
-f:指定要解压的备份集文件。
-C:指定文件要解压到的目录。可选参数,若不指定就解压到当前目录。
2、行如下命令,查询解压后生成的文件
      ls -l /home/mysql/data
当我们执行命令成功之后,系统就会返回如下图所示结果,这其中的蓝色字体为生成备份文件时RDS实例所包含的数据库。
MySQL数据库,数据备份恢复
3、行如下所示的命令,恢复解压好的备份文件
  innobackupex --defaults-file=/home/mysql/data/backup-my.cnf --apply-log /home/mysql/data
如果系统返回如下图所类似的结果,就说明备份文件已成功恢复到本地数据库
 
数据备份恢复,凯铧互联
4】为了能够避免产生版本问题,就需要修改backup-my.cnf参数,具体的操作步骤如下所示:
1、执行如下命令,以文本方式编辑backup-my.cnf文件
  vi /home/mysql/data/backup-my.cnf
2、执行如下命令,注释掉如下参数
  #innodb_fast_checksum
  #innodb_page_size
  #innodb_log_block_size
3、按Esc键,然后输入:wq进行保存并关闭编辑器
 
5】执行如下所示命令,修改文件属主,并确定文件所属为MySQL用户
  chown -R mysql:mysql /home/mysql/data
 
6】执行如下命令,启动MySQL进程
  mysqld_safe --defaults-file=/home/mysql/data/backup-my.cnf --user=mysql --datadir=/home/mysql/data &
 
6】执行如下命令,登录MySQL数据库以验证进程启动成功
  mysql -uroot
如果系统返回如下图所示的结果,进程启动成功,就说明我们已成功执行参数注释和修改文件属主
数据库恢复。
 
8】完成上述步骤后,我们的数据恢复就完成了,但是表mysql.user中不包含在RDS实例中创建的用户,需要新建。在新建用户前,执行如下所示命令
  delete from mysql.db where user<>’root’ and char_length(user)>0;delete from mysql.tables_priv where user<>’root’ and char_length(user)>0;flush privileges;
 
上文就是MySQL数据库的备份文件如何恢复到自建数据库的全部操作流程今天就说明到这,如果您的问题还是没有得到解决可以直接联系凯铧互联技术团队,阿里云代理商凯铧互联代理全系列阿里云产品,能够帮助用户申请专属折扣、优惠,同时还有专业的技术团队为用户提供一对一的技术帮助服务。如需折扣优惠/帮助可以直接阿里云服务器价格 www.bjkaihua.com,官网购买直接返现,更优惠。
 
关于我们:北京凯铧互联科技有限公司(简称凯铧互联)由多名前阿里云资深技术专家创立,核心员工来自阿里巴巴、腾讯等,作为阿里云,腾讯云,百度云,金山云重要的合作伙伴,专注于为企业用户提供云计算及云计算的解决方案。总部设在北京,并在内蒙设有办事处。做为一家综合性方案商,凯铧互联向各行业用户提供基于云计算的各种解决方案。为用户获得优质服务的同时,秉承"专业规划、周到服务"的服务理念,根据用户的实际情况,充分考虑各种网络资源的特点及功效,为用户量身定做一套适合于其实际应用需求的网络应用方案。帮助用户利用互联网的力量展开新的营销方式,并大大缩短了项目实施周期,获得用户的一致好评。