hive 2.3.3 检修
环境
- hive 2.3.3
- mysql 5.6
1 安装
上传 解压
2 配置
- 配置HIVE_HOME环境变量
vi conf/hive-env.sh
配置其中的$hadoop_home
-
配置元数据仓库到mysql
vi 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://yh01:3306/hive?characterEncoding=utf8&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.ConnectionUserName</name> <value>root</value> <description>username to use against metastore database</description> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>12345678</value> <description>password to use against metastore database</description> </property> </configuration>
- 将mysql的连接jar包拷贝到$HIVE_HOME/lib目录下
-
如果出现没有权限的问题,在mysql授权(在安装mysql的机器上执行)
mysql -uroot -p密码#(执行下面的语句 *.*:所有库下的所有表 %:任何IP地址或主机都可以连接) GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION; FLUSH PRIVILEGES; 设置设置当前用户密码永不过期 update user set password = password('密码'),password_expired='N' where user = 'root';
- Jline包版本不一致的问题,需要拷贝hive的lib目录中jline.2.12.jar的jar包替换掉hadoop中的
/home/hadoop/app/hadoop-2.6.4/share/hadoop/yarn/lib/jline-0.9.94.jar
3.初始化hive
-
运行HiveServer2和Beeline
从Hive 2.1开始,我们需要在下面运行schematool命令作为初始化步骤。例如,我们可以使用“mysql”作为db类型。$HIVE_HOME/bin/schematool -dbType mysql -initSchema
4 启动hive
- nohup hive --service metastore >> log.out 2>&1 &
- nohup hive --service hiveserver2 >> log.out 2>&1 &
- 查看进程是否启动
[root@yh01 hive-2.3.3]# jps -ml | grep Hive4945 org.apache.hadoop.util.RunJar /export/servers/hive-2.3.3/lib/hive-metastore-2.3.3.jar org.apache.hadoop.hive.metastore.HiveMetaStore
4809 org.apache.hadoop.util.RunJar /export/servers/hive-2.3.3/lib/hive-service-2.3.3.jar org.apache.hive.service.server.HiveServer2 - 查看10000端口是否启动:
- lsof -i:10000
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。