spark sql操作hive sql 和mysql

spark sql访问hive 和 mysql(不断更新)

一,准备工作:

1,添加mysql的驱动jar包。
将mysql-connector-java-5.0.6-bin.jar 添加到 SPARK_HOME/lib/目录下.

将$HIVE_HOME/lib下的mysql-connector-java-5.1.27.jar复制到~/software文件夹下 (这一步是为了spark-shell可以使用)

2, 增加SPARK_HOME/conf目录下的文件:

hive的hive-site.xml, hadoop的core-site.xml(为安全起见),hdfs-site.xml(为HDFS配置)。

修改hive-site.xml

<configuration>
<property>
  <name>hive.metastore.uris</name>
  <value>thrift://localhost:9083</value>
</property>
</configuration>
若报错此文件先注释

二,启动hadoop

三,启动spark

./spark-shell --master local[2] --jars /opt/software/mysql-connector-java-5.1.38.jar

四,启动hive

发现错误 FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

  • 解决:在hive/conf/hive-site.xml 添加配置

    datanucleus.schema.autoCreateAll true

    删除mysql中的元数据表

    再次创建元数据表 注:名字一样保证配置文件不需要修改

    初始化元数据 /soft/hive/conf]$ schematool -dbType mysql -initSchema

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值