sqoop错误

yzuktlbb  于 2021-06-03  发布在  Sqoop
关注(0)|答案(1)|浏览(335)

我正在尝试使用sqoop从mysql导入表数据。然而,当我这样做时,我得到了一个糟糕的握手错误。许多在线论坛指出问题出在mysql conf文件上。但是,我在conf文件中没有看到bind address条目。这是我在尝试运行命令时看到的错误 sqoop list-databases --connect jdbc:mysql://localhost/hadoop --username hadoop -P . hadoop是我试图连接的数据库,用户名也是hadoop。

18/04/24 17:06:53 INFO manager.MySQLManager: Preparing to use a MySQL
streaming resultset.

18/04/24 17:06:53 INFO tool.CodeGenTool: Beginning code generation

18/04/24 17:06:53 ERROR manager.SqlManager: Error executing statement:
java.sql.SQLException: Communication link failure: Bad handshake

java.sql.SQLException: Communication link failure: Bad handshake
    at com.mysql.jdbc.MysqlIO.init(Unknown Source)
    at com.mysql.jdbc.Connection.connectionInit(Unknown Source)
    at com.mysql.jdbc.jdbc2.Connection.connectionInit(Unknown Source)
    at com.mysql.jdbc.Driver.connect(Unknown Source)
    at java.sql.DriverManager.getConnection(DriverManager.java:664)
    at java.sql.DriverManager.getConnection(DriverManager.java:247)
    at org.apache.sqoop.manager.SqlManager.makeConnection(SqlManager.java:904)
zsbz8rwp

zsbz8rwp1#

如果您已经提到serverip上的一个数据库,即“连接”,则不能使用“列表数据库”jdbc:mysql://localhost/hadoop”。尝试使用相同的sqoop调用命令,但不使用数据库名称“hadoop”,然后调用“list database”。还要记住,这是在sqoop调用中使用驱动程序,但首先您或您的系统管理员必须将特定的驱动程序放在“lib”文件夹的sqoop目录中。希望这有帮助!

相关问题