云RDS MySQL迁移至本地MySQL

本地准备工作

1.安装:percona-xtrabackup

上传percona-xtrabackup-2.3.9-Linux-x86_64.tar.gz包到/usr/local

tar -zxvf percona-xtrabackup-2.3.9-Linux-x86_64.tar.gz

mv percona-xtrabackup-2.3.9-Linux-x86_64 percona-xtrabackup

2.创建数据目录

cd /data/

mkdir rds-mysql

chown mysql:mysql rds-mysql

chmod 775 rds-mysql

3.将RDS MySQL备份解压至创建的目录

cd /soft

tar -izxvf hins820_data_20210625103209.tar.gz -C /data/rds-mysql/

解压完8.7G

cd /data/

chown -R mysql:mysql rds-mysql

chmod -R 775 rds-mysql

4.进行恢复

cd /usr/local/percona-xtrabackup/bin

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

提示完成后,进行下一步

恢复完11G

root@mysql rds-mysql# cd /usr/local/percona-xtrabackup/bin

root@mysql bin# ./innobackupex --defaults-file=/data/rds-mysql/backup-my.cnf --apply-log /data/rds-mysql

210629 17:33:06 innobackupex: Starting the apply-log operation

IMPORTANT: Please check that the apply-log run completes successfully.

At the end of a successful apply-log run innobackupex

prints "completed OK!".

./innobackupex version 2.3.9 based on MySQL server 5.6.24 Linux (x86_64) (revision id: fde0e3e)

xtrabackup: cd to /data/rds-mysql/

xtrabackup: This target seems to be not prepared yet.

xtrabackup: xtrabackup_logfile detected: size=2097152, start_lsn=(293078720261)

xtrabackup: using the following InnoDB configuration for recovery:

xtrabackup: innodb_data_home_dir = ./

xtrabackup: innodb_data_file_path = ibdata1:200M:autoextend

xtrabackup: innodb_log_group_home_dir = ./

xtrabackup: innodb_log_files_in_group = 1

xtrabackup: innodb_log_file_size = 2097152

xtrabackup: using the following InnoDB configuration for recovery:

xtrabackup: innodb_data_home_dir = ./

xtrabackup: innodb_data_file_path = ibdata1:200M:autoextend

xtrabackup: innodb_log_group_home_dir = ./

xtrabackup: innodb_log_files_in_group = 1

xtrabackup: innodb_log_file_size = 2097152

xtrabackup: Starting InnoDB instance for recovery.

xtrabackup: Using 104857600 bytes for buffer pool (set by --use-memory parameter)

InnoDB: Using atomics to ref count buffer pool pages

InnoDB: The InnoDB memory heap is disabled

InnoDB: Mutexes and rw_locks use GCC atomic builtins

InnoDB: Memory barrier is not used

InnoDB: Compressed tables use zlib 1.2.3

InnoDB: Using CPU crc32 instructions

InnoDB: Initializing buffer pool, size = 100.0M

InnoDB: Completed initialization of buffer pool

InnoDB: Highest supported file format is Barracuda.

InnoDB: Log scan progressed past the checkpoint lsn 293078720261

InnoDB: Database was not shutdown normally!

InnoDB: Starting crash recovery.

InnoDB: Reading tablespace information from the .ibd files...

InnoDB: Restoring possible half-written data pages

InnoDB: from the doublewrite buffer...

InnoDB: Doing recovery: scanned up to log sequence number 293079851297 (60%)

InnoDB: Starting an apply batch of log records to the database...

InnoDB: Progress in percent: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99

InnoDB: Apply batch completed

InnoDB: 128 rollback segment(s) are active.

InnoDB: Waiting for purge to start

InnoDB: 5.6.24 started; log sequence number 293079851297

xtrabackup: Last MySQL binlog file position 24206254, file name mysql-bin.004613

xtrabackup: starting shutdown with innodb_fast_shutdown = 1

InnoDB: FTS optimize thread exiting.

InnoDB: Starting shutdown...

InnoDB: Shutdown completed; log sequence number 293079851893

xtrabackup: using the following InnoDB configuration for recovery:

xtrabackup: innodb_data_home_dir = ./

xtrabackup: innodb_data_file_path = ibdata1:200M:autoextend

xtrabackup: innodb_log_group_home_dir = ./

xtrabackup: innodb_log_files_in_group = 2

xtrabackup: innodb_log_file_size = 1048576000

InnoDB: Using atomics to ref count buffer pool pages

InnoDB: The InnoDB memory heap is disabled

InnoDB: Mutexes and rw_locks use GCC atomic builtins

InnoDB: Memory barrier is not used

InnoDB: Compressed tables use zlib 1.2.3

InnoDB: Using CPU crc32 instructions

InnoDB: Initializing buffer pool, size = 100.0M

InnoDB: Completed initialization of buffer pool

InnoDB: Setting log file ./ib_logfile101 size to 1000 MB

InnoDB: Progress in MB: 100 200 300 400 500 600 700 800 900 1000

InnoDB: Setting log file ./ib_logfile1 size to 1000 MB

InnoDB: Progress in MB: 100 200 300 400 500 600 700 800 900 1000

InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0

InnoDB: New log files created, LSN=293079851893

InnoDB: Highest supported file format is Barracuda.

InnoDB: 128 rollback segment(s) are active.

InnoDB: Waiting for purge to start

InnoDB: 5.6.24 started; log sequence number 293079852044

xtrabackup: starting shutdown with innodb_fast_shutdown = 1

