读取JDBC是需要有驱动的,我们读取的事jdbc:mysql://这个协议,也就是读取的是mysql的数据,需要有mysql的驱动jar包给spark程序用
写出# 写DF通过JDBC到数据库中
df.write.
mode("overwrite").
format("jdbc").
option("url", "jdbc:mysql://node1:3306/test?useSSL=false&useUnicode=true").
option("dbtable", "u_data").
option("user", "root").
option("password", "123456").
save()
注意
- jdbc连接字符串中,建议使用useSSL=false确保连接可以正常连接(不使用SSL安全协议进行连接)
- jdbc连接字符串中,建议使用useUnicode=true来确保传输中不出现乱码
- save()不要填参数,没有路径,是写出数据库
- dbtable属性:指定写出的表名
df = spark.
read.
format("jdbc").
option("url", "jdbc:mysql://node1:3306/test?useSSL=false&useUnicode=true").
option("dbtable", "u_data").
option("user", "root").
option("password", "123456").
load()
注意
- 读出来是自带schema,不需要设置schema,因为数据库就又schema
- load()不需要加参数,没有路径,从数据库中读取的
- datable:是指定读取的表名



