2016-04-11 5 views
1

Ich habe 5 Datensätze in Mitarbeiter Tabelle importieren inKann die Tabelle aus Mysql mit Sqoop in MySQL in demo_poc Datenbank

192.168.1.126 [Maschinen-1].

Ich möchte die Daten in Bienenstock importieren in

192.168.1.129 [Maschinen-2] mit Sqoop.

Ich installierte sqoop 1.4.6 auf Machine-2.

ich so versucht,

sqoop import --connect jdbc:mysql://192.168.1.126:3306/demo_poc 
--username root --password root --table employee -m 10 
--hive-import --hive-table demo_poc.address 

Hier ist der Fehler, den ich erhielt,

16/04/11 16:28:20 INFO tool.CodeGenTool: Beginning code generation 
16/04/11 16:28:21 ERROR manager.SqlManager: Error executing statement: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 
16/04/11 16:28:21 ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: No columns to generate for ClassWriter 

Irgendwelche Vorschläge. Danke.

Antwort

0

Scheint so, als ob Sie keine Verbindung mit MySQL herstellen können.

Überprüfen Sie zwei Dinge.

  1. Ist die Maschine, auf der MySQL läuft, zugänglich?

    versuchen ping 192.168.1.126 Befehl von sqoop Maschine.

  2. Überprüfen Sie Mysql-Port.

Diese question wird Ihnen dabei helfen.

0

Dieser Fehler tritt aus vielen Gründen auf. Sie können damit beginnen,

  • Dieser Fehler kann auftreten, wenn Sie auch fehlerhafte MySQL-Anmeldeinformationen haben. Stellen Sie eine Verbindung zu MySQL auf Maschine 2 her, indem Sie die Anmeldeinformationen in Sqoop von der CLI auf Maschine 2 verwenden. Überprüfen Sie die genaue Datenbank, Befehle usw. Wenn dies nicht möglich ist, kann es sich um ein hostbezogenes Berechtigungsproblem für den MySQL-Benutzer handeln Verwenden in Sqoop-Befehl.
1
sqoop-import --connect jdbc:mysql://192.168.1.126:3306/demo_poc --username root --P --table employee -m 1 --hive-import --hive-table demo_poc.employee 
+0

Bitte erläutern Sie Ihre Antwort. –

0

Die IP-Adressen, die Sie sehen aus wie im gleichen Netzwerk zur Verfügung gestellt. Wenn diese beiden Maschinen im Netzwerk sind, kann der Ping-Befehl funktionieren. Nachdem wir den Ping 'I.P of MYSQL' eingegeben haben, wird die Kommunikation beendet.

MYSQL> gewähren Sie alle Berechtigungen auf . zu '' @ '192.168.1.129' MYSQL> gewähren Sie alle Berechtigungen auf . zu '%'@'192.168.1.129' über zwei Befehle auf MYSQL-Maschine von Admin ausgeführt.

Verwandte Themen