1.下載對應版本的hive,然後通過ftp上傳到linux服務器,解壓,然後改名,我是放在/usr/local
目錄下面。
#給該文件可讀可寫可執行權限
chmod 777 hive-0.10.0.tar.gz
#移動到/usr/local目錄下面
cp hive-0.10.0.tar.gz /usr/local
#解壓該文件
tar -xvf hive-0.10.0.tar.gz
#將該文件改名爲hive(便於操作)
mv hive-0.10.0.tar.gz hive
2.修改linux的配置文件:
vim /etc/profile
然後在下面添加環境變量:
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HBASE_HOME/bin:$HIVE_HOME/bin
然後保存退出,並執行下面命令使得環境變量生效:
source /etc/profile
3.進入hive目錄下面的conf目錄,將下面兩個文件改一下名字:
mv hive-env.sh.template hive-env.sh
mv hive-default.xml.template hive-site.xml
4.修改hadoop/conf目錄下面hadoop-env.sh文件(否則啓動hive會報找不到類的錯誤):
# Extra Java CLASSPATH elements. Optional.
export HADOOP_CLASSPATH=.:$CLASSPATH:$HADOOP_CLASSPATH:$HADOOP_HOME/bin
5.修改hive/conf目錄下面的hive-config.sh,增加下面三行:
export JAVA_HOME=/usr/local/jdk
export HIVE_HOME=/usr/local/hive
export HADOOP_HOME=/usr/local/hadoop
現在便可以啓動hive:
運行:hive
然後運行show tables
,便可以查看裏面的表。
因爲hive默認使用的元數據數據庫是Derby,只允許單用戶訪問,我們需要在這裏將他改爲Mysql,下面是如何改爲mysql:
1.安裝mysql:
先查看一下是否已經安裝了mysql:
rpm -qa | grep mysql
如果有相關軟件先強制卸載它:
rpm -e mysql-libs-5.1.71-1.el6.x86_64 --nodeps
然後安裝mysql-server:
rpm -i MySQL-server-5.6.26-1.el7.x86_64.rpm
安裝完成後後臺啓動:
mysqld_safe &
然後安裝mysql-client:
rpm -i MySQL-client-5.6.26-1.el7.x86_64.rpm
然後執行下面的命令設置root密碼:
mysql_secure_installation
進入mysql並創建數據庫:
mysql -uroot -proot
create database hive
然後賦予所有權限:
grant all on hive.* to root@'%' identified by 'root';
使設置生效:
flush privileges
把數據庫的字符類型改爲latin1:
set global binlog_format='MIXED';
2.修改一下hive的配置文件:hive/conf/hive-site.xml
:
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://172.21.15.16:3306/hive?createDatabaseIfNotExist=true</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>root</value>
<description>username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>root</value>
<description>password to use against metastore database</description>
</property>
3.將jdbc的jar包複製到/usr/local/hive/lib中,便可以啓動hive