hadoop2.2.0伪分布下安装hive

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 mysqlmysql-server

重新安装 yum –y install mysqlmysql-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;

   alterdatabase 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命令进行操作
   
   
    至此基于MySQLhive变搭建成功了。
13.
常见错误更改。

SLF4J: Failed to load class"org.slf4j.impl.StaticLoggerBinder".

Unable toinstantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient
     atorg.slf4j.LoggerFactory.getSingleton(LoggerFactory.java:223) 
     atorg.slf4j.LoggerFactory.bind(LoggerFactory.java:120) 
     atorg.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长度。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值