阿里云RDS数据库备份文件恢复到本地mysql数据库
一、安装mysql和xtrabackup
(1)安装mysql
因为RDS是5.6版本,所以我们本地的mysql数据库要与RDS版本对应。
rpm -ivh http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm && yum -y install mysql-server mysql
(2)安装xtrabackup
看我另一篇文章:https://www.cnblogs.com/weiyiming007/p/10281820.html
我这个文章中是安装的xtrabackup2.4,如果是mysql5.6的话,需要安装2.3(如下命令):
yum install epel-release -y
yum -y install percona-xtrabackup-23
MySQL 5.6及之前的版本需要安装 Percona XtraBackup 2.3。MySQL 5.7版本需要安装 Percona XtraBackup 2.4。
二、准备并解压数据
(1)准备数据
先从阿里云备份好数据;
图中的压缩包就是我准备还原的数据;

解压:
[root@saltstack ~]# tar zxf /home/09_gongsifazhan_hins6110701_data_20181203100822.tar.gz -C /data/mysql/

三、数据恢复
(1)执行如下命令,恢复解压好的备份文件
innobackupex --defaults-file=/data/mysql/backup-my.cnf --user=root --apply-log /data/mysql
看到类似如下输出,显示 completed OK,表示执行成功:

(2)修改配置文件
打开/data/mysql/backup-my.cnf,注释掉如下参数(阿里帮助文档只说注释掉三行,启动会失败);
并添加一行内容:skip-grant-tables #登陆的时候忽略密码;其他教程说登录时不要密码,但是我的不加此行登录时还要密码,

(3)修改文件属组属主
chown -R mysql:mysql /data/mysql
(4)启动mysql进程
mysqld_safe --defaults-file=/data/mysql/backup-my.cnf --user=root --datadir=/data/mysql &

查看进程:

四、登录数据库,验证
(1)登录
mysql -uroot #登录不用密码

(2)查看数据,验证


至此,数据恢复完成;
(3)
如果需要修改root密码,可以执行如下操作;
mysql> use mysql;
mysql> update user set password=password('123456') where user='root'; #设置root密码
mysql> update user set host='%' where user='root' AND host='localhost';
mysql> flush privileges; #先刷一次
mysql> grant all privileges on *.* to root@'%' identified by '123456'; #执行这条命令
mysql> flush privileges; #再刷一次
五、可能遇到的问题

