hive的安装与使用

1.检查集群

该部分的安装需要在 Hadoop 已经成功安装的基础上,并丏要求 Hadoop 已经正常启劢。 Hadoop 正常启劢的验证过程如下:

(1) 使用下面的命令,看可否正常显示 HDFS 上的目录列表

[zoe@master ~]$ hdfs dfs -ls /

(2) 使用浏览器查看相应界面 

http://master:50070

http://master:18088

该页面的结果跟 Hadoop 安装部分浏览器展示结果一致。如果满足上面的两个条件,表示 Hadoop 正常启劢。

 

我们将 Hive 安装在 HadoopMaster 节点上。所以下面的所有操作都在 HadoopMaster 节点上迚行。

下面所有的操作都使用 zoe 用户,切换 zoe 用户的命令是: 

su - zoe / su

密码是:******

 

2.解压并安装 Hive

链接: https://pan.baidu.com/s/1i4Lf3jn 密码: 1d8s

使用下面的命令,解压已经下载好并放到集群上的 Hive 安装包(apache-hive-0.13.1-bin.tar.gz): 

[zoe@master ~]$ tar -zxvf ~/apache-hive-0.13.1-bin.tar.gz

[zoe@master ~]$ cd apache-hive-0.13.1-bin

 

执行一下 ls -l 命令会看到下面的图片所示内容,这些内容是 Hive 包含的文件: 

3.安装配置 MySQL

链接: https://pan.baidu.com/s/1qXPAUWO 密码: z8ec

(见:https://my.oschina.net/u/2977387/blog/891797 这里我就不重复讲了)

 

4.配置 Hive

进入 hive 安装目录下的配置目录,然后修改配置文件: 

[zoe@master ~]$ cd /home/zoe/apache-hive-0.13.1-bin/conf

然后再该目录下创建一个文件 hive-site.xml,命令如下: 

[zoe@master conf]$ gedit ~/apache-hive-0.13.1-bin/conf/

将下面的内容添加到 hive-site.xml 文件中:

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?> 

<configuration>

<property>

<name>hive.metastore.local</name>

<value>true</value>

</property>

<property>

<name>javax.jdo.option.ConnectionURL</name> 

<value>jdbc:mysql://master:3306/hive_13?characterEncoding=UTF-8</value>

</property>

<property>

<name>javax.jdo.option.ConnectionDriverName</name>

<value>com.mysql.jdbc.Driver</value>

</property>

<property>

<name>javax.jdo.option.ConnectionUserName</name>

<value>hadoop</value>

</property>

<property>

<name>javax.jdo.option.ConnectionPassword</name>

<value>hadoop</value>

</property>

</configuration>

『mysql-connector-java-5.1.27.tar』链接: https://pan.baidu.com/s/1qYRne0k 密码: spbp

将 mysql 的 java connector 复制到依赖库中:

[zoe@master ~]$ cd ~/software/

[zoe@master software]$ tar -zxvf ~/software/mysql-connector-java-5.1.27.tar/

[zoe@master software]$ cp ~/software/mysql-connector-java-5.1.27/mysql-connector-java-5.1.27-bin.jar ~/apache-hive-0.13.1-bin/lib/

 

使用下面的命令打开配置:

[zoe@master ~]$ vi ~/.bash_profile

 

将下面两行配置环境变量: 

export HIVE_HOM E=$PWD/apache-hive-0.13.1-bin 

export PATH=$PATH:$HIVE_HOME/bin

 

5.启动并验证 Hive 安装

进入 hive 安装主目录,启劢 hive 客户端: 

[zoe@master apache-0.13.1-bin]$ bin/hive

出现下面的页面表示 hive 部署成功: 

 

6.使用

7.异常

7.1出现异常”The last packet sent successfully to the server was 0 milliseconds ago.“

两种解决异常:“The last packet sent successfully to the server was 0 milliseconds ago. ”的办法

原因:(大部分)由于数据库回收了连接,而系统的缓冲池不知道,继续使用被回收的连接所致的。

The last packet sent successfully to the server was 0 milliseconds ago.[nutch---mysql ]

对于JDBC操作:

原因:

(1)大量数据访问情况下,mysql connection连接有可能失效 
(2)长时间不妨问,connection会失效 

解决:

(1)使用JDBC URL中使用autoReconnect属性,url添加

  1. &autoReconnect=true&failOverReadOnly=false&maxReconnects=10  


(2) 修改MySQL的参数. /etc/my.cnf 添加 

  1. [mysqld]  
  2. wait_timeout=31536000  
  3. interactive_timeout=31536000  


(3)重启mysql 

  1. service mysql restart  

7.2以root身份重启mysql服务是出现异常--找不到PID file

[root@master hadoop]# service mysql restart

MySQL server PID file could not be found!                  [失败]
Starting MySQL..../usr/bin/mysqld_safe: line 181:  3832 Killed                  nohup /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --log-error=/var/lib/mysql/master.err --pid-file=/var/lib/mysql/master.pid < /dev/null > /dev/null 2>&1
.The server quit without updating PID file (/var/lib/mysql/[失败].pid).

 

[root@master my.cnf.d]# service mysql restart

MySQL server PID file could not be found!                  [失败]
Starting MySQL.....The server quit without updating PID fil[失败]r/lib/mysql/master.pid).

查看mysql服务状态:

[root@master hadoop]# service mysql status

MySQL is not running, but lock file (/var/lock/subsys/mysql[失败]ts

my.cnf丢失,所以要将my.cnf从/usr/my.cnf重新拷贝到/etc/。解决!!

 

转载于:https://my.oschina.net/u/2977387/blog/894770

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值