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
javax.jdo.option.ConnectionURL
jdbc:mysql://yh01:3306/hive?characterEncoding=utf8&useSSL=false
JDBC connect string for a JDBC metastore
javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driver
Driver class name for a JDBC metastore
javax.jdo.option.ConnectionUserName
root
username to use against metastore database
javax.jdo.option.ConnectionPassword
12345678
password to use against metastore database
将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 Hive
4945 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