«Ошибка при создании менеджера базы данных» - ошибка в запросе импорта sqoop - PullRequest
4 голосов
/ 10 декабря 2011

Сценарий:

Я пытаюсь импортировать с сервера sql в HDFS, но получаю сообщения об ошибках:

Ошибка:

hadoop@ubuntu:~/sqoop-1.1.0/bin$ ./sqoop import --connect 'jdbc:sqlserver://192.168.230.1;username=xxx;password=xxxxx;database=HadoopTest' --table PersonInfo --target-dir /home/hadoop/hadoop-0.21.0/

11/12/10 12:13:20 ERROR tool.BaseSqoopTool: Got error creating database manager: java.io.IOException: No manager for connect string: jdbc:sqlserver://192.168.230.1;username=xxx;password=xxxxx;database=HadoopTest
at com.cloudera.sqoop.ConnFactory.getManager(ConnFactory.java:119)
at com.cloudera.sqoop.tool.BaseSqoopTool.init(BaseSqoopTool.java:178)
at com.cloudera.sqoop.tool.ImportTool.init(ImportTool.java:81)
at com.cloudera.sqoop.tool.ImportTool.run(ImportTool.java:411)
at com.cloudera.sqoop.Sqoop.run(Sqoop.java:134)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:69)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:83)
at com.cloudera.sqoop.Sqoop.runSqoop(Sqoop.java:170)
at com.cloudera.sqoop.Sqoop.runTool(Sqoop.java:196)
at com.cloudera.sqoop.Sqoop.main(Sqoop.java:205)

Вопрос:

В чем проблема, которую я не получаю?Моя версия Hadoop: hadoop-0.21.0 Версия Sqoop: sqoop-1.1.0

Пожалуйста, предложите мне решение.Благодарю.

Ответы [ 3 ]

2 голосов
/ 06 мая 2014

Ваш синтаксис неправильный.Используйте синтаксис ниже

 ./sqoop import --connect jdbc:sqlserver://192.168.230.1:<PORT_NUMBER>/HadoopTest --username xxx --password xxxxx --table PersonInfo --target-dir /home/hadoop/hadoop-0.21.0/

Также убедитесь, что jdbc jasrs должен присутствовать в

$SQOOP_HOME/lib
0 голосов
/ 23 февраля 2017

Как бы странно это не звучало, использование одиночной метки 'для включения вашей строки подключения может вызвать проблемы. Если вы используете двойные кавычки "или вообще ничего, это может работать лучше для вас - по крайней мере, в моей среде.

Итак, вместо

./sqoop import --connect 'jdbc:sqlserver://192.168.230.1;username=xxx;password=xxxxx;database=HadoopTest' --table PersonInfo --target-dir /home/hadoop/hadoop-0.21.0/

попробовать

./sqoop import --connect "jdbc:sqlserver://192.168.230.1;username=xxx;password=xxxxx;database=HadoopTest" --table PersonInfo --target-dir /home/hadoop/hadoop-0.21.`0/

или

./sqoop import --connect jdbc:sqlserver://192.168.230.1;username=xxx;password=xxxxx;database=HadoopTest --table PersonInfo --target-dir /home/hadoop/hadoop-0.21.0/

Надеюсь, это поможет.

0 голосов
/ 10 декабря 2011

Необходимо указать Drivermanager

- драйвер com.microsoft.jdbc.sqlserver.SQLServerDriver

...