1.环境及软件介绍:CentOS-6.4-x86_64-bin-DVD1.iso hadoop-2.2.0 hive-0.12.0 mysql(为CentOS6.4自带版本为MySQL5.1.66).
2.MySQL的安装和卸载
使用rpm –qa|grep mysql查看已安装的数据库软件
卸载MySQL yum remove mysql mysql-server
重新安装 yum –y install mysql mysql-server
3.MYSQL数据库基本配置
设置开机自启动
首次使用设定密码

若上述设定无效,可使用下列方法强制设定


4.修改并添加Vi /etc/my.cnf文件的内容
注:红框中的信息有则修改,无则添加。
5.将MySQL的jdbc驱动包放入hive的lib下,若所有者不是Hadoop,要修改为Hadoop。

注:驱动包版本与MySQL版本不符,但可以用。驱动包5.1的可以支持MySQL4.1-6.0.但还是越接近MySQL越好,bug较少。
6.创建数据库并设置编码。
Create database hive;
Create database hive;
alter database hive character set latin1;7.安装hive,进入软件所在目录。使用命令tar –zvxf hive-0.12.0.tar.gz

8.将hive-0.12.0主目录修改为hiv.命令为mv hive-0.12.0 hive (这一步可以省略。)

9.修改配置文件。配置文件在hive主目录的conf文件夹下。操作命令如下
cp hive-env.sh.template hive-env.sh
chown hadoop:hadoop hive-env.sh
使用vi hive-env.sh添加如下信息

并继续使用cp命令产生hive-default.xml和hive-site.xml

注以上修改的文件所用者要是hadoop用户
10.在hive-site.xml添加如下信息

注:1为主机名,最好为localhost,其他的有时会不识别
2.为在MySQL中创建的专属数据库名
3.为用户名,最好直接是root用户。这个无影响
4.MySQL的登录密码。
11.切换到Hadoop用户下,启动Hadoop。查看Hadoop是否正常
12.执行
进入hive
./hive(有警告但可以忽略)
使用hive命令进行操作


至此基于MySQL的hive变搭建成功了。
13. 常见错误更改。
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
Unable to
instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient
at
org.slf4j.LoggerFactory.getSingleton(LoggerFactory.java:223)
at
org.slf4j.LoggerFactory.bind(LoggerFactory.java:120)
at
org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:111)
. . . . . . . .
出现的原因
1.没有找到合适的绑定SLF4J,无法载入到内存
2.slf4j是所谓的门面模式,提供了一个接口,出现上面的异常是因为jar冲突了
解决的办法,根据报的异常下载新的合适的slf4j-nop.jar。根据我的错误我下的是slf4j-1.7.5.tar.gz。具体如下先删除旧的,再添加新的。

14. 基本操作练习。



向hive中添加数据。(空格长度就是\t就是tab)


之所以会出现四行null。是因为空格不是一个tab长度。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30172158/viewspace-1587753/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/30172158/viewspace-1587753/
本文详细介绍如何在CentOS 6.4上安装配置MySQL,并基于MySQL搭建Hive环境,包括MySQL的基本配置、Hive的安装步骤及常见问题解决办法。
1172

被折叠的 条评论
为什么被折叠?



