一 环境准备
源数据库 | 新数据库 |
mysql8.0.22 | mysql8.0.22 |
有数据 | 无数据 |
二 插件及账号准备
源数据库和新数据库中执行
mysql> INSTALL PLUGIN clone SONAME 'mysql_clone.so';
mysql> SELECT PLUGIN_NAME, PLUGIN_STATUS FROM INFORMATION_SCHEMA.PLUGINS WHERE PLUGIN_NAME = 'clone';
+------------------------+---------------+
| PLUGIN_NAME | PLUGIN_STATUS |
+------------------------+---------------+
| clone | ACTIVE |
+------------------------+---------------+
源数据库账号准备
mysql> CREATE USER clone_user@'192.168.199.101' IDENTIFIED by 'password1';
mysql> GRANT BACKUP_ADMIN ON *.* TO 'clone_user'@'192.168.199.101'; # BACKUP_ADMIN是MySQL8.0 才有的备份锁的权限
新数据库账号准备
mysql> CREATE USER clone_user@'192.168.199.102' IDENTIFIED by 'password2';
mysql> GRANT CLONE_ADMIN ON *.* TO 'clone_user'@'192.168.199.102';
克隆数据
CLONE INSTANCE FROM clone_user@'192.168.199.101':3008
IDENTIFIED BY 'password1';
查看步骤
mysql> SELECT STAGE, STATE, END_TIME FROM performance_schema.clone_progress;
+-----------+-----------+----------------------------+
| STAGE | STATE | END_TIME |
+-----------+-----------+----------------------------+
| DROP DATA | Completed | 2019-07-25 21:56:01.725783 |
| FILE COPY | Completed | 2019-07-25 21:56:02.228686 |
| PAGE COPY | Completed | 2019-07-25 21:56:02.331409 |
| REDO COPY | Completed | 2019-07-25 21:56:02.432468 |
| FILE SYNC | Completed | 2019-07-25 21:56:02.576936 |
| RESTART | Completed | 2019-07-25 21:56:06.564090 |
| RECOVERY | Completed | 2019-07-25 21:56:06.892049 |
+-----------+-----------+----------------------------+
7 rows in set (0.01 sec)