ChangeFileModeByMask错误(5):访问被拒绝

时间:2017-07-18 10:46:50

标签: java scala apache-spark etl

我访问了MySQL数据库并获取了表。 一切都很好,直到那个。

当我试图以文本或其他格式保存记录时,我收到错误  退出代码异常退出代码= 1:'通过掩码更改文件模式错误'(5):访问被拒绝。

任何帮助将不胜感激。

object jdbcConnect {
 def main(args: Array[String]) {

   val url="jdbc:mysql://127.0.0.1:3306/mydb" 
   val username = "root"
   val password = "token_password"
   Class.forName("com.mysql.jdbc.Driver").newInstance


   //DriverManager.registerDriver(new com.mysql.jdbc.Driver());

   val conf = new SparkConf().setAppName("JDB CRDD").setMaster("local[2]").set("spark.executor.memory", "1g")

    val sc = new SparkContext(conf)
    val myRDD = new JdbcRDD( sc, () => 
    DriverManager.getConnection(url,username,password) ,
  "select s_Id,issue_date from store_details limit ?, ?",
  0, 10, 1, r => r.getString("s_Id") + ", " + r.getString("issue_date"))

   myRDD.foreach(println)
   myRDD.saveAsTextFile("C:/jdbcrddexamplee")

  }
}

错误

  

17/07/18 11:10:19错误执行者:阶段2.0中任务0.0的异常   (TID 2)ExitCodeException exitCode = 1:ChangeFileModeByMask error(5):   访问被拒绝。

     

at org.apache.hadoop.util.Shell.runCommand(Shell.java:582)at at   org.apache.hadoop.util.Shell.run(Shell.java:479)at   org.apache.hadoop.util.Shell $ ShellCommandExecutor.execute(Shell.java:773)     在org.apache.hadoop.util.Shell.execCommand(Shell.java:866)at   org.apache.hadoop.util.Shell.execCommand(Shell.java:849)at   org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:733)     在   org.apache.hadoop.fs.RawLocalFileSystem $ LocalFSFileOutputStream。(RawLocalFileSystem.java:225)     在   org.apache.hadoop.fs.RawLocalFileSystem $ LocalFSFileOutputStream。(RawLocalFileSystem.java:209)     在   org.apache.hadoop.fs.RawLocalFileSystem.createOutputStreamWithMode(RawLocalFileSystem.java:307)     在   org.apache.hadoop.fs.RawLocalFileSystem.create(RawLocalFileSystem.java:296)     在   org.apache.hadoop.fs.RawLocalFileSystem.create(RawLocalFileSystem.java:328)

1 个答案:

答案 0 :(得分:0)

这似乎是一个许可错误。我的愚蠢......

确保以管理员身份运行任何内容。虽然我建议使用数据帧而不是RDD:D