【大数据技术】spark SQL如何连接MySQL并读取数据
1、配置连接MySQL的驱动
- 根据自己安装的MySQL的版本,找到正确的驱动文件,我的是MySQL8.0.19 所以驱动文件是mysql-connector-java-8.0.19.jar,将其复制到spark目录下的jars文件夹下
my@ubuntu:/usr/local/spark245_h_local/jars$ cp
/home/my/myfolder/mysql-connector-java-8.0.19/mysql-connector-java-8.0.19.jar
.
2、spark-shell里配置MySQL连接信息(含账号密码,默认库等)
例如我想读取MySQL里test库下的cc表,则可进行如下配置:
> val mysql_connect = new java.util.Properties()> mysql_connect.put("user","root")> mysql_connect.put("password","123456")> spark.read.jdbc("jdbc:mysql://ubuntu:3306/test","cc",mysql_connect)
3、从MySQL读取数据
spark.read.jdbc("jdbc:mysql://ubuntu:3306/test","cc",mysql_connect)
4、写数据到MySQL
- 与向表test.cc中写入如下数据 id | name -------- | ----- 21| aaa 22| bbb
> val r1 = sc.parallelize(Array((21,"aaa"),(22,"bbb")))> r1.collect
- 此时r1仍为RDD,故需要转换为dataframe才可以进一步操作
> r1.toDF("id","name")> res6.show()
- 写入到MySQL
r1.toDF("id","name").write.mode("append").jdbc("jdbc:mysql://ubuntu:3306/test","cc",mysql_connect)
- 去MySQL里查看数据 如红色标注,说明已写入成功
本文转载自: https://blog.csdn.net/u011762522/article/details/126321205
版权归原作者 daydayup-2016 所有, 如有侵权,请联系我们删除。
版权归原作者 daydayup-2016 所有, 如有侵权,请联系我们删除。