hive 配置mysql_Hive的mysql安装配置
一、MySQL的安装
Hive的数据,是存在HDFS里的。此外,hive有哪些数据库,每个数据库有哪些表,这样的信息称之为hive的元数据信息。
元数据信息不存在HDFS,而是存在关系型数据库里,hive默认用的是derby数据库来存储。即hive工作时,除了要依赖Hadoop,还要依赖关系型数据库。
注意:虽然我们能通过HDFS查看到hive有哪些数据库,有哪些表,以及表里的数据,但是,这不是元数据信息。HDFS最主要的是存储hive的数据信息。
之前遇到的问题:当退出后,切换到不同的目录来进入hive,发现库和表没有了,是因为,第一次从bin目录进入hive,会在bin目录下创建一个metastore.db目录,在这个目录下,创建一个derby.log文件来存储
元数据信息。这个元数据信息是基于bin目录来创建的。而切换到其他目录进入hive时,查询时不是基于bin目录来查询的,所有查不到元数据信息,导致查不到。这个问题是derby数据库本身的问题,所以,我们不能用derby数据库,此外,用derby数据库,也不支持并发,比如一个人在操作hive,如果此时有其他人想用hive,用不了。所以我们选择用mysql数据库。目前hive支持derby和mysql两种数据库。
Linux下mysql的安装过程:Linux下的MySQL安装
二、Hive的mysql配置步骤
①删除HDFS中的/usr/hive
执行:hadoop fs -rmr /user/hive(需要启动hadoop)
②将mysql驱动包上传至hive的安装目录的lib目录下
我这里采用rz命令来上传:mysql-connector-java-5.1.38-bin.jar
③在hive/conf添加配置文件,名字为:hive-site.xml
javax.jdo.option.ConnectionURL
jdbc:mysql://hadoopalone:3306/hive?createDatabaseIfNotExist=true //mysql的url
javax.jdo.option.ConnectionDriverName
com.mysql.jdbc.Driver
javax.jdo.option.ConnectionUserName //mysql的用户名
root
javax.jdo.option.ConnectionPassword //mysql的密码
root
如图所示,添加如下配置
④进入hive ,进入bin目录,执行:sh hive
如果出现:
Access denied for user 'root'@'hadoop01' (using password: YES)这个错误,指的是当前用户操作mysql数据库的权限不够。
⑤进入到mysql数据库,进行权限分配
执行:grant all privileges on *.* to 'root'@'hadoopalone' identified by 'root' with grant option;
grant all on *.* to 'root'@'%' identified by 'root';
然后执行:flush privileges;(注意分号)
⑥手动创建Hive数据库
如果不事先在mysql里创建hive数据库,在进入hive时,mysql会自动创建hive数据库。但是注意,因为我们之前配置过mysql的字符集为utf-8,所以这个自动创建的hive数据库的字符集是utf-8的。
但是hive要求存储元数据的字符集必须是iso8859-1。如果不是的话,hive会在创建表的时候报错(先是卡一会,然后报错)。
进入mysql执行:create database hive character set latin1;
⑦以上步骤都做完后,再次进入mysql的hive数据,发现有如下表:
⑧通过navicat连接mysql数据库
⑨可以通过DBS 、TBLS、COLUMNS_V2这三张表来查看元数据信息。
DBS 存放的数据库的元数据信息
TBLS存放的tables表信息
COLUMNS表存放的是列字段信息
此外,可以通过查看SDS表来查询HDFS里的位置信息
至此,Hive配置mysql大功告成!如果有什么问题,大家一起留言讨论。
hive 配置mysql_Hive的mysql安装配置相关推荐
- cent mysql 配置,centos下MySQL安装配置
centos下MySQL安装配置 下载 https://dev.mysql.com/downloads/mysql/下载Linux-Generic版本 uname -a查看系统架构, 选择相应版本. ...
- hive to mysql_Hive And MySQL安装及设置
安装MySQL服务端 [root@centos local]# rpm -i MySQL-server-5.5.31-2.el6.i686.rpm PLEASE REMEMBER TO SET A P ...
- freebsd mysql 配置_FreeBSD#MySQL安装配置
1.系统环境 FreeBSD 8.3 RELEASE版(i386平台).MySQL 5.5.27版本. 2.安装MySQL 通过强大的FreeBSD ports系统,安装MySQL的步 ...
- MySQL安装配置教程最全详解,一步一图解
一. 下载MySQL Mysql官网下载地址: https://downloads.mysql.com/archives/installer/ 1. 选择要安装的版本,本篇文章选择的是5.7.31版本 ...
- mysql数据库解压安装教程_MySQL数据库之windows 10下解压版MySql安装配置方法教程...
本文主要向大家介绍了MySQL数据库之windows 10下解压版MySql安装配置方法教程 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. windows 10 下安装解压版的 ...
- IIS+PHP+MYSQL安装配置
IIS+PHP+MYSQL安装配置 首先下载php-5.2.0-win32.zip,mysql-noinstall-5.0.22-win32.zip和phpMyAdmin-2.9.1.1-all-la ...
- linux 安装nginx php mysql 配置文件在哪_linux下 php+nginx+mysql安装配置
我主要是用来安装php,以及nginx和php的交互. 一 安装插件 可以选择YUM安装或者源码编译安装gccgcc-c++zlib pcre pcre-devel libevent libevent ...
- Linux Apache php MySQL 安装配置(Centos 6.4 yum安装)
一.yum准备 1.Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器. 基于RPM包管理,能够 ...
- 绿色版 MySQL 安装配置的正确操作步骤
文章主要向大家介绍的是绿色版 MySQL 安装配置的实际操作流程,我们是在MySQL5.1版的环境下对色版 MySQL进行正确的安装配置,以及对其具体的下载地址有一详细介绍,以下就是文章的详细内容介绍 ...
最新文章
- 如何用python实现邮箱发送信息
- pandas describe函数_PANDAS: 新手教程 一
- 官网拉取fuchsia代码
- ThinkPHP5有关模型hasOne、hasMany、belongsTo详解
- element selection选中变颜色_Excel | 聚光灯效果(阅读模式)——改变当前行和列的颜色...
- 图解 Python 深拷贝和浅拷贝
- Unsupported major.minor version 51.0(jdk版本错误)
- 【计算机视觉】计算机视觉、模式识别、机器学习常用牛人主页链接
- 服务器性能指标(一)——负载(Load)分析及问题排查
- Jenkins持续集成实践之java项目自动化部署
- 动态规划进阶题目之滑雪
- 程序员能自己独立进行程序开发,为何要去公司上班呢?真相出来了!
- 20171116-构建之法:现代软件工程-阅读笔记
- 小腿抽筋了,按摩承山穴,外加念观世音菩萨是不是迷信
- 分贝噪音测试软件文件存储,分贝噪音测试工具
- 精通CSS-网页排版
- go 学习笔记之值得特别关注的基础语法有哪些
- 转载:选一个适合自己的加密芯片,加密IC,如何才能真正的做到不被破解。
- VR科普主题项目VR模拟体验设备VR科普馆
- 二、常见的EDID问题
热门文章
- php登录注册脚本,PHP - 登录脚本
- oracle实现mysql的if_【原创】ORACLE的几个函数在MYSQL里面的简单实现
- html旋转代码_付费?是不可能的!20行Python代码实现一款永久免费PDF编辑工具
- thread local性能 c++_MySQL 5.7 amp; MySQL 8.0 性能对比
- python 怎么将数组转为列表_Python怎么将文件读入列表?
- plsql大字段保存类型_大揭秘,学习python,为什么数据类型有这么重要
- loadrunner自学笔记-性能测试的注意要点
- 九度 OJ 1451 错排 动规
- (软件工程复习核心重点)第三章需求分析-第四节:其他图形工具
- JavaScript创建Element元素/标签的工具/方法