阿里RDS数据库 全量备份恢复到本地MYSQL

 

1.首先下载RDS的全量备份

下载完成后上传到服务器备用
 
2.安装MySQL 5.6
首先删除机上其他的MySQL版本
检查系统是否安装其他版本的MYSQL数据
#yum list installed | grep mysql
#yum -y remove mysql-libs.x86_64
 
 
groupadd mysql #添加mysql组
 
useradd -g mysql mysql -s /bin/false #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统
 
mkdir -p /home/data/mysql #创建MySQL数据库存放目录
 
chown -R mysql:mysql /home/data/mysql #设置MySQL数据库目录权限
 
下载Linux通用版mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz
 
cd /usr/local/src
直接给出下载地址使用wget下载
解压到/usr/local目录,解压即用
 
cd /usr/local/mysql  #进入MySQL目录
 
cp ./support-files/my-defhuge.cnf /etc/my.cnf #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)
 
vi /etc/my.cnf #编辑配置文件,在 [mysqld] 部分增加下面一行
 
datadir = /home/data/mysql #添加MySQL数据库路径
 
:wq! #保存退出
 
初始化MySql数据库
/usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/alidata/mysqldata
执行mysql_install_db命令的时候后面的参数一定要加上,--user代表运行用户,--basedir代表MySql安装目录,--datadir代表数据库数据所在目录,每个人的配置不一样,根据自己的修改一下
 
把Mysql加入系统启动
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld 
 
chmod 755 /etc/init.d/mysqld #增加执行权限
 
chkconfig mysqld on #加入开机启动
 
vi /etc/rc.d/init.d/mysqld #编辑
 
basedir = /opt/mysql #MySQL程序安装路径
 
datadir = /home/data/mysql #MySQl数据库存放目录
 
service mysqld start #启动
 
vi /etc/profile #把mysql服务加入系统环境变量:在最后添加下面这一行
 
export PATH=$PATH:/opt/mysql/bin
 
:wq! #保存退出
 
source /etc/profile #生效配置
 
下面这两行把myslq的库文件链接到系统默认的位置,这样你在编译类似PHP等软件时可以不用指定mysql的库文件地址。
ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
ln -s /usr/local/mysql/include/mysql /usr/include/mysql
 
MySQL密码设置
/usr/local/mysql/bin/mysqladmin -u root -p password "123456"#修改密码
 
service mysqld restart #重启
 
到此,mysql安装完成!
 
3.恢复RDS的全量备份
 
操作系统中已安装数据恢复工具Percona XtraBackup。MySQL 5.6及之前的版本需要安装 Percona XtraBackup 2.3。MySQL 5.7版本需要安装 Percona XtraBackup 2.4。可以从Percona XtraBackup官网下载安装,安装指导请参见官方文档 Percona XtraBackup 2.3、Percona XtraBackup 2.4。https://www.alibabacloud.com/help/zh/doc-detail/26212.htm
 
阿里的文档说5.6及之前版本需要安装Percona XtraBackup 2.3,我自己按下面的方法安装了 innobackupex version 2.4.12 Linux (x86_64) 可以使用
安装如下
先安装依赖 yum -y install perl perl-devel libaio libaio-devel perl-Time-HiRes perl-DBD-MySQL
 
 
percona-release-0.1-6.noarch.rpm
$ rpm -ivh percona-release-0.1-6.noarch.rpm
 
yum install percona-xtrabackup-24
安装完成
 
mkdir -p /home/data/mysql2  #新建个数据目录用来存放备份导出数据
 
#解压数据
tar zxf hins4538771_data_20180909031616.tar.gz -C  /home/data/mysql2
 
恢复数据文件
cd /home/data/mysql2
innobackupex --defaults-file=./backup-my.cnf --apply-log ./
 
 系统显示innobackupex: completed OK!,则数据恢复成功。
 修改配置文件。将解压文件 backup-my.cnf 中的 innodb_fast_checksum、innodb_page_size、innodb_log_block_size注释掉,并且添加 datadir=/home/data/mysql2,如
下所示。
datadir=/home/data/mysql2 这个数据目录官网说要加实际按我的操作可以不加,可以先加上不影响
 
#修改/etc/my.cnf 把数据目录改成 datadir=/home/data/mysql2
#修改启动脚本中的数据目录
vim /etc/rc.d/init.d/mysqld
 
#进入数据目录,开启MySQL
cd  /home/data/mysql2       #进入数据目录
chown mysql.mysql -R *      #加权限
mysqld_safe &                     #启动MySQL
ps -ef | grep mysql              #查看是否有进程
service mysqld restart         #检查重启是否正常
正常的话你已经可以使用RDS的账号密码登录MySQL了
 
修改下MySQL     root 密码
vim /etc/my.cnf
加入 skip-grant-tables
重启mysql
service mysqld restart 
 
登录并修改MySQL的root密码
# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 3.23.56
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> USE mysql ;
Database changed
mysql> UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root' ;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0
mysql> flush privileges ;
Query OK, 0 rows affected (0.01 sec)
mysql> quit
登录
mysql -u root -h127.0.0.1 -p(password) 
#这边的root限制是只有本地能登录,你可以自己添加需要的远程账户
grant all on *.* to 'user'@'%' identified by 'password';

