六.Hive组建


一、检查进程是否运行

在所有节点执行:
su - hadoop
jps
#要在master上看到NameNode、Secondarynamenode、ResourceManager三个进程,要在slave1、slave2上看到DataNode、Nodemanager进程
若进程没运行输入以下命令:
start-all.sh

二、卸载MariaDB数据库

[root@master ~]# rpm -qa | grep mariadb
mariadb-libs-5.5.52-2.el7.x86_64
[root@master ~]# rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

三、部署mysql

master主机部署

#安装unzip
yum -y install unzip
#进入software路径
cd software/
#解压mysql压缩包
unzip mysql-5.7.18.zip
#进入mysql路径
cd mysql-5.7.18
#安装mysql
yum -y install *.rpm
#配置数据库配置
vi /etc/my.cnf
default-storage-engine=innodb
innodb_file_per_table
collation-server=utf8_general_ci
init-connect='SET NAMES utf8'
character-set-server=utf8
#设置开机自启
systemctl enable --now mysqld
#查看默认密码
cat /var/log/mysqld.log|grep password
#初始化
mysql_secure_installation
输入/var/log/mysqld.log密码
y
Password123!
Password123!
y
y
n
y
y
#进入数据库
mysql -uroot -p'Password123!'
#添加 root用户本地访问授权
mysql> grant all on *.* to 'root'@'localhost' identified by 'Password123!';
#添加root用户远程访问授权
mysql> grant all on *.* to 'root'@'%' identified by 'Password123!';
#查询root用户授权情况
mysql> flush privileges;
#退出
mysql> quit

四、测试mysql

slave1上部署

#安装Mariadb
yum -y install mariadb
#测试
mysql -uroot -p'Password123!' -h10.10.10.128

五、安装hive组件

master主机部署/usr/local/src/

#解压Apache压缩包到
tar xf software/apache-hive-2.0.0-bin.tar.gz -C /usr/local/src/
#进入/usr/local/src
cd /usr/local/src/
#移动并更名为hive
mv apache-hive-2.0.0-bin/ hive
#设置归属用户和用户组
chown -R hadoop.hadoop /usr/local/src/
#配置hive.sh文件
vi /etc/profile.d/hive.sh
export HIVE_HOME=/usr/local/src/hive
export PATH=${HIVE_HOME}/bin:$PATH
#执行
source /etc/profile.d/hive.sh
#查看是否成功
echo $PATH
#切换hadoop用户
su - hadoop
#进入/usr/local/src/hive/conf/
cd /usr/local/src/hive/conf/
#复制
cp hive-default.xml.template hive-site.xml
#配置配置文件
vi hive-site.xml
#配置数据库连接
javax.jdo.option.ConnectionURL
    jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true&useSSL=false
    JDBC connect string for a JDBC metastore
#配置root密码

    javax.jdo.option.ConnectionPassword
    Password123!
    password to use against metastore database
  
#配置元数据存储版本一致,若默认false,不修改

    hive.metastore.schema.verification
    false
    
      Enforce metastore schema version consistency.
      True: Verify that version information stored in metastore matches with one fr
om Hive jars.  Also disable automatic
            schema migration attempt. Users are required to manually migrate schema
 after Hive upgrade which ensures
            proper metastore schema migration. (Default)
      False: Warn if the version information stored in metastore doesn't match with
 one from in Hive jars.
    

#配置驱动

  javax.jdo.option.ConnectionDriverName
  com.mysql.jdbc.Driver
  Driver class name for a JDBC metastore

#配置数据库用户名为root

  javax.jdo.option.ConnectionUserName
  root
  Username to use against metastore database

#替换
hive.querylog.location
/usr/local/src/hive/tmp
Location of Hive run time structured log file

hive.exec.local.scratchdir
/usr/local/src/hive/tmp
Local scratch space for Hive jobs

hive.downloaded.resources.dir
/usr/local/src/hive/tmp/resources
Temporary local directory for added resources in the remote file s
ystem.

hive.server2.logging.operation.log.location
    /usr/local/src/hive/tmp/operation_logs
    Top level directory where operation logs are stored if logging fun
ctionality is enabled
#创建文件夹
mkdir -p /usr/local/src/hive/tmp/{resources,operation_logs}
#复制
cp software/mysql-connector-java-5.1.46.jar /usr/local/src/hive/lib/
#停掉进程,用jps命令确认没有进程
stop-all.sh
#启动
start-all.sh
schematool -initSchema -dbType mysql
#看到schemaTool completed表示初始化成功
mysql -uroot -p'Password123!' -e 'show databases;'
hive
hive>