logo资料库

Sqoop将SQLServer数据表导入HDFS.docx

第1页 / 共3页
第2页 / 共3页
第3页 / 共3页
资料共3页,全文预览结束
Sqoop 将数据从 SQLServer 导入到 HBase 1、 Sqoop 安装包中并不包含 jdbc 的 SqlServer 驱动,所以想在 HDFS 和 SqlServer 数据库之间导 入 导 出 数 据 , 则 需 要 先 下 载 jdbc 的 SqlServer 驱 动 。 到 http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=21599 上 下载 jdbc 驱 动 1033\sqljdbc_3.0.1301.101_enu.tar.gz,解压,把 sqljdbc4.jar 包拷贝到 Sqoop 安装 目录下 的 lib 目录下 2、 但是这个只是 jdbc 中 SqlServer 的驱动,它并不支持 HDFS 与 SqlServer 数据库之间数据的传 SQL Server-Hadoop Connector 。 下 载 地 址 为 输 , 还 需 要 下 载 http://www.microsoft.com/download/en/details.aspx?id=27584 , 解压得到 sqoop-sqlserver-1.0 目录,并在系统中添加环境变量 MSSQL_CONNECTOR_HOME,让它指向 sqoop- sqlserver-1.0 目录 3、 然后执行 sqoop-sqlserver-1.0 目录下的 install.sh。这个命令会将连接的 jar 文件和配置文 件拷 贝的 Sqoop 目录中 4、 sqoop import --connect 'jdbc:sqlserver://192.168.4.155;username=sa;password=sa;database=pi' --table=pi_item_master --target-dir /user/cloudcomputing/output -m 3 便可以把 IP 地址为 192.168.1.123 机器上的 test 数据库中的 test 表导入到 HDFS 上的 /user/cloudcomputing/output 目录下。 导出: $bin/sqoop export --connect 'jdbc:sqlserver://192.168.1.123;username=test;password=123;database=test' --table test --export-dir /user/cloudcomputing/output 便可以把/user/cloudcomputing/output 目录下的数据导入到 192.168.1.123 机器上的 test 数据库 中的 test 数据表中。 5、 遇到一个问题 Java Runtime Environment (JRE) version 1.7 is not supported by this driver 在 sqoop/lib 下只需要将 sqljdbc4.jar 拷贝到文件夹下即可。 参考资料: http://stackoverflow.com/questions/14109868/http-status-500-java-runtime-environment-jre-ver sion-1-7-is-not-supported-by I am trying to access MS SQL server 2005 from a servlet file. I am using JDBC 4.0 driver. I have already added the JAR files files to my Tomcat But while running code I am getting an error and sqljdbc4.jar sqljdbc.jar /lib folder. HTTP Status 500 - Java Runtime Environment (JRE) version 1.7 is not supported by this driver. Use the sqljdbc4.jar class library, which provides support for JDBC 4.0.
How is this caused and how can I solve it? My code is: Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); Connection conn = conn = DriverManager.getConnection("jdbc:sqlserver://localhost;databaseName=school;user=sa ;password=123"); PrintWriter pwOut = res.getWriter(); pwOut.println("Connected"); Statement st = conn.createStatement(); String searchCriteria = req.getParameter("txtSearch"); ResultSet rs = st.executeQuery("select * from student"); res.setContentType("text/html"); activeoldest votes The error message is pretty clear. Tomcat is using the wrong driver. You state that you copied folder. That is most probably the reason for your problem. You Try to delete from the Tomcat lib folder need sqljdbc4.jar sqljdbc.jar only sqljdbc.jar and sqljdbc4.jar into the Tomcat lib otherwise Tomcat picks up the wrong one. Here is my Code to connect java to Microsoft sql Server 2012 You only need sqljdbc4.jar that avail on offical Microsoft website. Here is the link: http://download.microsoft.com/download/0/2/A/02AAE597-3865-456C-AE7F-613F99F8 50A8/sqljdbc_4.0.2206.100_enu.exe It contains 2 jar files, and I am trying to use I am using to connect: package com.Sql.ConnectDB; sqljdbc4.jar. This is the code import java.sql.*; public class DbClass { public static void main(String[] args) { // TODO Auto-generated method stub try{ **String url="jdbc:sqlserver://localhost;databaseName=Student";**//important
String user="username"; String pass="password"; **Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");**//important Connection con=DriverManager.getConnection(url,user,pass); System.out.println("Conneccted Successfully"); }catch(Exception e){ e.printStackTrace(); } } }
分享到:
收藏