参照 https://help.aliyun.com/knowledge_detail/41817.html

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

更新时间:2017-07-27 14:52:13

 

云数据库MySQL版使用开源软件Percona Xtrabackup对数据库进行备份,所以您可以使用该软件将云数据库MySQL的备份文件恢复到自建数据库中,本文将介绍详细的操作步骤。

关于云数据库MySQL版如何备份数据,请参见备份RDS数据

前提条件

  • 本地MySQL数据库安装在64位的Linux系统中,且与云数据库MySQL版的版本相同。

    说明:由于软件限制,目前只支持将云数据库MySQL的备份文件恢复到安装在Linux系统中的自建MySQL数据库中。但在Linux下恢复的数据文件,可以在Windows和Linux操作系统中正常使用。

  • 操作系统中已安装数据恢复工具Percona XtraBackup 2.2.9或以上版本。若未安装,请从Percona XtraBackup官网下载,安装指导请参见官方文档

  • 操作系统中已安装数据备份文件解压工具rds_backup_extract.sh。若未安装,请点击下载

操作步骤

  1. 获取数据备份文件下载地址,具体操作步骤如下。

    1. 登录RDS管理控制台

    2. 选择目标实例所在地域。

    3. 单击目标实例的ID,进入基本信息页面。

    4. 在左侧导航栏中,选择备份恢复,进入备份恢复页面。

    5. 选择数据备份标签页。

    6. 选择查询的时间范围,然后单击查询

    7. 在数据备份列表中,找到要下载的数据备份,并单击其对应的下载,如下图所示。

    8. 实例备份文件下载窗口,单击复制外网地址,获取数据备份文件外网下载地址,如下图所示。

  2. 下载数据备份文件,具体操作步骤如下。

    1. 登录云服务器ECS。

    2. 执行如下命令,下载数据备份文件。

      1. wget -c '<数据备份文件外网下载地址>' -O <自定义文件名>.tar.gz

      参数说明:

      • -c:启用断点续传模式。

      • -O:将下载的结果保存为指定的文件(建议使用URL中包含的文件名)。

        说明:若提示显示100%进度,则表示文件下载完成。

  3. 将下载的数据备份恢复到本地MySQL数据库中,具体操作步骤如下。

    1. 执行如下命令,解压已下载的数据备份文件。

      1. bash rds_backup_extract.sh -f <数据备份文件名>.tar.gz -C /home/mysql/data

      参数说明:

      • -f:指定要解压的备份集文件。

      • -C:指定文件要解压到的目录。可选参数,若不指定就解压到当前目录。

    2. 执行如下命令,查询解压后生成的文件。

      1. ls -l /home/mysql/data

      命令执行成功后,系统会返回如下结果,其中蓝色字体为生成备份文件时RDS实例所包含的数据库。

    3. 执行如下命令,恢复解压好的备份文件。

      1. innobackupex --defaults-file=/home/mysql/data/backup-my.cnf --apply-log /home/mysql/data

      若系统返回如下类似结果,则说明备份文件已成功恢复到本地数据库。

  4. 为避免版本问题,需修改backup-my.cnf参数,具体操作步骤如下。

    1. 执行如下命令,以文本方式编辑backup-my.cnf文件。

      1. vi /home/mysql/data/backup-my.cnf
    2. 执行如下命令,注释掉如下参数。

      1. #innodb_fast_checksum
      2. #innodb_page_size
      3. #innodb_log_block_size
    3. Esc键,然后输入:wq进行保存并关闭编辑器。

  5. 执行如下命令,修改文件属主,并确定文件所属为MySQL用户。

    1. chown -R mysql:mysql /home/mysql/data
  6. 执行如下命令,启动MySQL进程。

    1. mysqld_safe --defaults-file=/home/mysql/data/backup-my.cnf --user=mysql --datadir=/home/mysql/data &
  7. 执行如下命令,登录MySQL数据库以验证进程启动成功。

    1. mysql -uroot

    若系统返回如下结果,进程启动成功,则说明已成功执行参数注释和修改文件属主。

  8. 恢复完成后,表mysql.user中不包含在RDS实例中创建的用户,需要新建。在新建用户前,执行如下命令。

    1. 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;

1028阿里RDS如何恢复云数据库MySQL的备份文件到自建数据库的更多相关文章

  1. 恢复云数据库MySQL的备份文件到自建数据库遇到的报错

    报错信息 : 恢复云数据库MySQL的备份文件到自建数据库,自建数据库版本5.6.36. 按照阿里云文档操作,启动数据库报错 -- :: [ERROR] /application/mysql/bin/ ...

  2. 恢复阿里云RDS云数据库MySQL的备份文件到自建数据库

    云数据库MySQL版使用开源软件Percona Xtrabackup对数据库进行备份,所以您可以使用该软件将云数据库MySQL的备份文件恢复到自建数据库中,本文将介绍详细的操作步骤. 关于云数据库My ...

  3. 阿里RDS备份恢复

    未使用root用户操作: 数据库版本要一致 数据目录:/data/mysqlbak/ 先按阿里给的步骤操作,最后出现一步出现,无法找到back_xxx.conf,但该文件已经存在.解决方法: sudo ...

  4. RDS for MySQL 逻辑备份文件恢复到自建数据库

    使用MySQL自带的 mysqldump 工具可以通过逻辑备份文件恢复数据库,本文将介绍详细的逻辑备份恢复数据库操作步骤. 说明 通过物理备份文件恢复到自建数据库请参见RDS for MySQL 物理 ...

  5. mysql操作入门基础之对数据库和表的增删改查

    一.数据库管理-- 1.登陆数据库 mysql -u root -p; -- 2.查看数据库服务器所有数据库 SHOW DATABASES; -- 3.创建数据库 CREATE DATABASE My ...

  6. 数据库 : Mysql - 日常应用

    #登录MYSQL数据库 MYSQL -u root -p #显示所有数据库 SHOW databases; #显示当前数据库与应用程序间进行了多少条连接 SHOW processlist; #使用某一 ...

  7. mysql远程连接只显示部分数据库问题

    项目变更了环境,数据库换了环境,所以用navicat连接数据库,结果只能看到部分数据库. 看下高级设置,就只有两个库. 表示很奇怪,难道我的ip被禁止了吗,进入服务器查看连接用户权限 1. 首先查看服 ...

  8. 阿里云RDS数据库备份文件恢复到本地mysql数据库

    一.安装mysql和xtrabackup  (1)安装mysql 因为RDS是5.6版本,所以我们本地的mysql数据库要与RDS版本对应. rpm -ivh http://repo.mysql.co ...

  9. 阿里云 RDS for MySQL 物理备份文件恢复到自建数据库

    想把阿里云的Mysql 生成的RAS 文件.tar文件 恢复到本地自建mysql, 遇到的坑.希望帮助大家 阿里云提供的地址 https://help.aliyun.com/knowledge_det ...

随机推荐

  1. 在linux下如何使用yum查看安装了哪些软件包

    $yum list installed //列出所有已安装的软件包 yum针对软件包操作常用命令: 1.使用YUM查找软件包 命令:yum search 2.列出所有可安装的软件包 命令:yum li ...

  2. [Scala] 实现 NDCG

    一.关于 NDCG [LTR] 信息检索评价指标(RP/MAP/DCG/NDCG/RR/ERR) 二.代码实现 1.训练数据的加载解析 import scala.io.Source /* * 训练行数 ...

  3. css3图片模糊过滤特效

    体验效果:点击这里查看效果 代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...

  4. [学习笔记] 模拟退火 (Simulated Annealing)

    真没想到这东西真的在考场上用到了...顺便水篇blog以示诈尸好了(逃 模拟退火算法 模拟退火是一种随机化算法, 用于求函数的极值qwq 比如给出一个问题, 我们要求最优解的值, 但是可能的方案数量极 ...

  5. Alpha第十天

    Alpha第十天 听说 031502543 周龙荣(队长) 031502615 李家鹏 031502632 伍晨薇 031502637 张柽 031502639 郑秦 1.前言 任务分配是VV.ZQ. ...

  6. 201621123040《Java程序设计》第六周学习总结

    1.本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图或相关笔记,对面向对象思想进行一个总结 2.书面作业 2.1clone方法 2.1.1在te ...

  7. 2018上c语言第0次作业

    随笔: 1.翻阅邹欣老师博客关于师生关系博客,并回答下列问题,每个问题的答案不少于500字: (1)最理想的师生关系是健身教练和学员的关系,在这种师生关系中你期望获得来自老师的哪些帮助? 答:对此问题 ...

  8. 利用flask 实现简单模版站

    from flask import Flask,render_template from flask import request app = Flask(__name__) @app.route(' ...

  9. Django 分类标签查找

    from django.conf.urls import url from django.contrib import admin from blog.views import index,stude ...

  10. 国内maven仓库地址 || 某个pom或者jar找不到的解决方法

    解决方法 建议在maven仓库中新建settings.xml,然后把如下内容粘贴进去即可.也可以找到maven的安装目录中的conf/settings.xml,把如下的mirrors节复制到对应部分. ...