千家信息网

执行Job时怎么省略输入MySQL保存密码

发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,本篇内容介绍了"执行Job时怎么省略输入MySQL保存密码"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所
千家信息网最后更新 2025年11月07日执行Job时怎么省略输入MySQL保存密码

本篇内容介绍了"执行Job时怎么省略输入MySQL保存密码"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

一、删除Job

  1. sqoop job \

  2. --delete testjob

二、创建Job
说明:在创建Job时,我们使用--password-file参数,而且非--passowrd。主要原因是在执行Job时使用--password参数将有警告,并且需要输入密码才能执行Job。当我们采用--password-file参数时,执行Job无需输入数据库密码。

  1. sqoop job \

  2. --create testjob \

  3. -- \

  4. import \

  5. --connect jdbc:mysql://192.168.137.130:3306/jepsondb \

  6. --username root \

  7. --password-file /input/sqoop.pwd \

  8. --table abc \

  9. --target-dir /input/abc \

  10. --delete-target-dir \

  11. -m 1

注:import与"--"之间必须要有一个空格

三、执行Job

  1. sqoop job \

  2. --exec testjob

四、创建--password-file参数需要的密码文件(注:sqoop规定密码文件必须放在HDFS之上,并且权限必须为400)
1、操作命令:

  1. echo -n "123456" > sqoop.pwd

  2. hdfs dfs -rm sqoop.pwd /input/sqoop.pwd

  3. hdfs dfs -put sqoop.pwd /input

  4. hdfs dfs -chmod 400 /input/sqoop.pwd

  5. hdfs dfs -ls /input

  6. -r-------- 1 hadoop supergroup 6 2018-01-15 18:38 /input/sqoop.pwd

2、检查sqoop的配置文件(sqoop-site.xml)是否存在以下配置,并且value值为true


  1. sqoop.metastore.client.record.password

  2. true

  3. If true, allow saved passwords in the metastore.


注:password文件的格式不对错误提示如下:

  1. arning: /app/sqoop-1.4.6-cdh6.7.0/../hbase does not exist! HBase imports will fail.

  2. Please set $HBASE_HOME to the root of your HBase installation.

  3. Warning: /app/sqoop-1.4.6-cdh6.7.0/../hcatalog does not exist! HCatalog jobs will fail.

  4. Please set $HCAT_HOME to the root of your HCatalog installation.

  5. Warning: /app/sqoop-1.4.6-cdh6.7.0/../accumulo does not exist! Accumulo imports will fail.

  6. Please set $ACCUMULO_HOME to the root of your Accumulo installation.

  7. Warning: /app/sqoop-1.4.6-cdh6.7.0/../zookeeper does not exist! Accumulo imports will fail.

  8. Please set $ZOOKEEPER_HOME to the root of your Zookeeper installation.

  9. 18/01/15 18:33:50 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6-cdh6.7.0

  10. 18/01/15 18:33:53 INFO manager.MySQLManager: Preparing to use a MySQL streaming resultset.

  11. 18/01/15 18:33:53 INFO tool.CodeGenTool: Beginning code generation

  12. 18/01/15 18:33:54 ERROR manager.SqlManager: Error executing statement: java.sql.SQLException: Access denied for user 'root'@'spark220' (using password: YES)

  13. java.sql.SQLException: Access denied for user 'root'@'spark220' (using password: YES)

  14. at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:965)

  15. at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3973)

  16. at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3909)

  17. at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:873)

  18. at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1710)

  19. at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1226)

  20. at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2188)

  21. at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2219)

  22. at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2014)

  23. at com.mysql.jdbc.ConnectionImpl.(ConnectionImpl.java:776)

  24. at com.mysql.jdbc.JDBC4Connection.(JDBC4Connection.java:47)

  25. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

  26. at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)

  27. at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

  28. at java.lang.reflect.Constructor.newInstance(Constructor.java:423)

  29. at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)

  30. at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:386)

  31. at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:330)

  32. at java.sql.DriverManager.getConnection(DriverManager.java:664)

  33. at java.sql.DriverManager.getConnection(DriverManager.java:247)

  34. at org.apache.sqoop.manager.SqlManager.makeConnection(SqlManager.java:904)

  35. at org.apache.sqoop.manager.GenericJdbcManager.getConnection(GenericJdbcManager.java:52)

  36. at org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:763)

  37. at org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:786)

  38. at org.apache.sqoop.manager.SqlManager.getColumnInfoForRawQuery(SqlManager.java:289)

  39. at org.apache.sqoop.manager.SqlManager.getColumnTypesForRawQuery(SqlManager.java:260)

  40. at org.apache.sqoop.manager.SqlManager.getColumnTypes(SqlManager.java:246)

  41. at org.apache.sqoop.manager.ConnManager.getColumnTypes(ConnManager.java:327)

  42. at org.apache.sqoop.orm.ClassWriter.getColumnTypes(ClassWriter.java:1846)

  43. at org.apache.sqoop.orm.ClassWriter.generate(ClassWriter.java:1646)

  44. at org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:107)

  45. at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:478)

  46. at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:605)

  47. at org.apache.sqoop.Sqoop.run(Sqoop.java:143)

  48. at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)

  49. at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:179)

  50. at org.apache.sqoop.Sqoop.runTool(Sqoop.java:218)

  51. at org.apache.sqoop.Sqoop.runTool(Sqoop.java:227)

  52. at org.apache.sqoop.Sqoop.main(Sqoop.java:236)

  53. 18/01/15 18:33:54 ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: No columns to generate for ClassWriter

  54. at org.apache.sqoop.orm.ClassWriter.generate(ClassWriter.java:1652)

  55. at org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:107)

  56. at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:478)

  57. at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:605)

  58. at org.apache.sqoop.Sqoop.run(Sqoop.java:143)

  59. at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)

  60. at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:179)

  61. at org.apache.sqoop.Sqoop.runTool(Sqoop.java:218)

  62. at org.apache.sqoop.Sqoop.runTool(Sqoop.java:227)

  63. at org.apache.sqoop.Sqoop.main(Sqoop.java:236)

"执行Job时怎么省略输入MySQL保存密码"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

密码 输入 参数 文件 内容 更多 知识 配置 不对 实用 学有所成 接下来 之间 原因 命令 困境 实际 情况 数据 数据库 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 手机远程服务器繁忙怎么办 王牌竞速有几个服务器啊 网络技术发展网络游戏盛行 校园软件开发答辩问题 山西pdu服务器电源生产商 宁波桌面软件开发工具 怎样开展网络安全等级保护 对国家网络安全的看法 重庆网络技术公司 下雨天视频软件开发 互联网汽车科技论坛 保定市网络安全会议 惠普630存储服务器 软件开发和定制 服务器必须双电源吗 贵池区现代软件开发服务品质保障 中国电信的无线网络技术有哪些 steam 战争雷霆服务器 手机网络安全的说说 软件测试对软件开发的影响 双活云网络技术 怎样建数据库引擎 手机启动不了如何导出数据库 东莞社交软件开发哪家好 数据库设置性别数据类型 静安区信息化网络技术怎么样 暗黑破坏神3服务器网络断开 深圳市锐视互联网科技有限公司 asus服务器公网映射端口设置 浙江碳银科技互联网有限公司
0