如何将在CDH清洗好的数据存入到数据库里?

如何将在CDH清洗好的数据存入到数据库里?,第1张

有个连接数据的jar包用来驱动

2.连接数据库,具体代码网上有,主要就是设置数据库类型,名字,用户名,密码之类的

3.调用连接,写入数据,

Connection con=new Connection()

String sql="insert into 表名 (列名1,列名2) values(值1,值2)"

PreparedStatement ps=con.getPerpareStatment()

这是一个很容易出现的问题,网上很多内容将mysql驱动包上传到不对的路径导致出现问题。

cloudera manager添加hive时报错找不到jdbc driver

报错

JDBC driver cannot be found. Unable to find the JDBC database jar on host

把包放入这个目录,注意文件名要保持一致 网上又很多需要把这个驱动包放到

cp /root/mysql-connector-java-5.1.33-bin.jar /opt/cloudera/parcels/CDH-5.4.0-1.cdh5.4.0.p0.27/lib/hive/lib/

/opt/cloudera/parcels/CDH/lib/hive/lib或者

/opt/cloudera/parcels/CDH-5.4.0-1.cdh5.4.0.p0.27/lib/hive/lib

以上其实是同一个位置

*** 作后问题依旧出现。

解决方法:

后来在网上找到需要将这个包放到这个路径下就通过了(名字需要修改下)

/usr/share/java/mysql-connector-java.jar

修改 hive 的元数据库需要修改 hive-site.xml配置文件,比如我们使用mysql数据库修改其配置如下所示:

<property>

<name>javax.jdo.option.ConnectionDriverName</name>

<value>com.mysql.jdbc.Driver</value>

<description>Driver class name for a JDBC metastore</description>

</property>

<property>

<name>javax.jdo.option.ConnectionURL</name>

<value>jdbc:mysql://dajiangtai.com:3306/hive?characterEncoding=UTF-8</value>

<description>JDBC connect string for a JDBC metastore</description>

</property>

<property>

<name>javax.jdo.option.ConnectionUserName</name>

<value>hive</value>

<description>Username to use against metastore database</description>

</property>

<property>

<name>javax.jdo.option.ConnectionPassword</name>

<value>hive</value>

<description>password to use against metastore database</description>

</property>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6769598.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-28
下一篇 2023-03-28

发表评论

登录后才能评论

评论列表(0条)

保存