InnoDB: FTS optimize thread exiting.

InnoDB: Starting shutdown...

InnoDB: Shutdown completed; log sequence number 293079855264

210629 17:33:15 completed OK!

root@mysql bin# cd /data

root@mysql data# ll

total 4

drwxrwxr-x. 5 mysql mysql 167 Jun 29 14:59 mysql

drwxrwxr-x. 8 mysql mysql 4096 Jun 29 17:33 rds-mysql

root@mysql data# cd rds-mysql/

root@mysql rds-mysql# ll

total 3956016

-rwxrwxr-x. 1 mysql mysql 450 Jun 25 10:38 backup-my.cnf

-rwxrwxrwx. 1 mysql mysql 1887436800 Jun 29 17:33 ibdata1

-rw-r--r--. 1 root root 1048576000 Jun 29 17:33 ib_logfile0

-rw-r--r--. 1 root root 1048576000 Jun 29 17:33 ib_logfile1

-rwxrwxr-x. 1 mysql mysql 62874130 Jun 25 10:38 log000000000005.tokulog29

drwxrwxr-x. 2 mysql mysql 4096 Jun 29 17:31 mysql

drwxrwxr-x. 2 mysql mysql 4096 Jun 29 17:31 performance_schema

drwxrwxr-x. 2 mysql mysql 20 Jun 29 17:31 test

-rwxrwxr-x. 1 mysql mysql 16384 Feb 11 2018 tokudb.directory

-rwxrwxr-x. 1 mysql mysql 32768 May 28 2018 tokudb.environment

-rwxrwxr-x. 1 mysql mysql 16384 May 28 2018 tokudb.rollback

-rwxrwxr-x. 1 mysql mysql 123 Jun 25 10:38 xtrabackup_binlog_info

-rw-r--r--. 1 root root 26 Jun 29 17:33 xtrabackup_binlog_pos_innodb

-rwxrwxr-x. 1 mysql mysql 123 Jun 29 17:33 xtrabackup_checkpoints

-rwxrwxr-x. 1 mysql mysql 826 Jun 25 10:38 xtrabackup_info

-rwxrwxr-x. 1 mysql mysql 2097152 Jun 29 17:33 xtrabackup_logfile

-rwxrwxr-x. 1 mysql mysql 80 Jun 25 10:38 xtrabackup_slave_filename_info

-rwxrwxr-x. 1 mysql mysql 164 Jun 25 10:38 xtrabackup_slave_info

drwxrwxr-x. 2 mysql mysql 36864 Jun 29 17:33 yhd_kf

drwxrwxr-x. 2 mysql mysql 4096 Jun 29 17:31 yhd_qzk

drwxrwxr-x. 2 mysql mysql 90112 Jun 29 17:31 yhd_test

root@mysql rds-mysql#

5.恢复完成后修改权限

cd /data

chown -R mysql:mysql rds-mysql

chmod -R 775 rds-mysql

chmod 777 /data/rds-mysql/ib*

6.更新参数文件及参数

cd /data/rds-mysql

cp backup-my.cnf /etc/

cd /etc/

mv my.cnf my.cnf.bak

mv backup-my.cnf my.cnf

vi my.cnf

注释掉其他,mysqld下加入下面两个参数:

mysqld

lower_case_table_names=1

skip-grant-tables

vi /etc/init.d/mysqld

修改data_dir路径

7.启动mysqld服务

root@mysql etc# service mysqld restart

ERROR! MySQL server PID file could not be found!

Starting MySQL.Logging to '/data/rds-mysql/mysql.err'.

. SUCCESS!

root@mysql etc# service mysqld status

SUCCESS! MySQL running (23168)

root@mysql etc#

8.迁移完修改root密码

免密码登陆:

mysql -uroot -p

use mysql;

update mysql.user set password=PASSWORD('root') where User='root';

flush privileges;

exit

9.注释掉skip-grant-tables并重启数据库服务

root@mysql rds-mysql# vi /etc/my.cnf

This MySQL options file was generated by innobackupex.

The MySQL server

mysqld

lower_case_table_names=1

#skip-grant-tables

~

service mysqld restart

10.连接测试

mysql -h 127.0.0.1 -uroot -p

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

相关推荐
网安墨雨18 分钟前
MySQL数据库 SQL语句详解
自动化测试·软件测试·数据库·python·sql·mysql
muddjsv1 小时前
SQLite与MySQL/PostgreSQL本质区别:运行模型、并发、部署、权限全方位对比
mysql·postgresql·sqlite
Mico184 小时前
MySQL 8.0.35 GTID + 延迟复制 + 过滤复制搭建
mysql·dba
会编程的土豆5 小时前
结构体 struct:用代码描述用户、订单、座位
数据库·mysql·golang
瞬间&永恒~18 小时前
【MySQL】4-6:在同一个主机上使用 systemd 运行多个 MySQL服务器
服务器·数据库·mysql
一嘴一个橘子20 小时前
MysqL 哪些情况适合创建索引
mysql
时间的拾荒人20 小时前
MySQL C语言连接 - 从入门到实战
android·c语言·mysql
Database_Cool_1 天前
云数据库控制台好不好用、能不能可视化操作:阿里云 RDS MySQL 控制台体验详解
数据库·mysql·阿里云
番茄炒鸡蛋加糖1 天前
MySQL 实战调优& 分表基础
数据库·mysql
万亿少女的梦1681 天前
基于Spring Boot的游戏交易管理系统设计与实现
java·spring boot·mysql·系统设计·交易管理