sqoop import

时间:2017-12-24 07:42:53

标签: mysql hadoop sqoop

我正在使用sqoop 1.4.6。 我在执行sqoop import的下面命令时遇到错误:

sqoop import --connect jdbc:mysql:// localhost / movielens --driver com.mysql.jdbc.Driver --table movies -m 1

ERROR manager.SqlManager: Error executing statement: java.sql.SQLException: Access denied for user ''@'localhost' (using password: NO)
java.sql.SQLException: Access denied for user ''@'localhost' (using password: NO)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:545)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:513)
    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:115)

所以我尝试了下面的命令,但仍然收到一些错误:

sqoop import --connect jdbc:mysql:// localhost / movielens --username root --password pass --driver com.mysql.jdbc.Driver --table movies -m 1

Error reading primary key metadata: java.sql.SQLSyntaxErrorException: Unknown table 'movies' in information_schema
java.sql.SQLSyntaxErrorException: Unknown table 'movies' in information_schema
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:536)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:513)
    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:115)
    at com.mysql.cj.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:1983)

但是当我在information_schema中检查时,我发现了电影表。

的MySQL>从information_schema.tables中选择table_name,其中table_name类似于' movies&#39 ;; + ------------ + | table_name | + ------------ + |电影| + ------------ + 1行(0.03秒)

我还对root用户做了GRANT权限。 在电影版权上授予所有特权。*到'' @' localhost';

我在这里缺少什么?

1 个答案:

答案 0 :(得分:2)

  1. 你还没有提到" - target-dir"命令。没有它,它就不起作用。
  2. 或多或少,您还应该提到端口号。
  3. 当您使用Sqoop时,请确保在" / var / lib / sqoop /"
  4. 中安装了mysql-connector-java-5.1.45.tar.gz

    如果您正在使用Cloudera Cluster,代码如下,

    sqoop import --connect "jdbc:mysql://quickstart.cloudera:3306/<database_name> --table <table_name> --direct -m 1 --target-dir <target_location>
    

    这是link,它指导您如何安装JDBC驱动程序,以防您不知道。