【问题标题】:Facing issue for the below command in sqoopsqoop 中以下命令面临的问题
【发布时间】:2014-08-12 03:46:32
【问题描述】:

我已将 jar 文件复制到 sqoop/lib 文件夹中,我在 sqoop 中使用的命令是:

bin/sqoop import --connect jdbc:mysql://localhost:3306/sqoop --username root --password admin --table city

错误信息:

14/06/21 08:44:44 错误 sqoop.Sqoop:运行 Sqoop 时出现异常:java.lang.RuntimeException:无法加载 db 驱动程序类:com.mysql.jdbc.Driver java.lang.RuntimeException:无法加载数据库驱动程序类:com.mysql.jdbc.Driver 在 org.apache.sqoop.manager.SqlManager.makeConnection(SqlManager.java:772) 在 org.apache.sqoop.manager.GenericJdbcManager.getConnection(GenericJdbcManager.java:52) 在 org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:660) 在 org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:683) 在 org.apache.sqoop.manager.SqlManager.getColumnTypesForRawQuery(SqlManager.java:240) 在 org.apache.sqoop.manager.SqlManager.getColumnTypes(SqlManager.java:223) 在 org.apache.sqoop.manager.ConnManager.getColumnTypes(ConnManager.java:347) 在 org.apache.sqoop.orm.ClassWriter.getColumnTypes(ClassWriter.java:1277) 在 org.apache.sqoop.orm.ClassWriter.generate(ClassWriter.java:1089) 在 org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:96) 在 org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:396) 在 org.apache.sqoop.tool.ImportTool.run(ImportTool.java:502) 在 org.apache.sqoop.Sqoop.run(Sqoop.java:145) 在 org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65) 在 org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181) 在 org.apache.sqoop.Sqoop.runTool(Sqoop.java:220) 在 org.apache.sqoop.Sqoop.runTool(Sqoop.java:229) 在 org.apache.sqoop.Sqoop.main(Sqoop.java:238)

【问题讨论】:

    标签: mysql hadoop sqoop


    【解决方案1】:

    您需要将mysql-connector jar 文件添加到sqoop/lib 文件夹以访问mysql 数据库。 然后执行你的 sqoop 命令。

    下载链接:http://mvnrepository.com/artifact/mysql/mysql-connector-java/5.1.6

    【讨论】:

      【解决方案2】:

      link 下载 mysql-connector jar。 提取 mysql-connector-java-5.1.46.jar 文件并将其复制到 $SQOOP_HOME/lib/ 目录。 如果 sqoop 与 hdfs 一起使用,则将相同的 jar 复制到 hdfs 中存在的 lib。

      【讨论】:

        【解决方案3】:

        尝试添加此选项

        --driver com.mysql.jdbc.Driver
        

        还要确保你已经运行了以下命令

        % mysql -u root -p
        Enter password:
        mysql> GRANT ALL PRIVILEGES ON sqoop.* TO ''@'localhost';
        Query OK, 0 rows affected (0.00 sec)
        mysql> quit;
        Bye
        

        【讨论】:

          猜你喜欢
          • 2013-07-29
          • 2020-12-02
          • 2019-05-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-11-02
          • 2017-11-21
          • 2020-04-13
          相关资源
          最近更新 更多