解决方法:
执行删除命令:rm -rf /data/mysql/ib*
删除:ibdata1、ib_logfile0、ib_logfile1文件
再次尝试启动mysql
参考文档:https://blog.csdn.net/liudihedy/article/details/73222001
阿里云RDS数据库备份文件恢复到本地mysql数据库的更多相关文章
- 阿里云RDS物理备份恢复到本地
一:业务场景 验证阿里云备份文件可用性 二:恢复到本地过程中遇到的问题 1.修改密码报错 2.自定义函数不可用 三:恢复步骤 1.xtrabackup安装使用 请参考:https://www.cnbl ...
- 使用阿里云RDS for SQL Server性能洞察优化数据库负载-初识性能洞察
简介 数据库性能调优通常需要较高数据库水平,并伴随较多的前期准备工作,比如收集各种性能基线.不同种类的性能指标.慢SQL日志等,这通常费时费力且效果一般,当面对多个数据库时总体拥有成本会大幅增加.今天 ...
- 将 云数据库MongoDB(阿里云)物理备份文件下载恢复至本地自建数据库 遇到的5个问题
有时候我们可能需要将云上数据库下载到本地,下面是我们在操作MongoDB数据库时遇到的五个小问题. 其实现在RDS的 帮助文档 写的都比较详细了,大家在第一次操作时,可以细读一下,避免一些不必要的问题 ...
- 阿里云RDS数据库备份文件恢复到本地数据库
参考这里:https://help.aliyun.com/knowledge_detail/41817.html 第4.2步要多注释掉一些(应该根据实际报错来注释): [mysqld] innodb_ ...
- 恢复阿里云RDS云数据库MySQL的备份文件到自建数据库
云数据库MySQL版使用开源软件Percona Xtrabackup对数据库进行备份,所以您可以使用该软件将云数据库MySQL的备份文件恢复到自建数据库中,本文将介绍详细的操作步骤. 关于云数据库My ...
- 阿里云rds实例恢复到本地
摘要: 前提: 1,阿里云数据库备份实例,恢复数据的时候需要将数据恢复到本地数据库,是不能直接恢复到RDS上的. 2,需要在本地服务器上下载一个数据库,尽量和RDS数据库版本保持一致.(我现在用的是5 ...
- RDS for MySQL 逻辑备份文件恢复到自建数据库
使用MySQL自带的 mysqldump 工具可以通过逻辑备份文件恢复数据库,本文将介绍详细的逻辑备份恢复数据库操作步骤. 说明 通过物理备份文件恢复到自建数据库请参见RDS for MySQL 物理 ...
- 阿里云rds 备份和还原
阿里云rds 备份和还原 转发:https://www.cnblogs.com/lin1/p/8617764.html 转发:https://help.aliyun.com/knowledge_det ...
- 烂泥:阿里云RDS本地恢复数据
本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 公司目前使用的数据库是阿里云的RDS,目前RDS的版本为mysql5.6.如下: 现在要 ...
随机推荐
- Golang Global Variable access
golang 中全局变量的问题. ------------------------------------------------------------------ 17down votefavor ...
- 使用Python写的第一个网络爬虫程序
今天尝试使用python写一个网络爬虫代码,主要是想訪问某个站点,从中选取感兴趣的信息,并将信息依照一定的格式保存早Excel中. 此代码中主要使用到了python的以下几个功能,因为对python不 ...
- Multiple analytic account plans多辅助核算方案
定义核算方案 菜单 会计/设置/辅助核算会计/多个方案 点击"创建"按钮 说明 辅助核算方案,输入方案名称 点击"添加一个 ...
- 133. Clone Graph (3 solutions)——无向无环图复制
Clone Graph Clone an undirected graph. Each node in the graph contains a label and a list of its nei ...
- wxWidgets刚開始学习的人导引(6)——wxWidgets学习材料清单
wxWidgets刚開始学习的人导引全文件夹 PDF版及附件下载 1 前言2 下载.安装wxWidgets3 wxWidgets应用程序初体验4 wxWidgets学习资料及利用方法指导5 用wx ...
- 《ASP.NET》数据绑定—DataList
DataList控件是.NET中的一个控件.DataList控件以表的形式呈现数据(在属性生成器中能够编辑),通过该控件,您能够使用不同的布局来显示数据记录(使用模板编辑).比如,将数据记录排成列或行 ...
- Android经常使用的工具类
主要介绍总结的Android开发中经常使用的工具类,大部分相同适用于Java. 眼下包含HttpUtils.DownloadManagerPro.ShellUtils.PackageUtils. Pr ...
- T-SQL查询进阶--变量
概述 变量对于一种语言是必不可少的一部分,当然,对于T-SQL来讲也是一样.在简单查询中,往往很少用到变量,但无论对于复杂的查询或存储过程中,变量都是必不可少的一部分. 变量的种类 在T-SQL中,变 ...
- scala快速学习笔记(一):变量函数,操作符,基本类型
为了用spark,先学下scala. 参考教程:http://meetfp.com/zh/scala-basic doc查询:http://docs.scala-lang.org 其它资料:http: ...
- 给EasyUi的Form加入自己主动填充部分输入框的方法
依据项目须要,基于获取的数据对Form的部分输入框进行填充,而默认的EasyUI的Form 没有该方法.仅仅能一个输入框一个输入框的直接赋值,为此添加了Form对象的setValues,实现依据给定的 ...