1:安装计划
hadoop1: 121.248.50.155 (hadoop2.2.0 namenode)
hadoop2: 121.248.48.101 (hive0.11.0 client)
hadoop3: 121.248.52.30 (MySQL server + hive metastore service)
hadoop2.2.0的安装目录/app/hadoop/hadoop220
hive 0.13.0的安装目录/app/hadoop/hive013
2:安装和配置hadoop3(MySQL server + hive metastore service)
A:安装配置MySQL
MySQL的安装参见博客
[root@hadoop3 hadoop]# mysql -uroot -p
mysql> grant all on *.* to mysql@'%' identified by 'mysql' with grant option;
mysql> create user 'hadoop' identified by 'hadoop';
mysql> grant all on *.* to hadoop@'%' with grant option;
mysql> quit;
[root@hadoop3 hadoop]# mysql -uhadoop -p
mysql> create database hive;
mysql> quit;
B:安装hive 0.13.1
在物理机上下载hive版本0.13.1,保存在/home/kaiseu/下载/apache-hive-0.13.1-bin.tar.gz
上传hive安装文件:
hadoop@kaiseu-ubuntu:/home/kaiseu/下载$ scp /home/kaiseu/下载/apache-hive-0.13.1-bin.tar.gz hadoop@hadoop3:/app/hadoop/
解压并修改文件夹名:
[hadoop@hadoop3 hadoop]$ tar zxf apache-hive-0.13.1-bin.tar.gz
[hadoop@hadoop3 hadoop]$ mv apache-hive-0.13.1-bin hive013
配置:
[hadoop@hadoop3 hadoop]$ cd hive013/conf
[hadoop@hadoop3 conf]$ cp hive-default.xml.template hive-site.xml
[hadoop@hadoop3 conf]$ cp hive-env.sh.template hive-env.sh
[hadoop@hadoop3 conf]$ vi hive-env.sh
HADOOP_HOME=/app/hadoop/hadoop220
[hadoop@hadoop3 conf]$ vi hive-site.xml
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://hadoop3:3306/hive?=createDatabaseIfNotExist=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hadoop</value>
<description>username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hadoop</value>
<description>password to use against metastore database</description>
</property>
增加驱动程序:
hadoop@kaiseu-ubuntu:/home/kaiseu/下载$ scp /home/kaiseu/下载/mysql-connector-java-5.1.26-bin.jar hadoop@hadoop3:/app/hadoop/hive013/lib/.
hive默认存储目录:
/usr/hive/warehouse
安装完成,启动hive:
[hadoop@hadoop3 hive013]$ bin/hive
hive> show databases;
OK
default
Time taken: 0.497 seconds, Fetched: 1 row(s)
hive> create table aaa(aa string,bb int);
在浏览器中查看:
3:hive client安装(在hadoop2上安装)
直接从hadoop3上拷贝:
[hadoop@hadoop3 hadoop]$ scp -r hive013/ hadoop@hadoop2:/app/hadoop/
修改配置文件
[hadoop@hadoop2 conf]$ vi hive-site.xml
<property>
<name>hive.metastore.uris</name>
<value>thrift://hadoop3:9083</value>
<description>Thrift uri for the remote metastore. Used by metastore client to connect to remote metastore.</description>
</property>
在hadoop3上启动metastore服务(作为前台服务)
[hadoop@hadoop3 hive013]$ bin/hive --service metastore
如果不启动直接访问会报错。
前台退出ctrl+c
后台启动:
nohup bin/hive --service metastore > metastore.log 2>&1 &
2>&1 表示所有的标准输出和错误都将被重定向到一个叫作metastore.log的文件中。
后台退出
[hadoop@hadoop3 hive013]$ jobs
[hadoop@hadoop3 hive013]$ kill %num
查看端口号:
[hadoop@hadoop3 hive013]$ netstat -nlt
再增加一个用户:
hadoop@kaiseu-ubuntu:/app/hadoop/hive013$ scp -r hadoop@hadoop2:/app/hadoop/hive013 .