irpas技术客

hive安装——本地模式_赛伊米_hive本地模式安装

未知 1417

步骤一、安装hive,配置环境变量

1.上传hive安装包到/opt/software/,进行解压

?[hadoop@master software]$ tar -zxvf apache-hive-1.2.1-bin.tar.gz -C /opt/apps/

2.配置环境变量,使生效?

vi /etc/profile

//在最后面放入hive环境变量(只要不放入if-fi之间)

? export HIVE_HOME=/opt/apps/hive-1.2.1/ ? export PATH=$HIVE_HOME/bin:$PATH ?

source /etc/profile

步骤二、安装MySQL环境

?进入目录:cd /opt/software

1.使用wget进入网址获取MySQL安装包

wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

--找不到命令的话是没有安装wget,输入

yum install -y wget

安装就可以了,-y表示安装时的所有选项都选yes

?2.安装MySQL

rpm -ivh mysql57-community-release-el7-10.noarch.rpm

不过rpm只能安装一次只能安装一个文件,用yum安装所有与MySQL有关的软件文件

yum install -y mysql-server

此过程会有点慢

3.启动MySQL进程

systemctl start mysqld

正常是没有任何反应的,回车后不会出现其他语句,在查询MySQL的守护进程

ps aux|grep mysql

4.登录MySQL

启动MySQL

systemctl enable mysqld

查看MySQL原始密码

cat /var/log/mysqld.log|grep 'A temporary password'

登录MySQL

mysql -u root -p 密码

5.修改MySQL的密码

alter user ‘root’@’localhost’?identified by ‘密码’;

密码的规范:有大小写、标点符号、长度 大于六位数

也可以修改MySQL关于密码的规范参数

首先,修改validate_password_policy参数的值 mysql> set global validate_password_policy=0; Query OK, 0 rows affected (0.00 sec) validate_password_length(密码长度)参数默认为8,我们修改为1 mysql> set global validate_password_length=1; Query OK, 0 rows affected (0.00 sec) 完成之后再次执行修改密码语句即可成功 mysql> alter user 'root'@'localhost' identified by '123456'; Query OK, 0 rows affected (0.00 sec)

?6.创建hive数据库

创建hive数据库,存储hive的元数据

mysql>create database hive character set latin1;

进行远程连接授权

mysql>grant all on *.* to root@'%' identified by '123456'; mysql>grant all on *.* to root@'localhost' identified by '123456'; mysql>grant all on *.* to root@'master' identified by '123456'; mysql>flush privileges;

mysql>grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

注意:如果报ERROR 3009 (HY000): Column count of mysql.user is wrong. Expected 45, found 43. Created with MySQL 5。 解决方案:错误是由于你曾经升级过数据库,升级完后没有使用。mysql_upgrade升级数据结构造成的。 [root@localhost ~]# mysql_upgrade -u root -p 13456?

步骤三、 修改hive配置文件

1.将mysql的驱动包mysql-connecter-5.1.28.bin.jar,放入hive的lib中用来使MySQL和hive连接,存储元数据

可以到MySQL的官网中下载

下载后的jar包在MySQL包里面。

2.配置hive-env.sh(在hive的conf目录中)

将hive-env.sh.template文件复制一份并打开

cp hive-env.sh.template hive-env.sh

vi hive-env.sh

在打开的文件中添加Hadoop和Java的安装路径

HADOOP_HOME=/usr/local/share/applications/hadoop-2.8.1/ JAVA_HOME=/usr/local/share/applications/jdk1.8.0_121/

3.配置hive-site.xml(在hive的conf目录中)

cp hive-default.xml.template hive-site.xml

vi hive-site.xml????????#找到相应属性修改值。或者删除所有默认配置,重新添加属性

<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <!--配置mysql的连接字符串--> <property> ? ? <name>javax.jdo.option.ConnectionURL</name> ? ? <value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false&amp;characterEncoding=latin1</value> ? ? <description>JDBC connect string for a JDBC metastore</description> </property> <!--配置mysql的连接驱动--> <property> ? ? <name>javax.jdo.option.ConnectionDriverName</name> ? ? <value>com.mysql.jdbc.Driver</value> ? ? <description>Driver class name for a JDBC metastore</description> </property> <!--配置登录mysql的用户--> <property> ? ? <name>javax.jdo.option.ConnectionUserName</name> ? ? <value>root</value> ? ? <description>username to use against metastore database</description> </property> <!--配置登录mysql的密码--> <property> ? ? <name>javax.jdo.option.ConnectionPassword</name> ? ? <value>123456</value> ? ? <description>password to use against metastore database</description> </property> </configuration>

步骤四、连接测试

配置完上述属性,本地模式即完成,使用hive命令进行连接测试。前提:集群和mysql都要先启动

首先初始化MySQL的数据库

[hadoop@master bin]$ schematool -dbType mysql -initSchema

再启动 [hadoop@master conf]$ hive hive> show databases; OK default Time taken: 11.82 seconds, Fetched: 1 row(s)

如果没有初始化数据库,导致hive无法执行SQL命令,可以退出重新初始化数据库


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #hive本地模式安装 #Software #tar #zxvf #C