1 安装JDK 请参照jdk的安装步骤。
2 安装Hadoop 请参照hadoop安装步骤。
3 下载Hive 下载地址:http://mirrors.tuna.tsinghua.edu.cn/apache/hive/ 在该地址下载稳定版本的hive,我下载的版本是:apache-hive-2.1.1-bin.tar.gz 将下载的hive安装包上传到服务器上的~/Downloads目录下。
4 安装Hive 4.1 解压hive安装包 $>tar -xzvf apache-hive-2.1.1-bin.tar.gz 4.2 拷贝hive文件到/software目录 $>mv apache-hive-2.1.1-bin /software 注意:为了方便使用,我们创建一个hive的链接: $>ln -s /software/ apache-hive-2.1.1-bin /software/hive 4.3 配置hive的环节变量 $>sudo vim /etc/profile export JAVA_HOME=/software/jdk export HADOOP_HOME=/software/hadoop export HIVE_HOME=/software/hive export PATH=$HIVE_HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PA TH $>source /etc/profile
5 配置Hive $ cd $HIVE_HOME/conf $ cp hive-env.sh.template hive-env.sh 5.1 编辑hive-env.sh文件 export HADOOP_HOME=/software/hadoop 5.2 配置hive的元数据库 $ cd $HIVE_HOME/conf $ cp hive-default.xml.template hive-site.xml 编辑hive-site.xml文件,修改元数据库连接: 因为我们这里使用的hive内置的derby数据库,故配置不变 <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:derby:;databaseName=metastore_db;create=true</value> <description> JDBC connect string for a JDBC metastore. To use SSL to encrypt/authenticate the connection, provide database-specific SSL flag in the connection URL. For example, jdbc:postgresql://myhost/db?ssl=true for postgres database. </description> </property> 如果需要修改,则配置例子如下: <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:derby://localhost:1527/metastore_db;create=true </value> <description>JDBC connect string for a JDBC metastore </description> </property> 5.3 修改hive-site.xml文件中的配置变量 替换所有的 ${system:java.io.tmpdir}=/home/hadoop/hive 替换所有的 ${system:user.name}=hadoop
6 验证hive 6.1 启动hadoop $ start-dfs.sh $ start-yarn.sh 6.2 初始化schema库 $>/software/hive/bin/schematool -initSchema -dbType derby 完程后,在当前目录下创建一个文件夹metastore_db(元数据库) 6.3 进入hive shell $>hive
7 将Hive中的schema存放到外部的MySql
7.1 配置mysql数据库连接信息
编辑hive-site.xml,添加mysql连接信息
[hive/conf/hive-site.xml]
<!—服务端配置-->
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://192.168.137.1:3306/myhive?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>Admin@3er</value>
</property>
<!—客户端配置-->
<property>
<name>hive.metastore.local</name>
<value>false</value>
</property>
<property>
<name>hive.metastore.uris</name>
<value>thrift://s200:9083</value>
</property>
7.2 在mysql中创建myhive数据库 $>create database myhive ; 7.3 mysql驱动程序(jar)放置到hive classpath下 将mysql驱动包放置到$HIVE_HOME/lib/目录下 7.4 重新初始化hive schema元数据库 $ schematool -initSchema -dbType mysql 7.5 启动hive服务端 $ hive --service metastore & 7.6 验证Hive 参考步骤6