前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spark 1.4连接mysql诡异的问题及解决

Spark 1.4连接mysql诡异的问题及解决

作者头像
用户3003813
发布2018-09-06 13:11:19
8840
发布2018-09-06 13:11:19
举报
文章被收录于专栏:个人分享个人分享个人分享

在spark-default.conf文件中明明配置了mysql的数据源连接

随后启动spark-shell 执行如下测试代码:

import org.apache.spark.{SparkContext, SparkConf}
import org.apache.spark.sql.{SaveMode, DataFrame}
import org.apache.spark.sql.hive.HiveContext

val mySQLUrl = "jdbc:mysql://localhost:3306/yangsy?user=root&password=yangsiyi"

  val people_DDL = s"""
            CREATE TEMPORARY TABLE PEOPLE
            USING org.apache.spark.sql.jdbc
            OPTIONS (
              url    '${mySQLUrl}',
              dbtable     'person'
            )""".stripMargin

    sqlContext.sql(people_DDL)
    val person = sql("SELECT * FROM PEOPLE").cache()

val name = "name"
val targets = person.filter("name ="+name).collect()

collect()的时候报找不到driver

这个问题就很诡异了。。数据源连接也没错啊,毕竟在hive的metastore也是用的这个啊。。最终只能在启动spark-shell的时候同时引入jar包了= =

./spark-shell --jars /usr/local/spark-1.4.0-bin-2.5.0-cdh5.2.1/lib/mysql-connector-java-5.1.30-bin.jar 

随后再执行就OK了。。诡异。。

或者在执行collect()之前引入mysql的jar包也可以

sqlContext.sql("add jar /usr/local/spark-1.4.0-bin-2.5.0-cdh5.2.1/lib/mysql-connector-java-5.1.30-bin.jar")

不过总感觉不妥。。有解决办法的求指导哈~

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015-10-26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档