Hive 的下载地址如下,
http://www.apache.org/dyn/closer.cgi/hive/
我这里下的是 apache-hive-1.2.1-bin.tar.gz,Ubuntu 账户为 hadoop
下载并解压 hive 程序:
sudo tar -zxvf ~/Downloads/apache-hive-1.2.1-bin.tar.gz -C /usr/local # 解压到/usr/local中 cd /usr/local/ sudo mv apache-hive-2.3.4-bin hive # 将文件夹名改为hive
sudo chown -R hadoop:hadoop hive # 修改文件权限
配置环境变量:
vim ~/.bashrc
在文件最前面一行添加如下内容:
HADOOP_HOME需要被配置成你机器上Hadoop的安装路径,比如这里是安装在/usr/local./hadoop目录。
export HIVE_HOME=/usr/local/hive export PATH=$PATH:$HIVE_HOME/bin export HADOOP_HOME=/usr/local/hadoop
保存退出后,运行如下命令使配置立即生效:
source ~/.bashrc
修改 /usr/local/hive/conf
下的 hive-site.xml
先将 hive-default.xml.template 重命名为 hive-default.xml;然后使用 vim 编辑器新建一个配置文件hive-site.xml
cd /usr/local/hive/conf mv hive-default.xml.template hive-default.xml
sudo vim hive-site.xml
在hive-site.xml中添加如下配置信息,保存退出
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost: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>hive</value> <description>username to use against metastore database</description> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>hive</value> <description>password to use against metastore database</description> </property> </configuration>
配置 mysql
具体安装看我上一篇随笔
下载 mysql jdbc 包:
我下载的版本为:mysql-connector-java-5.1.40.tar.gz
这里我们采用MySQL数据库保存Hive的元数据,而不是采用Hive自带的derby来存储元数据。
将 mysql-connector-java-5.1.40-bin.jar 拷贝到 /usr/local/hive/lib 目录下
ar -zxvf mysql-connector-java-5.1.40.tar.gz #解压 cp mysql-connector-java-5.1.40/mysql-connector-java-5.1.40-bin.jar /usr/local/hive/lib
启动并登陆mysql shell
service mysql start #启动mysql服务 mysql -u root -p #登陆shell界面
新建 hive 库
mysql> create database hive; #这个hive数据库与hive-site.xml中localhost:3306/hive的hive对应,用来保存hive元数据
配置 Mysql 允许hive 接入:
mysql> grant all on *.* to hive@localhost identified by 'hive'; #将所有数据库的所有表的所有权限赋给hive用户,后面的hive是配置hive-site.xml中配置的连接密码 mysql> flush privileges; #刷新mysql系统权限关系表
启动 Hive
启动 Hive 之前,需要先启动 hadoop 集群。注意,我们这里已经配置了PATH,所以这一步操作我们不需要把start-all.sh和hive命令的路径加上
start-all.sh #启动hadoop hive #启动hive
如果是加上安装路径的话,我们应该要这样写:
cd /usr/local/hadoop ./sbin/start-all.sh cd /usr/local/hive ./bin/hive
参考网址: