一、安装mysql

  $ sudo apt-get install mysql-server

启动守护进程

  $ sudo service mysql start

二、配置mysql服务与连接器

  1、安装mysql连接器  

    $ sudo apt-get install libmysql-java

    注:将/usr/share/java/下的连接器jar包copy到$HIVE_HOME/lib下

    如图所示

    

  2、设置mysql root密码

    $ sudo /usr/bin/mysql_secure_installation

    [...] Enter current password for root (enter for none):

    OK, successfully used password, moving on...

    [...] Set root password? [Y/n] y

    New password:

    Re-enter new password:

    Remove anonymous users? [Y/n] Y

    [...]

    Disallow root login remotely? [Y/n] N

    [...]

    Remove test database and access to it [Y/n] Y

    [...]

    Reload privilege tables now? [Y/n] Y

    All done!

三、创建数据库与用户

  创建初始数据库模式。Cloudera的建议使用Hive schema tool来做到这一点。

  如果不打算使用,可通过hive-schema-*.*.*.mysql.sql文件来代替,该文件位置: $HIVE_HOME/scripts/metastore/upgrade/mysql目录下

  以hive-schema-1.2.0.mysql.sql为例

   $ mysql -u root -p

   Enter password:

   mysql> CREATE DATABASE metastore;

   mysql> USE metastore;

   mysql> SOURCE $HIVE_HOME/scripts/metastore/upgrade/mysql/hive-schema-1.2.0.mysql.sql;

  我们还需要为hive配置一个mysql账号用于访问该metastore。

  例:

    mysql> CREATE USER 'hive'@'localhost' IDENTIFIED BY 'password';

    ...

    mysql> REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'hive'@'localhost';

   mysql> GRANT ALL PRIVILEGES ON metastore.* TO 'hive'@'localhost';

    mysql> FLUSH PRIVILEGES;

    mysql> quit;

  注:如果mysql与hive安装在不同hostname下,如要将localhost换成hive所在的hostname

四、配置hive与mysql的通信

  在$HIVE_HOME/conf下创建hive-site.xml,配置如下:    

  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://127.0.0.1/metastore</value>
    <description>the URL of the MySQL database</description>
  </property>

  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
  </property>

  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>hive</value>
  </property>

  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>password</value>
  </property>

  <property>
    <name>datanucleus.autoCreateSchema</name>
    <value>false</value>
  </property>

  <property>
    <name>datanucleus.fixedDatastore</name>
    <value>true</value>
  </property>

  <property>
    <name>datanucleus.autoStartMechanism</name>
    <value>SchemaTable</value>
  </property>

  <property>
    <name>hive.metastore.uris</name>
    <value>thrift://127.0.0.1:9083</value>
  </property>

  <property>
    <name>hive.metastore.schema.verification</name>
    <value>true</value>
  </property>

在启动hive过程中如果出现以下错误,可通过删除$HADOOP_HOME/share/hadoop/yarn/lib/ 下的jline-0.9.94.jar文件,它与beeline的依赖产生冲突