阿里RDS数据库 全量备份恢复到本地MYSQL的更多相关文章

  1. MySQL innobackupex全量备份恢复

    转自 http://blog.itpub.net/27099995/viewspace-1295099/ 先简单介绍一下这个工具:innobackupexinnobackupex比xtarbackup ...

  2. Linux 网站文件和数据库全量备份 一键脚本(支持FTP,Google Drive)

    原文连接: https://teddysun.com/469.html 此文为转载,建议查看秋水大神的原文,排版更容易查看,另外,建议查看脚本源码,方便了解脚本运行过程, 脚本已测试,大神的脚本一如既 ...

  3. xtrabakcup基本用法 安装、全量备份恢复、增量备份恢复

    xtrabackup备份原理以及工作流程 备份流程日志分析:1.##读取mysql配置文件2.## 扫描innodb日志lsn并复制inndodb系统表空间3.## 缓冲写出到数据文件并锁表4.## ...

  4. RDS数据库全量恢复方案

    一.全量恢复 恢复最近的快照,将快找之前的数据全量恢复 二.增量恢复 下载对应的binlog日志导入到数据库 三.还没有备份的binlog日志获取方法 首先连接 RDS for MySQL 后查看当前 ...

  5. Centos 实战-MySQL定时全量备份(1)

    /usr/bin/mysqldump -uroot -p123456 --lock-all-tables --flush-logs test > /home/backup.sql 如上一段代码所 ...

  6. MySQL定时备份(全量备份+增量备份)

    MySQL 定时备份 参考 zone7_ 的 实战-MySQL定时备份系列文章 参考 zmcyu 的 mysql数据库的完整备份.差异备份.增量备份 更多binlog的学习参考马丁传奇的 MySQL的 ...

  7. 15、xtrabackup 全量备份

    xtrabackup 全量备份与恢复 安装 yum install https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2. ...

  8. 【运维实战】利用tar -g 实现简单全量备份和增量备份(带演示)

    备份产生 全量备份指完全备份,增量备份指针对上次至今的修改进行备份.linux提供tar -g可实现备份功能. 第一次运行 tar -g 备份存放目录/snapshot -czvf  备份存放目录/备 ...

  9. xtrabackup 全量备份、恢复数据

    1.全量备份 [root@localhost lib]##innobackupex --defaults-file=$defaults_file --user=$mysql_username --pa ...

随机推荐

  1. jmeter——http、jdbc、soap请求

    1.jmeter——http 请求 1.1添加线程组 1.2添加http请求 1.3发起http请求 1.协议:通常一个http请求都会有相对应的协议,如HTTP,HTTPS等.这里除非有特殊要求,一 ...

  2. Ubuntu系统---系统驱动丢失、Kernel内核卸载、禁止更新

    Ubuntu系统---系统驱动丢失.Kernel内核卸载.禁止更新 一早开机发现,ubuntu字体异常,字体很大,直接反应是驱动坏了.一查,确实丢失英伟达驱动,为什么呢?莫名的消失.想知道:1.英伟达 ...

  3. c++初步认识

    经过漫长的C学习终于踏入C++的知识库当中了,还是保持以前的习惯会一步步通过写博客的形式来记录点滴学习记录,这种学习方式是相当慢的,但是对我来说是最踏实的,不浮躁,一步一个脚印.C++是一门啥语言呢, ...

  4. java学习笔记13-重写与重载

    重写 重写是子类对父类允许访问的方法实现过程进行重新编写,返回值和参数都不能变. 重写方法不能抛出新的检查异常和比被重写方法更加宽泛的异常 访问权限不能比被重写方法低 声明为final的方法不能被重写 ...

  5. PHP程序员的技术成长规划(转载)

    按照了解的很多PHP/LNMP程序员的发展轨迹,结合个人经验体会,抽象出很多程序员对未来的迷漫,特别对技术学习的盲目和慌乱,简单梳理了这个每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设定 ...

  6. onbeforeunload、onpagehide、onunload、onload、onpageshow的正确执行顺序

    一.Chrome支持onbeforeunload.onpagehide.onunload,只是在这些方法执行的时候alert,console这些方法已经被注销了. 二.浏览器跳转.关闭.刷新时都按a, ...

  7. thinkphp session跨域

    1 .在config.PHP中添加 'SESSION_OPTIONS'=>array('domain'=>'.caizhimofang.con'),//session配置    'COOK ...

  8. Checklist的补充规则

    常见问题: 1.什么时候该补充Checklist? 2.Checklist应该写哪些用例? 3.自己写的模块是否自己执行? 4.什么时候执行Checklist? 5.执行完Checklist大概需要花 ...

  9. c语言1博客作业09

    一.本周作业头 这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-3/homework/10033 ...

  10. re模块中的非贪婪匹配

    python的re模块中有贪婪匹配和非贪婪匹配之分,当使用*时会匹配零个或多个,使用+时会匹配一个或多个.当使用?在前边特殊符号前时会进行非贪婪匹配,匹配零个或者一个,今天主要讨论非贪婪匹配中存在的坑 ...