因为根据hive官网的安装文档没有走通,这里主要是复述官网,同时对不同的地方进行更正 。
这里不包含mysql的安装 。
- 操作系统是windows 10
- 虚拟机软件是 vmware workstation pro 16.1(15.x和16.0都会蓝屏)
- 虚拟机操作系统是ubuntu 16
- java 1.8
- hadoop 2.10.1(hive官方文档写推荐hadoop 2.x,这里找到hadoop下载页,最新的hadoop2.x版本 。
$ tar -xzvf hive-x.y.z.tar.gz 添加hive的bin路径到用户的path(使得可以通过用户的path找到hive的可运行文件)在~/.bashrc最后添加
export PATH=$PATH:/path/to/hiveBinDirectory # 这里填写自己机器上hive的bin文件夹的路径 3 连接mysql(跟官方文档可跳过) hive把metastore存储在数据库里,官方文档用的是derby,如果跟着官方文档走,这里可以跳过,笔者因为官方文档走不通,选择的是mysql 。3.1 安装mysql java connector
$ sudo apt-get install libmysql-java 3.2 创建软链接 $ ln -s /usr/share/java/mysql-connector-java.jar $HIVE_HOME/lib/mysql-connector-java.jar 3.3 需要在hive目录下conf文件夹新建hive-site.xml文件 conf/hive-site.xmljavax.jdo.option.ConnectionURLjdbc:mysql://localhost/metastore?createDatabaseIfNotExist=true metadata is stored in a MySQL server javax.jdo.option.ConnectionDriverNamecom.mysql.jdbc.Driver MySQL JDBC driver class 【hive 3.1.2 安装和运行 Install and Run Hive 3.1.2 踩坑】javax.jdo.option.ConnectionUserNamehiveuser user name for connecting to mysql server javax.jdo.option.ConnectionPasswordhivepassword password for connecting to mysql server 这里有几个配置项mysql的jdbc连接地址,以及mysql用户名密码
我个人踩得一个坑是,
当我填写了下面以后,hive metastore service启动报错: 大概意思需要填写useSSL=false
jdbc:mysql://192.x.x.x:3306/metastore?createDatabaseIfNotExist=true 我就改成了下面这样,注意xml文件里url里的 & 需要写成 & (最后有个分号,别忘了)jdbc:mysql://192.x.x.x:3306/metastore?createDatabaseIfNotExist=true&useSSL=false 4 启动hiveserver2 我个人主要踩坑在这里,跟着官方文档走,发生错误没有任何提示,笔者所以添加第3步,连接mysql官方文档是如下
# Starting from Hive 2.1, we need to run the schematool command below as an initialization step.$ $HIVE_HOME/bin/schematool -dbType derby -initSchema# run HiveServer2$ $HIVE_HOME/bin/hiveserver2 可以用以下命令查看hiveserver2是否成功启动$ netstat -nltp|grep 10000 如果没有成功的话有以下# 启动metastore (大量日志)$ hive --service metastore --hiveconf hive.root.logger=INFO,console# 查看输出是否有报错,或者可以通过检查端口9083来判断有没有成功$ netstat -nltp|grep 9083# 初始化schema (大量日志)$ $HIVE_HOME/bin/schematool -dbType mysql -initSchema -verbose# 启动hiveserver2 (大量日志)$ hive --service hiveserver2 --hiveconf hive.server2.thrift.port=10000 --hiveconf hive.root.logger=INFO,console# 查看输出是否有报错,或者可以通过检查端口10000来判断有没有成功$ netstat -nltp|grep 10000 我的问题一开始是初始化schema用derby的时候报错,改成mysql以后,是启动metastore的时候有mysql连接 ssl的错误,通过修改jdbc连接的地址来解决5 前置安装 5.1 jdk 1.8
# 安装 OpenJDK 8$ sudo apt-get install openjdk-8-jdk 安装以后,可以通过 which java 命令查看安装位置5.2 hadoop安装
$ sudo apt-get install ssh$ sudo apt-get install pdsh 解压缩文件,编辑etc/hadoop/hadoop-env.sh,只要能确保 {所填的路径}/bin/java 是java运行路径,我上面安装openjdk8的java在 /usr/bin/java ,这里填的 /usrexport JAVA_HOME= 参考文档:Hive官网 - GettingStarted
hadoop java版本兼容性
hive metastore mysql配置
debug hiveserver2启动问题
debug hiveserver2
ubuntu16安装java
hadoop安装
- 春季老年人吃什么养肝?土豆、米饭换着吃
- 三八妇女节节日祝福分享 三八妇女节节日语录
- 老人谨慎!选好你的“第三只脚”
- 校方进行了深刻的反思 青岛一大学生坠亡校方整改校规
- 脸皮厚的人长寿!有这特征的老人最长寿
- 长寿秘诀:记住这10大妙招 100%增寿
- 春季老年人心血管病高发 3条保命要诀
- 眼睛花不花要看四十八 老年人怎样延缓老花眼
- 香槟然能防治老年痴呆症? 一天三杯它人到90不痴呆
- 老人手抖的原因 为什么老人手会抖
