Support Questions

Find answers, ask questions, and share your expertise

sqoop,mysql

avatar
New Contributor

hello 

 

I learn sqoop and mysql fist time

i use hdp 2.65 and use putty

my user name is root@localhost

 

I want to sqoop movie file

 

when I input order 

 

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

 

and the following warning message appears.

 

Warning: /usr/hdp/2.6.5.0-292/accumulo does not exist! Accumulo imports will fail.

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

23/01/31 19:47:12 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6.2.6.5.0-292

23/01/31 19:47:12 WARN sqoop.ConnFactory: Parameter --driver is set to an explicit driver however appropriate connection manager is not being set (via --connection-manager). Sqoop is going to fall back to org.apache.sqoop.manager.GenericJdbcManager. Please specify explicitly which connection manager should be used next time.

23/01/31 19:47:12 INFO manager.SqlManager: Using default fetchSize of 1000

23/01/31 19:47:12 INFO tool.CodeGenTool: Beginning code generation

Tue Jan 31 19:47:13 UTC 2023 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.

23/01/31 19:47:14 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.jdbc.SQLError.createSQLException(SQLError.java:965)

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

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

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

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

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

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

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

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

        at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:776)

        at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)

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

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

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

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

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

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

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

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

        at java.sql.DriverManager.getConnection(DriverManager.java:270)

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

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

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

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

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

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

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

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

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

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

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

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

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

        at org.apache.sqoop.Sqoop.run(Sqoop.java:147)

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

        at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)

        at org.apache.sqoop.Sqoop.runTool(Sqoop.java:225)

        at org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)

        at org.apache.sqoop.Sqoop.main(Sqoop.java:243)

23/01/31 19:47:14 ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: No columns to generate for ClassWriter

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

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

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

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

        at org.apache.sqoop.Sqoop.run(Sqoop.java:147)

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

        at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)

        at org.apache.sqoop.Sqoop.runTool(Sqoop.java:225)

        at org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)

        at org.apache.sqoop.Sqoop.main(Sqoop.java:243)

 

 

 

 

what can I do?

 

1 ACCEPTED SOLUTION

avatar

@Iwantkakao  There are 2 things i see right off bat:

 

Tue Jan 31 19:47:13 UTC 2023 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.

^^ consider the recommendation:  useSSL=false in your sqoop command.

 

23/01/31 19:47:14 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)

^^ this error is saying that your user does not have access to mysql.  You are going to need to provide a specific user, password, and host, with permissions and grants accordingly.   If your user is root, add the username and password to the command.  

 

 

Last but not least, sqoop project is now "in the attic" which means the project is no longer actively getting support and developement from the open source community.   I recommend that you learn other techniques to complete the same outcome.  

 

View solution in original post

2 REPLIES 2

avatar

@Iwantkakao  There are 2 things i see right off bat:

 

Tue Jan 31 19:47:13 UTC 2023 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.

^^ consider the recommendation:  useSSL=false in your sqoop command.

 

23/01/31 19:47:14 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)

^^ this error is saying that your user does not have access to mysql.  You are going to need to provide a specific user, password, and host, with permissions and grants accordingly.   If your user is root, add the username and password to the command.  

 

 

Last but not least, sqoop project is now "in the attic" which means the project is no longer actively getting support and developement from the open source community.   I recommend that you learn other techniques to complete the same outcome.  

 

avatar
New Contributor

thank you steven!! I'll throw sqoop into the trash can.