Spark读写mysql

  def main(args: Array[String]): Unit = {

    println("Program Start Running")

    val properties = new Properties()
    properties.setProperty("user","root")
    properties.setProperty("password","123456")

    /**
     * 读取mysql的第一种方式
     */
    val mysql_url = "jdbc:mysql://10.10.1.10:3306/test"
    //    val sql_str = "data_example"
    val sql_str = "(select * from test.data_example)  T "
    val sourceDF1: DataFrame = spark.read.jdbc(mysql_url, sql_str, properties)
    sourceDF1.show()

    /**
     * 读取mysql的第二种方式
     */
    val map: Map[String, String] = Map[String, String](
      elems = "url" -> mysql_url,
      "driver" -> "com.mysql.jdbc.Driver",
      "user" -> "root",
      "password" -> "123456",
      "dbtable" -> data_example
    )
    val sourceDF2: DataFrame = spark.read.format("jdbc").options(map).load
    sourceDF2.show()

    /**
     * 读取mysql的第三种方式
     */
    val reader: DataFrameReader = spark.read.format("jdbc")
      .option("url", mysql_url)
      .option("driver", "com.mysql.jdbc.Driver")
      .option("user", "root")
      .option("password", "123456")
      .option("dbtable", sql_str)
    val sourceDF3: DataFrame = reader.load()
    sourceDF3.show()

    /**
     * 写mysql
     */
    sourceDF1.write.mode(SaveMode.Overwrite).jdbc(mysql_url,"data_example_tmp", properties)

    println("Program Finish Running")
    println("-+*" * 50)

    spark.stop()
  }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值