os : Ubuntu 16.04 LTS 64bit
jdk : 1.8.0_161
Hive:hive-2.3.6
Mysql:
Hive 下载地址:https://mirror.bit.edu.cn/apache/hive/java
mysql在Hive环境中用于记录元数据。记录的元数据包括:表名与结构化文件的映射关系、表字段与结构化文件字段的映射关系。
备注:Hive有自带的元数据存储器derby,每次都启动都在当前路径下生成derby.log和metadata,不一样路径启动Hive都有本身独立的元数据,不可以共享,在生产环境中通常使用mysql存储元数据。
若是使用derby存储元数据,须要先实例化。
./schematool -initSchema -dbType derbymysql
1.安装mysql
执行下面命令,分别安装mysql服务端
sudo apt-get install mysql-server
在安装过程当中会弹出窗口输入root密码和输入root确认,建议不要设置太复杂,123456便可。web
2.查询mysql是否安装成功
执行命令:sudo netstat -tap | grep mysql
sql
3.设置mysql容许远程访问
(1)切换到root用户
(2)进入路径:/etc/mysql/mysql.conf.d/mysqld.cnf
注释掉base-address
apache
4.配置mysql受权
(1)进入mysql服务。执行命令: mysql -u root -p
ubuntu
(2)执行受权命令
受权:grant all on . to root@’%’ identified by ‘123456’ with grant option;
bash
刷新权限:flush privileges;ide
退出mysql。从新启动mysql服务。svg
5.使用mysql客户端工具链接ubuntu安装的mysql
工具
1.安装Hive
将Hive 安装文件上传到hadoop用户software文件夹下:
将hive解压到/usr/local文件夹下,并重命名文件夹名
解压:#sudo tar -zxvf apache-hive-2.3.6-bin.tar.gz -C /usr/local
切换到root用户:#su -
进入/usr/local更改hive文件夹名:mv apache-hive-2.3.6-bin hive
更改hive的用户名和用户组:chown -R hadoop:hadoop hive
2.配置hive环境变量
切换到hadoop用户,执行:vi ~/.bashrc
#hive环境变量
export HIVE_HOME=/usr/local/hive export PATH=$PATH:$HIVE_HOME/bin
#让环境变量生效
source ~/.bashrc
hive-env.sh
(1)拷贝hive-env.sh.template为hive-env.sh
cp hive-env.sh.template hive-env.sh
(2)编辑hive-env.sh配置信息
在hive-env.sh配置文件添加下面信息:
export HADOOP_HOME=/usr/local/hadoop export HIVE_CONF_DIR=/usr/local/hive/conf
hive-site.xml
(1)将mysql链接驱动包上传到/usr/local/hive/lib 路径下
(2)在/usr/local/hive/conf配置文件下建立文件hive-site.xml
在文件中添加以下信息:
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>hive.metastore.schema.verification</name> <value>false</value> </property> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://hadoop3:3306/hive?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf-8&useSSL=false</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.ConnectionPassword </name> <value>123456</value> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> <description>Username to use against metastore database</description> </property> </configuration>
(1)初始化Hive的元数据管理为mysql:
进入路径:/usr/local/hive/bin
执行命令:./schematool -initSchema -dbType mysql
(2)进入hive
hive依赖hadoop,启动hive以前须要先启动hadoop。
进入hive bin路径:/usr/local/hive/bin。执行命令:
./hive
执行命令:show databases; 显示信息正确代表hive安装完成。