ubuntu中为hive配置远程MYSQL database的更多相关文章

  1. 如何配置远程mysql服务器

    如何配置远程mysql服务器 分配用户权限 可以先看一下目前的用户权限状况: use mysql; select host,user,password from user; 然后分配新的权限给某一用户 ...

  2. Ubuntu安装redis并配置远程、密码以及开启php扩展

    一.前言 redis是当前流行的nosql数据库,很多网站都用它来做缓存,今天我们来安装并配置下redis 二.安装并配置redis 1.安装redis sudo apt-get install re ...

  3. Ubuntu中安装和配置 Java JDK,并卸载自带OpenJDK(以Ubuntu 14.04为例)

    1.下载jdk-7u67-linux-x64.tar.gz 2.用ftp客户端工具filezilla上传到ubuntu的合适文件夹.如果如果不能上传到指定文件夹可能是文件夹权限不足,修改文件夹可执行权 ...

  4. 在ubuntu中安装与配置zsh与oh-my-zsh

    先补充点东西 1.ubuntu中默认安装了那些shell jiang@Linux:~$ cat /etc/shells # /etc/shells: valid login shells/bin/sh ...

  5. ubuntu中防火墙iptables配置

    特别说明:此文章完全转载于https://www.cnblogs.com/EasonJim/p/6851007.html 1.查看系统是否安装防火墙 root@localhost:/usr# whic ...

  6. hive配置元数据库mysql文件配置

    hive中conf/hive-site.xml文件配置(没有该文件则新建) <?xml version="1.0"?> <?xml-stylesheet type ...

  7. Ubuntu中FTP安装配置及基本概念(原创)

    注:本文出自博主 Chloneda:个人博客 | 博客园 | Github | Gitee | 知乎 本文源链接:https://www.cnblogs.com/chloneda/p/ftp-inst ...

  8. ubuntu 中DNAT SNAT配置实验.

    1.      目的 图1 如图1所示,有A,B两台计算机,其中A配置成普通PC,B是网关.实现由A向一个不存在的IP 发起tcp连接,并能向这个不存在的ip发送数据. 同时响应这个tcp连接的是B中 ...

  9. ubuntu 14.04 安装mysql,并配置远程连接和中文乱码

    1. 安装MySQL的jar root@computer-PowerEdge-T30:~# sudo apt-get install mysql-server mysql-client在本次安装中,根 ...

随机推荐

  1. 暑假集训(2)第二弹 ----- The Suspects(POJ1611)

    B - The Suspects Crawling in process... Crawling failed Time Limit:1000MS     Memory Limit:20000KB   ...

  2. ubuntu zend-eclipse-php debugger调试

    1 下载zendDebugger http://www.zend.com/en/products/studio/downloads?src=downloadb 在这个页面中找到zend debugge ...

  3. 项目规范和建立-从frozenui学习

    1.分支branches开发新功能,主干trunk是稳定发布的.因为frozenui下载完,看到branches比trunk多了一个版本 2.版本号定义,主版本.次版本.修订号 大版本号: 主版本号: ...

  4. SPA架构

    databus ajax处理得到得数据 service 对databus做缓存,以及业务(如评论列表,评论详情) component 组件 html+css+js组成 evenbus 组件之间通讯,数 ...

  5. 在Windows下不使用密码远程登陆Linux

    在登陆Linux进行管理的时候我们通常会使用用户名和密码进行登陆,这样一来是比较麻烦,二来是不安全,为了解决这个问题,我们可以使用公私钥 (public keys和private keys)进行认证. ...

  6. PHP用memcached做实时分页

    用memcached做分页缓存,可能很多人会觉得麻烦而不用.因为在增加.修改.删除的过程中,你不知道会影响到哪些数据,而如果把所有分页相关的数据缓存都删除并重新生成一遍,实现又很麻烦,甚至不可行,所以 ...

  7. 翻译:ECMAScript 5.1简介

    简介 ECMAScript 5.1 (或仅 ES5) 是ECMAScript(基于JavaScript的规范)标准最新修正. 与HTML5规范进程本质类似,ES5通过对现有JavaScript方法添加 ...

  8. 学一点 mysql 双机异地热备份----快速理解mysql主从,主主备份原理及实践

    双机热备的概念简单说一下,就是要保持两个数据库的状态 自动同步.对任何一个数据库的操作都自动应用到另外一个数据库,始终保持两个数据库数据一致. 这样做的好处多. 1. 可以做灾备,其中一个坏了可以切换 ...

  9. keilkill.bat

    一.批处理文件 批处理文件是无格式的文本文件,它包含一条或多条命令.它的文件扩展名为 .bat 或 .cmd.在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文 ...

  10. why app_start start

    Add following code for your class: [assembly: WebActivatorEx.PostApplicationStartMethod(typeof(WeCha ...