【博学谷学习记录】大数据课程-学习十二周总结
Hive的安装操作
我们在此处选择第三台机器node3作为我们hive的安装机器,安装方式使用远程方式。
安装mysql数据库
在这里,我们使用mysql数据库作为Hive的元数据存储,所以在安装Hive之前,必须安装好mysql
注意!!!,在安装Mysql之前,给虚拟机保存一个快照,一旦安装失败,可以恢复快照,重新安装!
1、解压mysql安装包
#将MySQL的安装包提前上传到Linux的/export/software目录
cd /export/software
tar -zxvf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz -C /export/server/
2、重命名
cd /export/server
mv mysql-5.7.29-linux-glibc2.12-x86_64 mysql-5.7.29
3、添加用户组与用户
groupadd mysql
useradd -r -g mysql mysql
4、修改目录权限
chown -R mysql:mysql /export/server/mysql-5.7.29/
5、配置mysql服务
cp /export/server/mysql-5.7.29/support-files/mysql.server /etc/init.d/mysql
6、修改mysql配置文件
1)修改/etc/init.d/mysql文件
vim /etc/init.d/mysql
将该文件的basedir和datadir路径修改为以下内容
basedir=/export/server/mysql-5.7.29
datadir=/export/server/mysql-5.7.29/data
2)修改配置文件my.cnf
修改/etc/my.cnf文件
vim /etc/my.cnf
将/etc/my.cnf原来的内容全部删除,然后将以下内容复制进去.
[client]
port=3306
default-character-set=utf8
[mysqld]
basedir=/export/server/mysql-5.7.29
datadir=/export/server/mysql-5.7.29/data
port=3306
character-set-server=utf8
default_storage_engine=InnoDB
7、初始化mysql
/export/server/mysql-5.7.29/bin/mysqld --defaults-file=/etc/my.cnf --initialize --user=mysql --basedir=/export/server/mysql-5.7.29 --datadir=/export/server/mysql-5.7.29/data
执行该命令之后,会生成一个mysql的临时密码,这个密码后边要使用。
8、启动服务
service mysql start
9、登录mysql
使用第7步生成的临时密码
/export/server/mysql-5.7.29/bin/mysql -uroot -p临时密码
请注意,如果回车之后临时密码报错,则可以执行以下指令,然后手动输入临时密码:
/export/server/mysql-5.7.29/bin/mysql -uroot -p
10、修改密码
注意这条命令是在登录mysql之后执行
set password=password(‘123456’);
11、开启远程访问权限
注意这条命令是在登录mysql之后执行
GRANT ALL PRIVILEGES ON . TO ‘root’@‘%’ IDENTIFIED BY ‘123456’;
flush privileges;
12、修改环境变量
退出mysql,然后修改Linux的/etc/profile文件
vim /etc/profile
在该文件末尾最后添加以下内容
export MYSQL_HOME=/export/server/mysql-5.7.29
export PATH=
P
A
T
H
:
PATH:
PATH:MYSQL_HOME/bin
保存修改之后,让该文件的修改生效
source /etc/profile
13、将mysql设置为开机启动
chkconfig --add mysql #mysql服务到自启服务
chkconfig mysql on #设置自启
3.2.2.安装Hive
#--------------------Hive安装配置----------------------
上传压缩包到/export/software目录里,并解压安装包
cd /export/software/
tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /export/server
cd /export/server
mv apache-hive-3.1.2-bin hive-3.1.2
#解决hadoop、hive之间guava版本差异
cd /export/server/hive-3.1.2
rm -rf lib/guava-19.0.jar
cp /export/server/hadoop-3.1.4/share/hadoop/common/lib/guava-27.0-jre.jar ./lib/
#添加mysql jdbc驱动到hive安装包lib/文件下
mysql-connector-java-5.1.41-bin.jar
#修改hive环境变量文件 添加Hadoop_HOME
cd /export/server/hive-3.1.2/conf/
mv hive-env.sh.template hive-env.sh
vim hive-env.sh
HADOOP_HOME=/export/server/hadoop-3.1.4
export HIVE_CONF_DIR=/export/server/hive-3.1.2/conf
export HIVE_AUX_JARS_PATH=/export/server/hive-3.1.2/lib
#新增hive-site.xml 配置mysql等相关信息
vim hive-site.xml
#-----------------hive-site.xml--------------
javax.jdo.option.ConnectionURL
jdbc:mysql://node3:3306/hive?createDatabaseIfNotExist=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8
<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>123456</value>
</property>
<!-- H2S运行绑定host -->
<property>
<name>hive.server2.thrift.bind.host</name>
<value>node3</value>
</property>
<!-- 远程模式部署metastore 服务地址 -->
<property>
<name>hive.metastore.uris</name>
<value>thrift://node3:9083</value>
</property>
<!-- 关闭元数据存储授权 -->
<property>
<name>hive.metastore.event.db.notification.api.auth</name>
<value>false</value>
</property>
<!-- 关闭元数据存储版本的验证 -->
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
#初始化metadata(只需要在配置完Hive之后进行一次操作)
cd /export/server/hive-3.1.2
bin/schematool -initSchema -dbType mysql -verbos
#初始化成功会在mysql中创建74张表
#添加环境变量
vim /etc/profile
export HIVE_HOME=/export/server/hive-3.1.2
export PATH=:
H
I
V
E
H
O
M
E
/
b
i
n
:
HIVE_HOME/bin:
HIVEHOME/bin:PATH
#让环境变量生效
source /etc/profile
#-----------------Metastore 和 Hiveserver2启动----
nohup /export/server/hive-3.1.2/bin/hive --service metastore 2>&1 &
nohup /export/server/hive-3.1.2/bin/hive --service hiveserver2 2>&1 &
#验证是否安装成功!
在Linux中输入hive命令,直接回车,出现一个终端,在该终端中可以输入sql命令:
show databases;