spark程序将结果写入虚拟机mysql中拒绝连接问题
程序在idea中写完打成jar上传到linux环境中
运行命令:
spark-submit --master spark://hdp01:7077 --jars /root/mysql-connector-java-5.1.39.jar --class day05.IpTest4 Spark38-1.0-SNAPSHOT.jar hdfs://hdp01:9000/ip/ipaccess.log hdfs://hdp01:9000/ip/ip.txt
执行完发现只将一部分数据写入mysql ,在网页查看日志
执行完在网页 hdp01://8080中查看application
如下executor中报错,
出现上图错误时误慌,这是Mysql授权问题,由日志可以看到
java.sql.SQLException:Access denined for user 'root'@'hdp03'(using password:YES)
...
此时在要写入的mysql对应的机器上进行授权就ok
授权命令
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.33.143' IDENTIFIED BY '123456';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
mysql> exit
至此,修改结束,重新启动spark 重新执行命令!