我使用的是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';+
4条答案
按热度按时间14ifxucb1#
您还没有提到“-target dir”命令。如果没有这些,就没用了。
或多或少,您还应该提到端口号。
使用sqoop时,请确保在“/var/lib/sqoop/”中有mysql-connector-java-5.1.45.tar.gz
如果您使用的是cloudera集群,代码如下所示,
这是指导您如何安装jdbc驱动程序的链接,以防您不知道。
ztyzrc3y2#
---+|电影|+
ffscu2ro3#
+|表|+
93ze6v8z4#
---+集合中的1行(0.03秒)
我还对根用户授予了特权。将movielens.*上的所有权限授予“”@'localhost';
我错过了什么?