Sqoop Неверный URL-адрес подключения SQL Server

Когда я пытаюсь запустить sqoop, я получаю следующую ошибку:

java.lang.IllegalArgumentException: Invalid connection URL url jdbc:sqlserver://{host}:{port}

Моя команда:

sqoop list-databases \
--connect jdbc:sqlserver://{host}:{port} --username abc --password xyz

Какие-либо предложения?


person Katanic    schedule 29.07.2016    source источник


Ответы (2)


Это допустимый URL-адрес SQLserver: jdbc:sqlserver://xx.xx.xx.xx:3464;databaseName=testing

ваша команда должна использовать hostname или IP в строке JDBC, а НЕ имя пользователя, вы можете получить hostname вашего компьютера с помощью этой команды: hostname -f или использовать hostname -i для IP

sqoop list-databases \
--driver com.microsoft.jdbc.sqlserver.SQLServerDriver \
--connect 'jdbc:sqlserver://{host}:{port}' \
--username abc \
--password xyz

OR

sqoop list-databases 
--connect "jdbc:sqlserver://ML-xyz:1433;username=abc;password=abc"

пример здесь:

sqoop list-databases --connect jdbc:sqlserver://192.168.56.1:1433 --username hadoop --password hadoop1
person Ronak Patel    schedule 29.07.2016
comment
Извините, это была опечатка. У меня там был хост, к сожалению, все еще получаю эту ошибку. - person Katanic; 29.07.2016
comment
попробуйте заключить в одинарную кавычку ' строку jdbc - person Ronak Patel; 29.07.2016
comment
Пробовал безуспешно. Может ли проблема быть в том, что мой пароль содержит специальные символы? Например, знак равенства и плюс? - person Katanic; 29.07.2016
comment
вы можете попробовать с параметром драйвера --driver com.microsoft.jdbc.sqlserver.SQLServerDriver тоже? - смотреть обновления - person Ronak Patel; 29.07.2016
comment
также попробуйте передать имя пользователя и пароль в строке подключения самостоятельно - см. мой обновленный ответ - person Ronak Patel; 29.07.2016
comment
Получите следующую ошибку: Не удалось загрузить класс драйвера базы данных: com.microsoft.jdbc.sqlserver.SQLServerDriver. Поэтому мне нужно настроить драйвер, кажется. - person Katanic; 30.07.2016
comment
Да, теперь скачайте diver jar и поместите его в папку sqoop lib. Затем запустите команду sqoop с --drive, как показано выше. - почти готово :) - person Ronak Patel; 30.07.2016

у нас такая же проблема, как только я удалил mariadb-java-client-1.4.6.jar и mariadb-java-client-1.2.0.jar из папки hive lib, команды sqoop для mssql работают должным образом.

person praveen kumar    schedule 06.11.2016