MySQL单表迁移至Hubble

步骤一:导出需要迁移的表

mysqldump -uroot -p123456  sysbench sbtest1_500 > /opt/willynew/newhubble/mysql.sql

步骤二:将导出的数据文件放置于集群可访问到的位置

Hubble集群中的每个节点都需要访问到需导入的数据文件。可使用httpd服务。

URL必须使用以下格式:

[scheme]://[host]/[path]?[parameters]

当前支持的类型如下:

类型schemahost参数示例
httphttp主机地址N/Ahttp://localhost:8080/mydatest.sql
NFS/Localnodelocal节点ID或为空N/Anodelocal:///path/mydatest,nodelocal://n/path/mydatest

nodelocal://n/path/mydatest,n是节点数,不能省略,地址这块与3.7.9版本是有区别的。

步骤三:导入MySQL导出的文件

mysql 导出单个表
mysqldump -uhadoop -p  hilbert_3  vertexlable >  /data/path/vertexlable_test.sql;
把数据导入hubble中
create database if not exists hubble_demo;

use hubble_demo;

IMPORT MYSQLDUMP 'http://localhost:3000/vertexlable_test.sql';
IMPORT MYSQLDUMP 'http://localhost:3000/vertexlable_test.sql';

job_id   | status | fraction_completed | rows | index_entries | system_records | bytes +
---------+--------+--------------------+------+---------------+----------------+-------+
535405586715115521 | succeeded |     1 |    5 |            10 |              0 |  1152  
(1 row)

MySQL整库迁移至Hubble

步骤一:导出需要迁移的整库

mysqldump -uhadoop -p  hilbert_3   >  /data/path/hilbert_v3.sql;

步骤二:将导出的数据文件放置于集群可访问到的位置

如同mysql单表导入的步骤二操作一致

步骤三:导入MySQL导出的整库数据

用户导出了整个数据库,可以通过以下的 IMPORT 语句从导出文件中读取全部数据和 DDL 语句

create database if not exists hubble_demo;

use  hubble_demo;

import mysqldump 'http://localhosts:3000/hilbert_v3.sql';
import mysqldump 'http://localhost:3000/hilbert_v3.sql';

        job_id       |  status   | fraction_completed | rows | index_entries | system_records | bytes  
+--------------------+-----------+--------------------+------+---------------+----------------+-------+
  535411573412855809 | succeeded |                  1 |   45 |             1 |              0 |  2101  
(1 row)
分类: 解决方案