Hadoop2.7實戰v1.0之Eclipse+Hive2.0.0的JDBC案例(最詳細搭建)
一.環境搭建(Hadoop+Hive)
window7: eclipse4.5.1
linux: hadoop-01 192.168.33.01
Hadoop-2.7.2+zookeeper-3.4.6完全分散式環境搭建(HDFS、YARN HA)
Hadoop2.7實戰v1.0之Hive-2.0.0+MySQL遠端模式安裝
Hadoop2.7實戰v1.0之Hive-2.0.0的Hiveserver2服務和beeline遠端除錯
hadoop-01 要有 Hdfs namenode(active),Yarn resourcemanager(active),Hive metastore 和hiveserver2程式.
二.啟動hive metastore和hiveserver2服務命令
[root@hadoop-01 bin]# hive --service metastore &
[root@hadoop-01 bin]# hive --service hiveserver2 &
三.搭建
1.下載解壓hadoop和hive
到window7的D:\Hadoop\hadoop-2.7.2
到window7的D:\Hadooop\apache-hive-2.0.0-bin
2.啟動eclipse,新建工程HiveCaseProject,匯入需要的jar包
a.匯入hive的lib資料夾下所有的包
b.匯入hadoop的D:\Hadoop\hadoop-2.7.2\share\hadoop\common\hadoop-common-2.7.2.jar
3.新建hiveserver2Test.class檔案
4.hiveserver2Test.class示例程式碼
點選(此處)摺疊或開啟
-
package com.hadoop.hive;
-
import java.sql.Connection;
-
import java.sql.DriverManager;
-
import java.sql.ResultSet;
-
import java.sql.SQLException;
-
import java.sql.Statement;
-
-
public class hiveserver2Test {
-
public boolean run() {
-
Connection con=null;
-
Statement stmt =null;
-
ResultSet rs=null;
-
String tableName="studentinfo";//表名
-
-
try {
-
String driver="org.apache.hive.jdbc.HiveDriver";//Hive的驅動字串
-
Class.forName(driver); //載入Hive驅動
-
con = DriverManager.getConnection("jdbc:hive2://192.168.33.01:10000", "root", "");//獲取hive2的jdbc連線,注意預設的資料庫是default
-
stmt = con.createStatement();
-
rs=stmt.executeQuery("select * from "+tableName+" ");//查詢所有,直接執行
-
while(rs.next()){
-
System.out.println("id:"+rs.getString(1)+" "+"name:"+rs.getString(2)+" "+"age:"+rs.getString(3)+" "+"tel:"+rs.getString(4)+" ");
-
}
-
-
System.out.println("查詢成功!");
-
stmt.close();
-
con.close();
-
-
return true;
-
} catch (Exception e) {
-
e.printStackTrace();
-
System.out.println("error");
-
return false;
-
-
}
-
}
-
-
public static void main(String[] args) throws SQLException {
-
hiveserver2Test hiveJdbcClient = new hiveserver2Test();
-
hiveJdbcClient.run();
-
}
-
- }
5.第一次除錯--Error
錯誤1: StaticLoggerBinder.class衝突,移除log4j-slf4j-impl-2.4.1.jar即可
錯誤2: ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console.
這句意思就是沒有找到log4j2的配置檔案
6.配置log4j2檔案
http://www.cnblogs.com/morvenhuang/p/3958086.html
a.由於hive的lib目錄有log4j2相關包,在第2.2步已經匯入,無需再匯入
b.建立resources資料夾,然後在resources資料夾下建立log4j2.xml檔案
log4j2.xml檔案
點選(此處)摺疊或開啟
-
<?xml version="1.0" encoding="UTF-8"?>
-
<Configuration status="warn">
-
<Appenders>
-
<Console name="Console" target="SYSTEM_OUT">
-
<PatternLayout pattern="%m%n" />
-
</Console>
-
</Appenders>
-
<Loggers>
-
<Root level="INFO">
-
<AppenderRef ref="Console" />
-
</Root>
-
</Loggers>
- </Configuration>
c. 把resources資料夾新增到class中
7.第二次除錯--Success
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30089851/viewspace-2117921/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Sharding JDBC案例實戰JDBC
- 史上最詳細的Hadoop環境搭建Hadoop
- 史上最全最強SpringMVC詳細示例實戰教程SpringMVC
- JDBC 詳細介紹JDBC
- 最詳細的JavaWeb開發基礎之java環境搭建(Mac版)JavaWebMac
- 最詳細的JavaWeb開發基礎之java環境搭建(Windows版)JavaWebWindows
- Mac版最詳細的Flutter開發環境搭建MacFlutter開發環境
- 史上最詳細的Vue實戰專案之喵喵電影原始碼免費領取Vue原始碼
- 智慧化生產應用搭建的實戰案例
- 全網最詳細最齊全的序列化技術及深度解析與應用實戰
- openstack完整的部署(最詳細)
- Spark SQL:JDBC資料來源複雜綜合案例實戰SparkSQLJDBC
- 入門 | Tensorflow實戰講解神經網路搭建詳細過程神經網路
- Flutter入門之Mac最詳環境搭建FlutterMac
- Semaphore最詳細解析
- Kylin官方案例詳細剖析及剪枝優化-OLAP商業環境實戰優化
- ClickHouse(17)ClickHouse整合JDBC表引擎詳細解析JDBC
- 最詳細的spring(IOC、AOP)教程Spring
- kubernetes實戰篇之dashboard搭建
- 最詳細STL(一)vector
- Linux tar打包命令詳解,附實戰案例!Linux
- kubernetes實戰篇之helm示例yaml檔案檔案詳細介紹YAML
- 《Kafka實戰》之生產者API使用(引數解釋超詳細)KafkaAPI
- Gradio入門到進階全網最詳細教程[二]:快速搭建AI演算法視覺化部署演示(側重引數詳解和案例實踐)AI演算法視覺化
- Canal詳細入門實戰(使用總結)
- Spring Cloud 微服務實戰詳細筆記SpringCloud微服務筆記
- 線上最佳化之案例實戰
- 史上最為詳細的javascript繼承JavaScript繼承
- 可能是最詳細的字元編碼詳解字元
- 應該是最詳細的-swift Moya+handyJSON網路框架的搭建及封裝SwiftJSON框架封裝
- MySQL觸發器的詳細教學與實戰分析MySql觸發器
- 本年度最火爆的,Python網路爬蟲開發實戰, 案例為王,注重實戰Python爬蟲
- Java設計模式之單例模式,這是最全最詳細的了Java設計模式單例
- JDBC+MySQL入門實戰(實現CURD的例子)JDBCMySql
- tensorboard 視覺化的最詳細介紹ORB視覺化
- vue的事件冒泡 最詳細解釋版本Vue事件
- Leetcode 169:求眾數(最詳細的解法!!!)LeetCode
- mysql 5.7配置項最詳細的解釋MySql
- Django搭建示例專案實戰與避坑細節Django