Hive安装以及和Mysql关联

一、Hive的安装地址

1.Hive官网地址

http://hive.apache.org/

2.文档查看地址

https://cwiki.apache.org/confluence/display/Hive/GettingStarted

3.下载地址

http://archive.apache.org/dist/hive/

4.github地址

https://github.com/apache/hive

二、Hive的安装

1、上传和解压

$ tar -zxvf apache-hive-1.2.1-bin.tar.gz -C /opt/module/

2、修改/opt/module/hive/conf目录下的hive-env.sh.template名称为hive-env.sh

$ mv hive-env.sh.template hive-env.sh

3、配置hive-env.sh文件

(a)配置HADOOP_HOME路径

export HADOOP_HOME=/opt/module/hadoop-2.7.2

(b)配置HIVE_CONF_DIR路径

export HIVE_CONF_DIR=/opt/module/hive/conf

4.启动hadoop集群和创建目录

(1)必须启动hdfs和yarn

$ sbin/start-dfs.sh

$ sbin/start-yarn.sh

(2)在HDFS上创建/tmp和/user/hive/warehouse两个目录并修改他们的同组权限可写

bin/hadoop fs -mkdir /tmp

bin/hadoop fs -mkdir -p /user/hive/warehouse

 

bin/hadoop fs -chmod g+w /tmp

bin/hadoop fs -chmod g+w /user/hive/warehouse

5、Hive基本操作-----与mysql及其类似

(1)启动hive

$ bin/hive

(2)查看数据库

hive> show databases;

(3)打开默认数据库

hive> use default;

(4)显示default数据库中的表

hive> show tables;

(5)创建一张表

hive> create table student(id int, name string);

(6)显示数据库中有几张表

hive> show tables;

(7)查看表的结构

hive> desc student;

(8)向表中插入数据

hive> insert into student values(1000,"ss");

(9)查询表中数据

hive> select * from student;

(10)退出hive

hive> quit;

三、MySql安装-存储元数据----一定是root用户

1、 安装包准备

1).查看mysql是否安装,如果安装了,卸载mysql

(1)查看    [root@hadoop102 桌面]# rpm -qa|grep mysql

(2)卸载   [root@hadoop102 桌面]# rpm -e --nodeps mysql-libs-5.1.73-7.el6.x86_64

2).解压mysql-libs.zip文件到当前目录

解压zip

[root@hadoop102 software]# unzip mysql-libs.zip 

[root@hadoop102 software]# ls

mysql-libs.zip

mysql-libs

3).进入到mysql-libs文件夹下

[root@hadoop102 mysql-libs]# ll

总用量 76048

-rw-r--r--. 1 root root 18509960 3月  26 2015 MySQL-client-5.6.24-1.el6.x86_64.rpm

-rw-r--r--. 1 root root  3575135 12月  1 2013 mysql-connector-java-5.1.27.tar.gz

-rw-r--r--. 1 root root 55782196 3月  26 2015 MySQL-server-5.6.24-1.el6.x86_64.rpm

2、 安装MySql服务器

1).安装mysql服务端

[root@hadoop102 mysql-libs]# rpm -ivh MySQL-server-5.6.24-1.el6.x86_64.rpm

2).查看产生的随机密码---为了登录使用

[root@hadoop102 mysql-libs]# cat /root/.mysql_secret

OEXaQuS8IWkG19Xs

3).查看mysql状态

[root@hadoop102 mysql-libs]# service mysql status

4).启动mysql

[root@hadoop102 mysql-libs]# service mysql start

3、 安装MySql客户端

1).安装mysql客户端

[root@hadoop102 mysql-libs]# rpm -ivh MySQL-client-5.6.24-1.el6.x86_64.rpm

2).链接mysql

[root@hadoop102 mysql-libs]# mysql -uroot -pOEXaQuS8IWkG19Xs

3.修改密码

mysql>SET PASSWORD=PASSWORD('000000');

4.退出mysql

mysql>exit

4、 MySql中user表中主机配置

需要修改配置让只要是root用户+密码,在任何主机上都能登录MySQL数据库。

1).进入mysql   [root@hadoop102 mysql-libs]# mysql -uroot -p000000

2).显示数据库

mysql>show databases;

3).使用mysql数据库

mysql>use mysql;

4).展示mysql数据库中的所有表

mysql>show tables;

5).展示user表的结构

mysql>desc user;

6).查询user表

mysql>select User, Host, Password from user;

7).修改user表,把Host表内容修改为%

mysql>update user set host='%' where host='localhost';

8).删除root用户的其他host

mysql>delete from user where Host='hadoop102';

mysql>delete from user where Host='127.0.0.1';

mysql>delete from user where Host='::1';

9).刷新----千万别忘了

mysql>flush privileges;

10).退出

mysql>quit;

四、 Hive元数据配置到MySql

1、 驱动拷贝和复制到hive的lib目录

$  tar -zxvf mysql-connector-java-5.1.27.tar.gz

$ cp mysql-connector-java-5.1.27-bin.jar   /opt/module/hive/lib/

2、 配置Metastore到MySql

1).在/opt/module/hive/conf目录下创建一个hive-site.xml

$ vi hive-site.xml

2).根据官方文档配置参数,拷贝数据到hive-site.xml文件中

https://cwiki.apache.org/confluence/display/Hive/AdminManual+MetastoreAdmin

配置jdbc的四个选项:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
	<property>
	  <name>javax.jdo.option.ConnectionURL</name>
	  <value>jdbc:mysql://hadoop102:3306/metastore?createDatabaseIfNotExist=true</value>
	  <description>JDBC connect string for a JDBC metastore</description>
	</property>

	<property>
	  <name>javax.jdo.option.ConnectionDriverName</name>
	  <value>com.mysql.jdbc.Driver</value>
	  <description>Driver class name for a JDBC metastore</description>
	</property>
   <!--这是配置数据库的用户名-->
	<property>
	  <name>javax.jdo.option.ConnectionUserName</name>
	  <value>root</value>
	  <description>username to use against metastore database</description>
	</property>
 <!--这是配置数据库的密码-->
	<property>
	  <name>javax.jdo.option.ConnectionPassword</name>
	  <value>000000</value>
	  <description>password to use against metastore database</description>
	</property>
</configuration>

3.配置完毕后,如果启动hive异常,可以重新启动虚拟机。(重启后,别忘了启动hadoop集群)

五、HiveJDBC访问

1   启动hiveserver2服务  $ bin/hiveserver2

2 启动beeline  $ bin/beeline

3 连接hiveserver2

beeline> !connect jdbc:hive2://hadoop102:10000(回车)

Connecting to jdbc:hive2://hadoop102:10000

Enter username for jdbc:hive2://hadoop102:10000: 用户名(回车)

Enter password for jdbc:hive2://hadoop102:10000: (直接回车)

Connected to: Apache Hive (version 1.2.1)

Driver: Hive JDBC (version 1.2.1)

Transaction isolation: TRANSACTION_REPEATABLE_READ

 

 

 

发布了53 篇原创文章 · 获赞 37 · 访问量 5万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章