0 正常启动HDFS和YARN
1.安装mysql
2 查看mysql是否运行
netstat -nltp | grep 3306
tcp 0 0 0.0.0.0:3306
3 service mysqld start 启动mysql服务
4 可以配置mysql的开机自启服务 chkconfig mysqld on
就用以前安装的,但是要注意,开启远程连接权限
1) [root@doit01 ~]# service mysqld start
Starting mysqld: [ OK ]
set password for 'root'@'m01'= password('root');
mysql -uroot -proot
开启远程连接权限
开启远程连接之前如果连不上,
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1; 就可以解决
mysql > grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
mysql > flush privileges;
2) 授权完成后,测试一下是否成功:在windows上用Navicat连接一下看是否能成功!
mysql启动正常 开启远程连接
2.上传hive的安装包,解压
tar -zxf apache-hive-2.3.5.tar.gz
1) cp hive-env.sh.template hive-env.sh
vi hive-env.sh
export HADOOP_HOME=/opt/apps/hadoop-2.8.5/
# Hive Configuration Directory can be controlled by:
export HIVE_CONF_DIR=/opt/apps/hive-2.3.1/conf/
4. 修改配置文件
vi hive-site.xml
*******-----------------******************
<configuration>
<!-- 记录HIve中的元数据信息 记录在mysql中 -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://linux01:3306/hive?createDatabaseIfNotExist=true&useSSL=false</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<!-- mysql的用户名和密码 -->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>root</value>
</property>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
<property>
<name>hive.exec.scratchdir</name>
<value>/user/hive/tmp</value>
</property>
<property>
<name>hive.querylog.location</name>
<value>/user/hive/log</value>
</property>
<!-- 客户端远程连接的端口 -->
<property>
<name>hive.server2.thrift.port</name>
<value>10000</value>
</property>
<property>
<name>hive.server2.thrift.bind.host</name>
<value>0.0.0.0</value>
</property>
<property>
<name>hive.server2.webui.host</name>
<value>0.0.0.0</value>
</property>
<!-- hive服务的页面的端口 -->
<property>
<name>hive.server2.webui.port</name>
<value>10002</value>
</property>
<property>
<name>hive.server2.long.polling.timeout</name>
<value>5000</value>
</property>
<property>
<name>hive.server2.enable.doAs</name>
<value>true</value>
</property>
<property>
<name>datanucleus.autoCreateSchema</name>
<value>false</value>
</property>
<property>
<name>datanucleus.fixedDatastore</name>
<value>true</value>
</property>
<property>
<name>hive.execution.engine</name>
<value>mr</value>
</property>
<property>
<name>hive.zookeeper.quorum</name>
<value>lx01,lx02,lx03</value>
</property>
</configuration>
*******-----------------******************
5. vi /opt/apps/hadoop-2.8.5/etc/hadoop/core-site.xml
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
6.拷贝一个mysql的jdbc驱动jar包到hive的lib目录中
7 重启hdp
stop-all.sh
start-all.sh
8. 初始化hive的元数据库
${HIVE_HOME}/bin/schematool -initSchema -dbType mysql
1) 在mysql中多一个hive数据库 记录元数据信息
2) 启动以后在HDFS中的目录中 /user/hive目录
配置hive的环境变量
9.启动hive
bin/hive
show databsaes ;
create database doit13 ;
create table a (id int , name string) ;
show tables ;
10 第二中连接方式 (hiveserver2服务 : beeline JDBC连接)
1) hiveserver2 ---> netstat -nltp | grep 10000 10002
http://doit01:10002/
2) clone session
beeline
> !connect jdbc:hive2://doit01:10000
root 当前用户名
回车
0: jdbc:hive2://doit01:10000>