目录

 

完整流程

1:安装sqoop(直接官网下就行了)详细教程点这里

2.测试连接sqoop连接mysql

2-1代码与解释

2-2结果

3.导入mysql数据到hive中

4.导入成功截图

 遇到的问题

问题一:


完整流程

1:安装sqoop(直接官网下就行了)详细教程点这里

在sqoop中配置环境(例如在/opt/sqoop-1.4.7.bin__hadoop-2.6.0/conf)

这里的地址要找出你对应的zookeeper,hadoop,hive地址

2.测试连接sqoop连接mysql

2-1代码与解释

sqoop list-databases --connect jdbc:mysql://192.168.10.102:3306/ --username root --password 1111   

上面的地址是虚拟机地址,端口号默认为3306(也可以查一下此端口是否有mysqld,如下面),后面的是用户名(root)和密码(1111),都是根据自己的填

[root@hadoop102 ~]# sudo lsof -i :3306
COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mysqld  2428 mysql   53u  IPv6  93577      0t0  TCP *:mysql (LISTEN)

2-2结果

正常情况下,可以显示所有数据库

3.导入mysql数据到hive中

sqoop import 
--connect jdbc:mysql://192.168.10.102:3306/kk 
--username root 
--password 1111 
--table student 
--fields-terminated-by ',' 
--delete-target-dir 
--num-mappers 1 
--hive-import 
--hive-database db_msg 
--hive-table student   

这个命令是,将mysql中kk数据库中的表student导入到hive的db_msg数据库的student表(hive中的表可不存在,会自动创建)

4.导入成功截图

 遇到的问题

问题一:

问题:ERROR hive.HiveConfig: Could not load org.apache.hadoop.hive.conf.HiveConf. Make sure HIVE CONF DIR is set correctly.

分析:hive的HiveConf无法正确加载("错误: 找不到或无法加载主类"报这个错的都可以试一试)

解决:

1:去到hive的lib目录下

2:这个命令的输出结果将显示hive-common-3.1.3.jar中包含的所有类文件,其中包含HiveConf类的行将被高亮显示出来。(在我这里,HiveConf类存在,说明环境没配好)

jar tf hive-common-3.1.3.jar Igrep HiveConf.class

3: vi .bash_profile(编辑环境变量)

4:加入下面这两句

 5:更新系统环境变量(source 一下)

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