How do i know if i have drivers to connect to SQL Server or Teradata database? I tried "show connectors --all" from sqoop shell and it gives me only JDC generic driver.
Sqoop ships with the SQL Server connector, but the Teradata connector is available separately:
You may find this post useful:
is it ok if i place the drivers in/usr/lib/ instead of/usr/lib/sqoop/lib/? does that make any difference? Also do you know if i have to restart sqoop to show up in the sqoop GUI? i see only generic-jdbc connector at this point.
"Connectors" and "Drivers" are two distinct concepts in Sqoop. We've recently published a blog post explaining the different. The blogpost is focuting on Sqoop 1 and not Sqoop 2 that you seem to be using, but the concepts remains the same. To put it into nutshell - Connector is sqoop specific piece that is usually shipped with Sqoop. Driver is a database specific piece is not shipped with Sqoop due to licensing. You need both in order to transfer data.
Sqoop 2 currently ships with "Generic JDBC Connector" that is able to transfer data from any JDBC compliant database (MySQL, PostgreSQL, ...), however you also need to provide corresponding JDBC driver. Current instalation guide is describing that the correct directory for installing JDBC Drivers into Sqoop 2 is /var/lib/sqoop2. As the drivers are connectors are not the same, you won't see installed JDBC drivers when executing "show connector --all".