進去root許可權(su) 1.從https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-1.2.2/apache-hive-1.2.2-bin.tar.gz獲取鏡像地址選擇版本下載(此處使用清華開源的Apache-hive1.2.2版本) wget ...
進去root許可權(su)
1.從https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-1.2.2/apache-hive-1.2.2-bin.tar.gz獲取鏡像地址選擇版本下載(此處使用清華開源的Apache-hive1.2.2版本)
wget 下載地址
2.解壓安裝hive
tar -xzvf apache-hive-1.2.2-bin.tar.gz
3.設置hive環境變數
vim /etc/profile加入(根據自己安裝的路徑來寫)
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
4.配置Hive
# cd $HIVE_HOME/conf(進入hive目錄下)
此處為:cd /usr/local/hive/conf
cp hive-env.sh.template hive-env.sh cp hive-default.xml.template hive-default.xml cp hive-log4j2.properties.template hive-log4j2.properties cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties
5.創建HDFS目錄(開啟hadoop:start-all.sh)
hdfs dfs -mkdir -p /usr/hive/warehouse(此處的-p指直接創建多級目錄,一次創建成功) hdfs dfs -mkdir -p /usr/hive/tmp hdfs dfs -mkdir -p /usr/hive/log hdfs dfs -chmod g+w /usr/hive/warehouse(設置許可權) hdfs dfs -chmod g+w /usr/hive/tmp hdfs dfs -chmod g+w /usr/hive/log
6.修改 hive-env.sh(位於$HIVE_HOME/bin)
vim hive-env.sh(以下修改自己對應的路徑,以下僅供參考)
export JAVA_HOME=/home/xiaolanlin/jdk1.8.0_201 export HIVE_HOME=/usr/local/hive export HADOOP_HOME=/usr/local/hadoop-2.7.6 export HIVE_CONF_DIR=/usr/local/hive/conf
7.修改 hive-site.xml(位於$HIVE_HOME/conf)
vim hive-site.xml替換以下參數
<property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost:3306/hive</value> <description>JDBC connect string for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> <description>Driver class name for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>xiaolanLin</value>#資料庫用戶名 <description>Username to use against metastore database</description> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>linxiaolan</value>#資料庫密碼 <description>password to use against metastore database</description> </property>下麵的部分如果不配置會產生錯誤
<property> <name>hive.exec.local.scratchdir</name> <value>/usr/local/hive</value> <description>Local scratch space for Hive jobs</description> </property> <property> <name>hive.downloaded.resources.dir</name> <value>/usr/local/hive/hive-downloaded-addDir/</value>#自定義目錄 <description>Temporary local directory for added resources in the remote file system.</description> </property> <property> <name>hive.querylog.location</name> <value>/usr/local/hive/querylog-location-addDir/</value>#自定義目錄 <description>Location of Hive run time structured log file</description> </property> <property> <name>hive.server2.logging.operation.log.location</name> <value>/usr/local/hive/hive-logging-operation-log-addDir/</value>#自定義目錄 <description>Top level directory where operation logs are stored if logging functionality is enabled</description> </property>
8.修改hive-log4j.properties
vim hive-log4j.properties
hive.log.dir=自定義目錄
9.刪除hive-site.xml.swp
rm -rf ./conf/.hive-site.xml.swp(文件修改過程中退出出現的錯誤,會產生緩存文件,將其刪除)
10.創建資料庫和用戶
linux(Ubuntu16.04)安裝mysql參考教程https://www.cnblogs.com/luengmingbiao/p/10864249.htmlmysql -uroot -p(輸入密碼後進入mysql)
hive> create database hive default charser utf8 COLLATE utf8_general_ci; hive> show databases; hive> grant all on hive.* to 'hive'@'%' identified by 'hive';(將所有資料庫的所有表的所有許可權賦給hive用戶,後面的hive是配置hive-site.xml中配置的連接密碼) hive> flush privileges;(刷新mysql系統許可權關係表) hive> exit;(quit;)
11.資料庫的初始化
schematool -initSchema -dbType mysql
12.啟動hive
hive --service metastore
hive
遇到的問題:
1.還未安裝jdbc
wget http://central.maven.org/maven2/mysql/mysql-connector-java/6.0.6/mysql-connector-java-6.0.6.jar(此版本不是目前最新)
2.解決了上面這個問題後,接下來依然報錯
於是我決定將版本升級為目前最新版本wget http://central.maven.org/maven2/mysql/mysql-connector-java/8.0.15/mysql-connector-java-8.0.15.jar(此版本為目前最新)