Our Community is getting an upgrade! To get everything ready for the relaunch, we’ll be placing the site in read-only mode starting September 21st.
We really appreciate your understanding while we get things set up behind the scenes. Catch up on all the exciting details about the move here.
Need help or have questions? Drop us a line at [email protected]
Created 03-08-2018 11:02 PM
I am trying to import a table named 'widgets' in the data base 'Testdb' with the command below:
$sqoop import --connect jdbc:mysql://hadoop/Testdb --table widgets -m 4 -username root -P
I get the error "Got exception running Sqoop: java.lang.RuntimeException: Could not load db driver class: com.mysql.jdbc.Driver"
Created 03-08-2018 11:26 PM
If you do not have the mysql driver in your host then please install it as following:
# yum install mysql-connector-java* # cp -f /usr/share/java/mysql-connector-java.jar /usr/hdp/current/sqoop-client/lib/
.
If you do not want to use "yum" to install mysql-connector-java then you can also download the tar archive of the connector from the following site and then put the extracted JAR (mysql-connector-java*.jar) inside the "usr/hdp/current/sqoop-client/lib/"
https://dev.mysql.com/downloads/connector/j/
.
Created 03-08-2018 11:13 PM
Did you copy the JDBC driver (mysql-connector-java*) to the $SQOOP_HOME/lib directory of your Sqoop installation.?
Then re-run the command
Created 03-08-2018 11:24 PM
$ls -ltr /usr/share/java/mysql-connector-java-5.1.17.jar
ls: cannot access '/usr/share/java/mysql-connector-java-5.1.17.jar': No such file or directory
Created 03-08-2018 11:17 PM
You will need to download the mysql-connector-java (MySQL JDBC driver) and then put it to the following location:
# cp -f /usr/share/java/mysql-connector-java.jar /usr/hdp/current/sqoop-client/lib/
The you can run the Sqoop command something like following:
# su -l sqoop -c "sqoop import --connect jdbc:mysql://hadoop/Testdb --table widgets -m 4 --username root --password CHANGEME --driver com.mysql.jdbc.Driver"
.
Created 03-08-2018 11:19 PM
Following link talks about it in more detail: https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.6.4/bk_data-movement-and-integration/content/ap...
Created 03-08-2018 11:38 PM
$ cp -f /usr/share/java/mysql-connector-java.jar /usr/hdp/current/sqoop-client/lib/
cp: '/usr/share/java/mysql-connector-java.jar' and '/usr/hdp/current/sqoop-client/lib/mysql-connector-java.jar' are the same file
Created 03-08-2018 11:48 PM
Do you see the following symlink exist with the following user permission:
# ls -l /usr/hdp/current/sqoop-client/lib/mysql-connector-java.jar lrwxrwxrwx. 1 root root 40 Jun 9 2017 /usr/hdp/current/sqoop-client/lib/mysql-connector-java.jar -> /usr/share/java/mysql-connector-java.ja
.
Also do you see the following command shows the class found?
# jar -tvf /usr/share/java/mysql-connector-java.jar | grep 'com.mysql.jdbc.Driver' 919 Tue Jan 01 00:00:00 UTC 1980 com/mysql/jdbc/Driver.class
Created 03-08-2018 11:26 PM
If you do not have the mysql driver in your host then please install it as following:
# yum install mysql-connector-java* # cp -f /usr/share/java/mysql-connector-java.jar /usr/hdp/current/sqoop-client/lib/
.
If you do not want to use "yum" to install mysql-connector-java then you can also download the tar archive of the connector from the following site and then put the extracted JAR (mysql-connector-java*.jar) inside the "usr/hdp/current/sqoop-client/lib/"
https://dev.mysql.com/downloads/connector/j/
.
Created 03-08-2018 11:48 PM
#su -l sqoop -c "sqoop import --connect jdbc:mysql://hadoop/Testdb --table widgets -m 4 --username root --password CHANGEME --driver com.mysql.jdbc.Driver"
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
Created 03-08-2018 11:50 PM
Now the error says that it is not able to communicate with MySQL server.
So please check if your mysql server is running file and listening to "hadoop:3306" port
# netstat -tnlpa | grep 3306 # hostname -f # ps -ef | grep mysql
.
Also please check if there is any issue/error logged in mysql log.
.