sqoop导入错误

wj8zmpe1  于 2021-05-29  发布在  Hadoop
关注(0)|答案(4)|浏览(521)

我使用的是sqoop1.4.6。执行以下sqoop导入命令时出错:
sqoop导入--连接jdbc:mysql用法://localhost/movielens--driver com.mysql.jdbc.driver--table movies-m1

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导入--连接jdbc:mysql用法://localhost/movielens--用户名root--密码pass--驱动程序com.mysql.jdbc.driver--表movies-m1

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)

但当我检查信息模式时,我在其中找到了movies表。
mysql>从information_schema.tables中选择table_name,其中table_name类似于'movies';+

14ifxucb

14ifxucb1#

您还没有提到“-target dir”命令。如果没有这些,就没用了。
或多或少,您还应该提到端口号。
使用sqoop时,请确保在“/var/lib/sqoop/”中有mysql-connector-java-5.1.45.tar.gz
如果您使用的是cloudera集群,代码如下所示,

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

这是指导您如何安装jdbc驱动程序的链接,以防您不知道。

93ze6v8z

93ze6v8z4#

---+集合中的1行(0.03秒)
我还对根用户授予了特权。将movielens.*上的所有权限授予“”@'localhost';
我错过了什么?

相关问题