【大数据技术】Spark-SQL如何连接MySQL并进行读写数据

【大数据技术】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里查看数据
    如红色标注,说明已写入成功
    在这里插入图片描述
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

daydayup-2016

你的鼓励将是我创作的最大动力哦

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值