第七章 伪分布式安装hive,sqoop

 

 第一部分:先讲这么去安装hive.先去hive官网下载,我这里以hive-0.12.0为例子。

前面第二章讲了安装hadoop,hbase实例,我们继续讲这么安装hive,先说下hive配置文件

一,先讲下使用Derby数据库的安装方式

1.tar zxvf hive-0.12.0.tar.gz     解压hive

2.sudo nano   /etc/profile      配置环境变量,在原有的基础上加上hive配置

在终端输入   source   /etc/profile   使环境变量对当前终端有效

3.cd    /home/hadoop/hive-0.12.0/conf

默认配置文档不存在,所以我们根据模板创建另外2个配置文件,或者还有个方法,就是把原有4个配置文档后面的template删除

cp  hive-default.xml.template  hive-site.xml  

cp  hive-env.sh.template   hive-env.sh

4.sudo nano  hive-env.sh     修改hive-env.sh配置文件

5.sudo nano hive-site.xml文件,在文件的2000行,有一个不对称

把它修改过来就OK了

6.进入到hive的conf目录下,启动hive

 

二,使用MySQL数据库的安装方式

注意:配置mysql远程连接必须是root用户 

1.先安装mysql服务器

sudo apt-get install mysql-server   

2.安装完一搬都自动启动mysql了,如果没有启动,你在输入:

/etc/init.d/mysql start

如果启动了,就登陆mysql

mysql -u root -p

enter password :'123456'

3.设置远程操作mysql权限

GRANT ALL PRIVILEGES ON *.* to root @"%" identified by "123456";                  

flush privileges;  
 
4.建立hive数据库
create database hive;
选择你所创建的数据库
mysql> use hive; (按回车键出现Database changed 时说明操作成功!)
查看现在的数据库中存在什么表
mysql> show tables;
创建一个数据库表
mysql> create table hive(name VARCHAR(20), sex CHAR(1));
显示表的结构:
mysql> describe hive;
7:往表中加入记录
mysql>
insert into hive values (”hyq”,”M”);
 
4.安装hive还是跟上面一样,只是要修改下 hive-site.xml这个文件
1 <property>
2   <name>javax.jdo.option.ConnectionURL</name>
3   <value>jdbc:mysql://localhost:3306/hive?characterEncoding=UTF-8</value>
4   <description>JDBC connect string for a JDBC metastore</description>
5 </property>
6
7 <property>
8   <name>javax.jdo.option.ConnectionDriverName</name>
9   <value>com.mysql.jdbc.Driver</value>
10   <description>Driver class name for a JDBC metastore</description>
11 </property>
12
13 <property>
14   <name>javax.jdo.PersistenceManagerFactoryClass</name>
15   <value>org.datanucleus.jdo.JDOPersistenceManagerFactory</value>
16   <description>class implementing the jdo persistence</description>
17 </property>
18
19 <property>
20   <name>javax.jdo.option.DetachAllOnCommit</name>
21   <value>true</value>
22   <description>detaches all objects from session so that they can be used after transaction is committed</description>
23 </property>
24
25 <property>
26   <name>javax.jdo.option.NonTransactionalRead</name>
27   <value>true</value>
28   <description>reads outside of transactions</description>
29 </property>
30
31 <property>
32   <name>javax.jdo.option.ConnectionUserName</name>
33   <value>root</value>
34   <description>username to use against metastore database</description>
35 </property>
36
37 <property>
38   <name>javax.jdo.option.ConnectionPassword</name>
39   <value>123456</value>
40   <description>password to use against metastore database</description>
41 </property>
 
5.进入到hive的conf目录下,启动hive
 
 
 
 
 
 
远程使用Navicat for mysql 客户端软件连接 mySql数据时,连接出现 2003-Can’t connect to MySQL on ’192.168.1.2’(10061)错误时,是由于MySQL不准许远程连接。

修改方法如下:

1:在服务端MySQL文件夹下找到my.ini文件。修改bind-address=127.0.0.1 bind-address=0.0.0.0

2:重新启动MySQL服务。

测试连接情况:

如果没有给远程登录用户添加所有机器都能访问的权限,将会出现“1045-Access denied for user ‘root@223123(using password:NO)”,这表明需要添加权限;

添加命令如下:

1grant all on *.* to 用户名@"%" identified by "密码";

2flush privileges;

 

完成以上步骤,就可以远程访问MySQL数据库了。

 

第二部分,讲下这么安装sqoop

1.先去官网下载sqoop-1.4.4.bin__hadoop-1.0.0.tar.gz版本

2.在hadoop用户下,进行解压

tar  zxvf    sqoop-1.4.4.bin__hadoop-1.0.0.tar.gz

3.配置环境变量    /etc/profile

sudo    nano    /etc/profile,在文件的末尾,把jdk,hadoop,hbase,hive,sqoop等一些工具都要进行配置

记住,sqoop文件不要写错。

4.把mysql-connector-java-5.1.24-bin.jar放到$SQOOP_HOME/lib文件里,然后把sqoop文件里的sqoop-1.4.4.jar放到

$HADOOP_HOME/lib文件下面

5.如果你没有用到hbase或者 hcat  ,修改SQOOP的文件bin/configure-sqoop

sudo  nano  sqoop-1.4.4.bin__hadoop-1.0.0/bin/configure-sqoop,按照下面的注释掉

#if [ ! -d "${HBASE_HOME}" ]; then
 #echo "Warning: $HBASE_HOME does not exist! HBase imports will fail."
 #echo 'Please set $HBASE_HOME to the root of your HBase installation.'
#fi

 

## Moved to be a runtime check in sqoop.
#if [ ! -d "${HCAT_HOME}" ]; then
 # echo "Warning: $HCAT_HOME does not exist! HCatalog jobs will fail."
  #echo 'Please set $HCAT_HOME to the root of your HCatalog installation.'
#fi

 

这样子,sqoop就装成功了,测试

cd   #SQOOP_HOME/bin,代表sqoop环境配置没有问题

 

sqoop version ,可以看到sqoop的信息

 

 

 

 

 

 

 

 

 

posted @ 2014-01-08 15:13  heart..  阅读(1628)  评论(0编辑  收藏  举报