Sqoop 和 hive 连接到 sqlserver
Posted
技术标签:
【中文标题】Sqoop 和 hive 连接到 sqlserver【英文标题】:Sqoop and hive connect to sqlserver 【发布时间】:2016-12-22 15:37:37 【问题描述】:我有我的 SQL 服务器名称和我的 IP,但我无法将 SQL 服务器数据库连接到 Hadoop Hive 数据库。
我在 coursera 中运行以下命令:
sqoop import
--connect 'jdbc:sqlserver://myip:port;username=myusername;password=mypass;databaseName=myDB"
--table mytablename
--hive import
但它说:
"无法加载数据库驱动类: com.microsoft.sqlserver.jdbc.SQLServerDriver"
任何想法如何构造连接字符串? 考虑 servername=servername。
【问题讨论】:
类路径中有 SQL Server JDBC 驱动程序吗? 您是否下载并安装了$SQOOP_HOME/lib
目录下的SQL Server驱动程序?
请澄清一下,如果您想将数据导入 Hive 表或某个 HDFS 目录?
【参考方案1】:
通过以下命令下载SQL server JDBC驱动,
curl -L 'https://download.microsoft.com/download/0/2/A/02AAE597-3865-456C-AE7F-613F99F850A8/sqljdbc_6.0.8112.200_enu.tar.gz'| tar xz
将 JAR 文件复制到$SQOOP_HOME/lib/
目录。
对于 Java 7:
cp ~/sqljdbc_6.0/enu/jre7/sqljdbc41.jar /$SQOOP_HOME/lib/
对于 Java 8:
cp ~/sqljdbc_6.0/enu/jre8/sqljdbc42.jar /$SQOOP_HOME/lib/
【讨论】:
以上是关于Sqoop 和 hive 连接到 sqlserver的主要内容,如果未能解决你的问题,请参考以下文章
Sqoop从本地MySQL导入到Hive为啥要求Sqoop一定要在HDFS中
怎样用sqoop把navicat for mysql 里的表导入到hive中
java - 如何在java jdbc中使用sqoop从sql server导入hive?