文章目录

MySQL与Hive之间数据转移

1、MySQL的dept表导入Hive

bug 1

这里有个警告,可以不用理他,如果要消除,修改sqoop安装目录bin文件夹下的configure-sqoop文件

MySQL与Hive/HBase数据转移_mysql

修改如下

MySQL与Hive/HBase数据转移_sqoop_02

MySQL与Hive/HBase数据转移_mysql_03

详细请参考:​

bug 2

MySQL与Hive/HBase数据转移_sqoop_04

解决:将MySQL与Hive/HBase数据转移_hive_05HIVE_HOME/lib/jackson*.jar 拷贝至 $SQOOP_HOME/lib 目录中,重新运行sqoop 作业

详细请参考:​​​


hadoop@ddai-desktop:~$ sqoop import --connect jdbc:mysql://ddai-master:3306/sqoop --username sqoop --password Dai@123456 --table dept -m 1 --hive-import


MySQL与Hive/HBase数据转移_hbase_06

2、查看Hive表数据

MySQL与Hive/HBase数据转移_大数据_07

3、清空MySQL的dept表

MySQL与Hive/HBase数据转移_hive_08

4、Hive表数据导出到MySQL


hadoop@ddai-desktop:~$ sqoop export --connect jdbc:mysql://ddai-master:3306/sqoop --username sqoop --password Dai@123456 --table dept -m 1 --export-dir /hive/warehouse/dept --input-fields-terminated-by ‘\0001’


MySQL与Hive/HBase数据转移_mysql_09

5、查询dept表

mysql> use sqoop;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select * from dept;
+------+---------------------+
| id | name |
+------+---------------------+
| 1245 | 云计算 |
| 3512 | 物联网 |
| 3545 | 大数据 |
| 7854 | 今天是2021七夕 |
+------+---------------------+
4 rows in set (0.00 sec)

MySQL与HBase之间数据转移

1、创建HBase表

hbase(main):001:0> create 'hbase_dept','col_family'
Created table hbase_dept
Took 2.1453 seconds
=> Hbase::Table - hbase_dept

2、MySQL的dept表导入Hbase


hadoop@ddai-desktop:~$ sqoop import --connect jdbc:mysql://ddai-master:3306/sqoop --username sqoop --password Dai@123456 --table dept --hbase-create-table --hbase-table hbase_dept --column-family col_family --hbase-row-key id


bug3

因版本问题报错

详细参考:

hbase版本太高,需降低版本使用,现用hbase-2.2.6-bin.tar,需降到1.+版本进行使用

MySQL与Hive/HBase数据转移_sqoop_10

3、查看HBase的dept记录

hbase(main):002:0> scan 'hbase_dept'