hive连接mysql(Hive 元数据配置到 MySql)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_43671437/article/details/102736009

Hive 元数据配置到 MySql

一、配置mysql

MySql 中 user 表中主机配置

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

1、进入MySQL数据库并使用mysql数据库

use mysql; 

2、展示 user 表的结构

desc user; 

3、查询 user 表

select User, Host, Password from user; 

4、修改 user 表,把 Host 表内容修改为%

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

5、删除 root 用户的其他 host

delete from user where Host='hadoop102'; 
delete from user where Host='127.0.0.1'; 
delete from user where Host='::1'; 

6、刷新(一定要刷新否则修改的不会生效

flush privileges; 

7、退出

quit;

二、配置hive

1、驱动拷贝
拷贝 mysql-connector-java-5.1.27-bin.jar 到/opt/module/hive/lib/

[root@hadoop102 mysql-connector-java-5.1.27]# cp /usr/local/src/mysql-libs/mysql-connector-java-5.1.27/mysql-connector-java-5.1.27-bin.jar      /usr/local/src/hive/lib/

2、 配置 Metastore 到 MySql

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

[root@master conf]# touch hive-site.xml
[root@master conf]# vi hive-site.xml 

2.配置 hive-site.xml

<configuration>

  <property>
  <!--判断mysql中是否有metastore数据库,若没有就创建-->
  
      <name>javax.jdo.option.ConnectionURL</name>
      <value>jdbc:mysql://master: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> 
 
 <!--设置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>000000</value>    
         <description>password to use against metastore database</description>  
 </property> 
</configuration> 

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

三、多窗口启动 Hive 测试

1.先启动 MySQL

[root@master hive]# mysql -uroot -p000000 

查看有几个数据库

 mysql> show databases;

±-------------------+
| Database |
±-------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
±-------------------+
2.再次打开多个窗口,分别启动 hive

[root@master hive]# bin/hive 

3.启动 hive 后,回到 MySQL 窗口查看数据库,显示增加了 metastore 数据库

mysql> show databases; 

±-------------------+
| Database |
±-------------------+
| information_schema |
| metastore |
| mysql |
| performance_schema |
| test |
±-------------------+

猜你喜欢

转载自blog.csdn.net/weixin_43671437/article/details/102736009