1,最近装hive需要装mysql存放元数据,但mysql只要安装一不小心就说缺依赖,也不知道什么原因就感觉很烦恼,于是我就试了另一种就是远程连接数据库,连接windows外机MySQL这样还有图形化界面也会好用一些(安装mysql和hive的步骤:https://blog.csdn.net/weixin_41122339/article/details/80415165 的最下面有个链接就是了,如果那个安装时出现mysql的日志没有内容就看我这个吧)。
2,我们开始安装hive具体放在那个位置你们(这里是2.3版本)
1,解压hive: tar -xzvf apache-hive-2.3.0-bin.tar.gz
2,添加符号链接: ln -s apache-hive-2.3.0 hive
2,配置hive环境变量: 1) nano /etc/profile
2)添加
3)执行source /etc/profile
3,修改hive配置文件: 1)cd /opt/modules/hive/conf 跳到hive安装目录的conf目录文件中
2)把初始化的文件 复制一份出来 并且改名
cp hive-env.sh.template hive-env.sh
cp hive-default.xml.template hive-site.xml
cp hive-log4j2.properties.template hive-log4j2.properties
cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties4,修改hive-env.sh
扫描二维码关注公众号,回复: 2721016 查看本文章export JAVA_HOME=/opt/modules/jdk1.8 ##Java路径
export HADOOP_HOME=/opt/modules/hadoop ##Hadoop安装路径
export HIVE_HOME=/opt/modules/hive ##Hive安装路径
export HIVE_CONF_DIR=/opt/modules/hive/conf ##Hive配置文件路径5,在hdfs 中创建下面的目录 ,并且授权
hdfs dfs -mkdir -p /user/hive/warehouse hdfs dfs -mkdir -p /user/hive/tmp hdfs dfs -mkdir -p /user/hive/log hdfs dfs -chmod -R 777 /user/hive/warehouse hdfs dfs -chmod -R 777 /user/hive/tmp hdfs dfs -chmod -R 777 /user/hive/log
6、修改hive-site.xml
将 hive-site.xml 文件中以下几个配置项的值设置成上一步中创建的几个路径。
<property> <name>hive.exec.scratchdir</name> <value>/user/hive/tmp</value> </property> <property> <name>hive.metastore.warehouse.dir</name> <value>/user/hive/warehouse</value> </property> <property> <name>hive.querylog.location</name> <value>/user/hive/log</value> </property>
7,需要在 hive-site.xml 文件中配置 MySQL 数据库连接信息。
<property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://192.168.14.192:3306/hive?useSSL=false</value> //注意上面的ip一定要写成你虚拟机生成的VM1和VM8其中一个ip这样会方便一些 </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>zxz</value> </property>
8,创建tmp文件
mkdir /home/had/hive/tmp
在配置文件 hive-site.xml 里面
把{system:java.io.tmpdir} 改成 /home/had/hive/tmp
把 {system:user.name} 改成 {user.name}
9,配置jdbc驱动包
下载mysql的jdbc 驱动包注意要下载合适自己的版本(我的是1.8的jdk)下载完成后把mysql-connector-java-8.0.12.jar 然后放入 $HIVE_HOME/lib 目录下
10,进入自己的windows系统的mysql中创建一个hive的数据库
create database hive;
10,初始化hive
schematool -dbType mysql -initSchema
11,输入hive命令如果成功进入hive命令行就没问题了
12,如果报的是类似:HIVE-ERROR 1045 (28000): Access denied for user 'root'@'%' (using password: YES)的错误
说明你的用户权限不够:
请参考:https://blog.csdn.net/peterchan88/article/details/78341852
13,如果报的是类似:The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone
的错误: