ToB企服应用市场:ToB评测及商务社交产业平台

标题: 使用sqoop将mysql数据导入到hive中 [打印本页]

作者: tsx81429    时间: 2024-7-25 21:48
标题: 使用sqoop将mysql数据导入到hive中
 

目次
 
完整流程
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),都是根据自己的填

  1. [root@hadoop102 ~]# sudo lsof -i :3306
  2. COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
  3. mysqld  2428 mysql   53u  IPv6  93577      0t0  TCP *:mysql (LISTEN)
复制代码
2-2结果

正常情况下,可以显示全部数据库

3.导入mysql数据到hive中

  1. sqoop import
  2. --connect jdbc:mysql://192.168.10.102:3306/kk
  3. --username root
  4. --password 1111
  5. --table student
  6. --fields-terminated-by ','
  7. --delete-target-dir
  8. --num-mappers 1
  9. --hive-import
  10. --hive-database db_msg
  11. --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类存在,说明情况没配好)
  1. jar tf hive-common-3.1.3.jar Igrep HiveConf.class
复制代码
3: vi .bash_profile(编辑情况变量)
4:参加下面这两句

 5:更新体系情况变量(source 一下)


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4