突然想起來之前寫過一篇關於將hive元數據庫從默認的本地derby更改為綁定到遠程mysql的文章,在雲筆記裡面翻了一下發現還真在,現在分享給各位~~
環境:二、安裝配置hive
1. 安裝hive
重命名為hive
2. 配置hive
配置hive環境變量:
#vim /etc/profile
修改並保存完後記得source一下
#source /etc/profile
復制一份hive-env.sh.template 模板重命名為hive-env.sh,並修改內容:
#cp hive-env.sh.template hive-env.sh
#vim hive-env.sh
修改hadoop_home為hadoop安裝路徑
復制一份hive-default.xml.template重命名為hive-site.xml
#cp hive-default.xml.template hive-site.xml
#vim hive-site.xml
更改hive-site.xml中以下內容:
注意:
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost/hive?createDatabaseIfNotExist=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
標紅位置是使用的mysql數據庫名字,所以一定要賦予mysql用戶對hive的全部權限。
這裡是配置登錄到mysql的用戶名和密碼,是之前在mysql中設置好並賦予了足夠權限的。
添加hive安裝目錄下lib目錄下缺少的mysql-connector-java-5.1.34.tar.gz 包。
下載地址:http://ftp.jaist.ac.jp/pub/mysql/Downloads/Connector-J/
(之前把該文件放入了sqoop目錄下,所以直接從那兒進行copy)
切換進hvie目錄,啟動元數據服務進程
hive#./bin/hive --service metastore
新建一個連接或終端,進入hive:
成功!接下來就可以使用hive進行操作了。
關於
WARN conf.HiveConf: DEPRECATED: hive.metastore.ds.retry.* no longer has any effect. Use hive.hmshandler.retry.* instead
解決方法:
將hive下配置文件hive-site.xml中hive.metastore.ds.retry有關的配置替換為hive.hmshandler.retry
然後就不會有這個warning了。