Hive集成mysql数据库

1. 为什么集成mysql来替换Derby

     默认情况下,Hive元数据保存在内嵌的Derby数据库中,只能允许一个会话连接,只适合简单的测试。实际生产环境中不使用,为了支持多用户会话,

则需要一个独立的元数据库,使用MySQL作为元数据库,Hive内部对MySQL提供了很好的支持。

 

2.在Ubuntu系统下安装并配置MySQL

2.1 安装MySQL

sudo apt-get install mysql-server

上述命令会安装以下包:
apparmor
mysql-client-5.7
mysql-common
mysql-server
mysql-server-5.7
mysql-server-core-5.7
因此无需再安装mysql-client等。安装过程会提示设置mysql root用户的密码,设置完成后等待自动安装即可。默认安装完成就启动了MySQL。

2.2 确认是否启动成功

     

2.3  进入mysql shell界面

    

3.配置MySQL数据库允许hive接入

3.1 新建hive数据库,用来保存hive的元数据

  mysql> create database hive;

3.2  将hive数据库下的所有表的所有权限赋给hadoop用户,并配置mysql为hive-site.xml中的连接密码,然后刷新系统权限关系表

     mysql> CREATE USER  'hadoop'@'%'  IDENTIFIED BY 'mysql';

     mysql> GRANT ALL PRIVILEGES ON  *.* TO 'hadoop'@'%' WITH GRANT OPTION;

     mysql> flush privileges;

     

    需要注意的是,在ubuntu系统里,默认情况下MySQL只允许本地登录,所以需要修改配置文件将地址绑定注释。

    sudo vi /etc/mysql/my.cnf

    找到 # bind-address         = 127.0.0.1    注释掉这一行就可以啦

3.3 修改hive-site.xml,设置MySQL为默认的meta数据库

     

3.4 将mysql-connector-java-***.jar,复制到hive安装目录下的lib下

      需要下载mysql的jdbc<mysql-connector-java-5.1.28.jar>,然后将下载后的jdbc放到hive安装包的lib目录下

      下载链接是:http://dev.mysql.com/downloads/connector/j/ 

      也可以从我的云盘下载 链接是:https://pan.baidu.com/s/1i5mTBEH 密码是:xbf

 

3.5 测试hive数据库是否可以正常使用, 请参考 Hive安装与配置

posted @ 2017-07-28 14:34  Kinginme  阅读(...)  评论(...编辑  收藏