在开发中涉及到spark连接到Mysql的部分操作,虽然要用scala进行编写,但是有过Java语言的一些基础上手scala并不是件难事…
以下为连接部分的代码,注意在使用前要引入相关的依赖,比如mysql的连接驱动等等,这些就不用我多BB了吧。示例demo:
def main(args: Array[String]): Unit = {
val conf = new SparkConf().setAppName("test").setMaster("local")
val sc = new SparkContext(conf)
val sqlContext = new SQLContext(sc)
val properties = new Properties()
// 设置数据库用户名和密码
properties.put("user","test")
properties.put("password","test")
// 注意自己所连数据库的地址
val url = "jdbc:mysql://localhost:3306/test"
// 对应的表名
val test= sqlContext.read.jdbc(url,"test",properties)
// 数据的展示
test.show()
}
然而在我做好这些充分准备的时候,迫不及待的想连上数据库一看究竟,但是却遭到了无情的拒绝!!! 报错警告…
错误的原因如下:
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
一顿操作猛如虎,难不成写法不对