HIVE搭建

HIVE在Ubuntu下搭建笔记

HIVE安装笔记
1.准备好mysql-connector-java-5.1.47.tar.gz和apache-hive-2.3.4-bin.tar.gz并使用xftp将其压缩包传输/home/hadoop目录下
2.解压Apache包并将其移动到hadoop_home目录下。打开Apache-hive-2.3.4-bin目录下pwd可以查看当前目录路径。Vim ~/.profile配置环境变量ExportHIVE_HOME=/home/hadoop/hadoop_home/apache-hive-2.3.4-bin并在PATH路径下添加:$HIVE_HOME/bin:结束后source一下。
3.打开/home/hadoop/hadoop_home/apache-hive-2.3.4-bin/conf在该目录标签下直接分别输入四条命令:
cp hive-env.sh.template hive-env.sh
cp hive-default.xml.template hive-site.xml
cp hive-log4j2.properties.template hive-log4j2.properties
cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties

4.因为 Hive 使用了 Hadoop, 需要在 hive-env.sh 文件中指定 Hadoop 安装路径:
1)打开 hive-env.sh 文件,先把HADOOP_HOME所在行给注释掉。
2) 将以下路径配置写入:
export JAVA_HOME=/home/hadoop/hadoop_home/jdk1.8.0_181 ##Java路径
export HADOOP_HOME=/home/hadoop/hadoop_home ##Hadoop安装路径
export HIVE_HOME=/home/hadoop/hadoop_home/apache-hive-2.3.4-bin ##Hive安装路径
export HIVE_CONF_DIR=/home/hadoop/hadoop_home/apache-hive-2.3.4-bin/conf ##Hive配置文件路径
5.新开一个xshell并切换到root权限下安装数据库 apt-get install mysql-server 这里显示的是5.7.25版本,相比于5.5的版本要更稳定。在mysql的配置目录root@master:~# vim /etc/mysql/mysql.conf.d/mysqld.cnf将bind-address给注释掉
6.登录数据库:mysql -u root -p
然后分行输入以下命令,当输入一行命令若没有报错则表示其已成功运行。
mysql> CREATE DATABASE hive;
mysql> USE hive;
mysql> CREATE USER ‘hive’@‘localhost’ IDENTIFIED BY ‘hive’;
mysql> GRANT ALL ON hive.* TO ‘hive’@‘localhost’ IDENTIFIED BY ‘hive’;
mysql> GRANT ALL ON hive.* TO ‘hive’@’%’ IDENTIFIED BY ‘hive’;
mysql> FLUSH PRIVILEGES;
mysql> quit;
在创建好数据库后,重启数据库更新root@master:~# /etc/init.d/mysql restart
7.
在 Hive 中创建表之前需要创建以下 HDFS 目录并给它们赋相应的权限。(在hadoop权限下执行)

hdfs dfs -mkdir -p /user/hive/warehouse
hdfs dfs -mkdir -p /user/hive/tmp
hdfs dfs -mkdir -p /user/hive/log
hdfs dfs -chmod g+w /user/hive/warehouse
hdfs dfs -chmod g+w /user/hive/tmp
hadoop fs -chmod -R 777 /user/hive/tmp
hdfs dfs -chmod g+w /user/hive/log
7.解压数据库hadoop@master:~$ tar -xvf mysql-connector-java-5.1.47.tar.gz
hadoop@master:~/mysql-connector-java-5.1.47$ cp mysql-connector-java-5.1.47.jar ~/hadoop_home/apache-hive-2.3.4-bin/lib/
先进入mysql文件目录中,在将jar包拷贝到/lib/目录下。注意:解压的mysql压缩包的时候会生成两个jar包,这里选择的是没有bin的那个。
8.修改hive-site.xml

然后在配置文件hive-site.xml中,把所有的 s y s t e m : j a v a . i o . t m p d i r 都 替 换 为 / u s r / l o c a l / h i v e / t m p , 把 所 有 的 {system:java.io.tmpdir} 都替换为/usr/local/hive/tmp,把所有的 system:java.io.tmpdir/usr/local/hive/tmp{system:user.name}替换为 u s e r . n a m e 修 改 语 句 为 : {user.name} 修改语句为 :%s/ user.name{system:java.io.tmpdir}//usr/local/hive/tmp/g
:%s/ s y s t e m : u s e r . n a m e / {system:user.name}/ system:user.name/{user.name}
直接修改为下面这样也可以,注意用户名和密码,对应上一步中mysql创建的用户名和密码
在一下修改property的值的时候可以通过name来查询。
直接输入 ‘/’后面加所要查询的语句 当查询结果为多个的时候,使用大写N为向上找,小写n为向下找。

hive.exec.scratchdir
/user/hive/tmp


hive.metastore.warehouse.dir
/user/hive/warehouse


hive.querylog.location
/user/hive/log


javax.jdo.option.ConnectionURL
jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&characterEncoding=UTF-8&useSSL=false


javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driver


javax.jdo.option.ConnectionUserName
hive


javax.jdo.option.ConnectionPassword
hive

9.创建/usr/local/hive/tmp文件夹
切换到root用户执行
mkdir -p /usr/local/hive/tmp
chown -R hadoop:hadoop /usr/local/hive/tmp

10.运行Hive
在命令行运行 hive 命令时必须保证以下两点:
HDFS 已经启动。可以使用 start-dfs.sh 脚本来启动 HDFS。
运行 schematool 命令来执行初始化操作。
schematool -dbType mysql -initSchema

执行成功会出现schemaTool completed
11.启动hive
总结:第一次搭建的时候不成功,发现是在mysql命令登录下 数据库hive有很多杂乱的东西。将其删除重建。
登录数据库可能出现的错误
登录时有可能报这样的错:

ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2)

原因是/var/lib/mysql的访问权限问题。下面的命令把/var/lib/mysql的拥有者改为当前用户:

$ sudo chown -R root:root /var/lib/mysql

重启mysql服务

$ service mysqld restart 或者/etc/init.d/mysql restart

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值