hadoop2.2.0的基础上配置hive0.12.0(支持mysql)
2014-05-13 08:56
591 查看
前提:已经安装好了hadoop2.2.0,当然也可以是其他版本的hadoop,作者使用的是这个版本,并在vmware上配了一个master和3个slaver。配置方式参考:
/article/8920272.html
一、下载hive-0.12.0,并解压到/usr/hive中
二、将hive-default.xml.template拷贝一份并重命名为hive-site.xml,同样,将hive-env.sh.template拷贝一份并重命名为hive-env.sh
三、修改2个配置文件,env,sh主要是修改环境变量,而-site.xml主要是修改hive的元数据库配置(本文以配置mysql作为元数据)
关键配置如下:(-site.xml)
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost: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>hive</value>
<description>username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hive</value>
<description>password to use against metastore database</description>
</property>
<property>
<name>hive.stats.dbclass</name>
<value>jdbc:mysql</value>
<description>The default database that stores temporary hive statistics.</description>
</property>
<property>
<name>hive.stats.jdbcdriver</name>
<value>com.mysql.jdbc.Driver</value>
<description>The JDBC driver for the database that stores temporary hive statistics.</description>
</property>
<property>
<name>hive.stats.dbconnectionstring</name>
<value>jdbc:mysql://localhost:3306/hive_stats?useUnicode=true&characterEncoding=latin1&user=mysql_username&password=mysql_password&createDatabaseIfNotExist=true</value>
<description>The default connection string for the database that stores temporary hive statistics.</description>
</property>
<property>
<name>hive.server2.thrift.sasl.qop</name>
<value>auth</value>
<description>Sasl QOP value; Set it to one of following values to enable higher levels of
protection for hive server2 communication with clients.
"auth" - authentication only (default)
"auth-int" - authentication plus integrity protection
"auth-conf" - authentication plus integrity and confidentiality protection
This is applicable only hive server2 is configured to use kerberos authentication.
</description>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
<description>
Enforce metastore schema version consistency.
True: Verify that version information stored in metastore matches with one from Hive jars. Also disable automatic
schema migration attempt. Users are required to manully migrate schema after Hive upgrade which ensures
proper metastore schema migration. (Default)
False: Warn if the version information stored in metastore doesn't match with one from in Hive jars.
</description>
</property>
ps:hive在hadoop中的路径可以默认不修改,env中java-home类似的配置可以省略,因为hadoop时已经配置了
HADOOP_HOME=/usr/hadoop
export HIVE_CONF_DIR=/usr/hive/conf
四:安装mysql并添加hive账号(账号密码都是hive)
1、执行yum install mysql-connector-java命令,自动安装mysql
2、将/usr/share/java/mysql-connector-java-5.1.17.jar拷贝到hive的lib目录既可
3、添加用户:
•create database hive
•创建hive用户,并授权
•grant all on hive.* to hive@'%' identified by 'hive';
•flush privileges;
五、启动hive,第一次启动会报错,后续就正确了
六、验证:
1、hive是否可以创建数据库和表
hive> create table myhive(id int ,name string);
OK
Time taken: 3.32 seconds
hive> show tables;
OK
myhive
Time taken: 0.261 seconds, Fetched: 1 row(s)
2、加载hadoop中的文件
//待补充
3、select和insert
//待补充
安装Hive参考地址:
http://blog.csdn.net/vah101/article/details/18653543 http://blog.chinaunix.net/uid-451-id-3143781.html
/article/4630484.html
http://www.throwexcept.com/5/32/2026.html
常见问题:
1、hive启动报错:mysql驱动jar没有放入hive/lib中 http://bbs.csdn.net/topics/390787105?page=1#post-397387341
2、debug:hive --hiveconf hive.root.logger=DEBUG,console
3、hadoop用户无法启动hive,启动报错如下:
14/05/22 07:10:34 INFO hive.metastore: Trying to connect to metastore with URI thrift://localhost:9083
14/05/22 07:10:34 WARN hive.metastore: Failed to connect to the MetaStore Server...
org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused
解决办法:进入/usr/hive/bin目录下,执行./hive
[hadoop@Master bin]$ pwd
/usr/hive/bin
[hadoop@Master bin]$ ./hive
而不是直接在根目录下执行hive
[hadoop@Master ~]$ pwd
/home/hadoop
[hadoop@Master ~]$ hive
学习文章:
http://www.open-open.com/doc/view/8e07f484a8db411cb7964f52263811f8
http://www.blogjava.net/hengheng123456789/archive/2011/01/05/342354.html
http://www.iteblog.com/archives/tag/hive的那些事
http://www.iteblog.com/archives/886 cj96
http://www.iteblog.com/archives/851
配置参考文章:
http://www.throwexcept.com/5/32/2026.html
/article/4630484.html
http://www.ibm.com/developerworks/cn/data/library/bd-hivelibrary/
注意点:
1、目前是把hive的目录放到跟hadoop同级,即/usr/hive
2、hive包中conf目录下有个默认的文件名叫hive-default.xml.template,我们要做的是拷贝一份,且命名为hive-site.xml,这是很坑爹的,同时里面有个<value>auth</auth>的错误
3、hive.metastore.warehouse.dir hive的表其实是存在hdfs的一个数据文件,并不是真正的表,表自身的信息称为元数据,表里面的数据其实就是hdfs中的数据,所以需要指定hive在hdfs中的目录
4、hive启动报错:参见:http://www.micmiu.com/bigdata/hive/hive-default-setup/
实战:
http://www.open-open.com/lib/view/open1386742941845.html
数据:
http://www.ibm.com/developerworks/cn/data/library/bd-hivelibrary/
常见的mysql命令:
http://www.360doc.com/content/10/1125/16/4506941_72353321.shtml
hive命令:
http://blog.csdn.net/xiaoping8411/article/details/7605039
hive数据导入:
http://www.iteblog.com/archives/949
/article/8920272.html
一、下载hive-0.12.0,并解压到/usr/hive中
二、将hive-default.xml.template拷贝一份并重命名为hive-site.xml,同样,将hive-env.sh.template拷贝一份并重命名为hive-env.sh
三、修改2个配置文件,env,sh主要是修改环境变量,而-site.xml主要是修改hive的元数据库配置(本文以配置mysql作为元数据)
关键配置如下:(-site.xml)
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost: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>hive</value>
<description>username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hive</value>
<description>password to use against metastore database</description>
</property>
<property>
<name>hive.stats.dbclass</name>
<value>jdbc:mysql</value>
<description>The default database that stores temporary hive statistics.</description>
</property>
<property>
<name>hive.stats.jdbcdriver</name>
<value>com.mysql.jdbc.Driver</value>
<description>The JDBC driver for the database that stores temporary hive statistics.</description>
</property>
<property>
<name>hive.stats.dbconnectionstring</name>
<value>jdbc:mysql://localhost:3306/hive_stats?useUnicode=true&characterEncoding=latin1&user=mysql_username&password=mysql_password&createDatabaseIfNotExist=true</value>
<description>The default connection string for the database that stores temporary hive statistics.</description>
</property>
<property>
<name>hive.server2.thrift.sasl.qop</name>
<value>auth</value>
<description>Sasl QOP value; Set it to one of following values to enable higher levels of
protection for hive server2 communication with clients.
"auth" - authentication only (default)
"auth-int" - authentication plus integrity protection
"auth-conf" - authentication plus integrity and confidentiality protection
This is applicable only hive server2 is configured to use kerberos authentication.
</description>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
<description>
Enforce metastore schema version consistency.
True: Verify that version information stored in metastore matches with one from Hive jars. Also disable automatic
schema migration attempt. Users are required to manully migrate schema after Hive upgrade which ensures
proper metastore schema migration. (Default)
False: Warn if the version information stored in metastore doesn't match with one from in Hive jars.
</description>
</property>
ps:hive在hadoop中的路径可以默认不修改,env中java-home类似的配置可以省略,因为hadoop时已经配置了
HADOOP_HOME=/usr/hadoop
export HIVE_CONF_DIR=/usr/hive/conf
四:安装mysql并添加hive账号(账号密码都是hive)
1、执行yum install mysql-connector-java命令,自动安装mysql
2、将/usr/share/java/mysql-connector-java-5.1.17.jar拷贝到hive的lib目录既可
3、添加用户:
•create database hive
•创建hive用户,并授权
•grant all on hive.* to hive@'%' identified by 'hive';
•flush privileges;
五、启动hive,第一次启动会报错,后续就正确了
六、验证:
1、hive是否可以创建数据库和表
hive> create table myhive(id int ,name string);
OK
Time taken: 3.32 seconds
hive> show tables;
OK
myhive
Time taken: 0.261 seconds, Fetched: 1 row(s)
2、加载hadoop中的文件
//待补充
3、select和insert
//待补充
安装Hive参考地址:
http://blog.csdn.net/vah101/article/details/18653543 http://blog.chinaunix.net/uid-451-id-3143781.html
/article/4630484.html
http://www.throwexcept.com/5/32/2026.html
常见问题:
1、hive启动报错:mysql驱动jar没有放入hive/lib中 http://bbs.csdn.net/topics/390787105?page=1#post-397387341
2、debug:hive --hiveconf hive.root.logger=DEBUG,console
3、hadoop用户无法启动hive,启动报错如下:
14/05/22 07:10:34 INFO hive.metastore: Trying to connect to metastore with URI thrift://localhost:9083
14/05/22 07:10:34 WARN hive.metastore: Failed to connect to the MetaStore Server...
org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused
解决办法:进入/usr/hive/bin目录下,执行./hive
[hadoop@Master bin]$ pwd
/usr/hive/bin
[hadoop@Master bin]$ ./hive
而不是直接在根目录下执行hive
[hadoop@Master ~]$ pwd
/home/hadoop
[hadoop@Master ~]$ hive
学习文章:
http://www.open-open.com/doc/view/8e07f484a8db411cb7964f52263811f8
http://www.blogjava.net/hengheng123456789/archive/2011/01/05/342354.html
http://www.iteblog.com/archives/tag/hive的那些事
http://www.iteblog.com/archives/886 cj96
http://www.iteblog.com/archives/851
配置参考文章:
http://www.throwexcept.com/5/32/2026.html
/article/4630484.html
http://www.ibm.com/developerworks/cn/data/library/bd-hivelibrary/
注意点:
1、目前是把hive的目录放到跟hadoop同级,即/usr/hive
2、hive包中conf目录下有个默认的文件名叫hive-default.xml.template,我们要做的是拷贝一份,且命名为hive-site.xml,这是很坑爹的,同时里面有个<value>auth</auth>的错误
3、hive.metastore.warehouse.dir hive的表其实是存在hdfs的一个数据文件,并不是真正的表,表自身的信息称为元数据,表里面的数据其实就是hdfs中的数据,所以需要指定hive在hdfs中的目录
4、hive启动报错:参见:http://www.micmiu.com/bigdata/hive/hive-default-setup/
实战:
http://www.open-open.com/lib/view/open1386742941845.html
数据:
http://www.ibm.com/developerworks/cn/data/library/bd-hivelibrary/
常见的mysql命令:
http://www.360doc.com/content/10/1125/16/4506941_72353321.shtml
hive命令:
http://blog.csdn.net/xiaoping8411/article/details/7605039
hive数据导入:
http://www.iteblog.com/archives/949
相关文章推荐
- HIVE+MYSQL+HADOOP环境配置(用于学习)
- hadoop2.2.0 + hbase 0.94 + hive 0.12 配置记录
- mysql5.7.18安装、Hive2.1.1安装和配置(基于Hadoop2.7.3集群)
- centos 6.5-hadoop-2.2.0配置hive1.2.1
- hadoop集群配置之hive1.2.0安装部署(远程mysql)
- hadoop集群配置之hive1.2.0安装部署(远程mysql)
- Hadoop基础教程-第11章 Hive:SQL on Hadoop(11.2 Hive安装与配置)(草稿)
- 搭建Hadoop2.7.3+Hive2.1.1及MySQL(配置Hive+MySQL+Connector)(三)
- Hadoop2.2.0+HBase.96+Hive0.12配置详细过程整理
- HIVE+MYSQL+HADOOP环境配置(用于学习)
- 整合Hadoop2.2.0+HBase0.96+Hive0.12+MySql集群
- hadoop集群配置之hive1.2.0安装部署(远程mysql)
- hadoop-2.7+hive-2.1.1+mysql 集群配置
- hadoop中hive配置mysql
- Hive1.1安装配置,基于最小安装的CentOS7、hadoop2.6、MySQL
- Hadoop2.2.0 hive0.12 hbase0.94 配置问题记录
- 大数据基础(二)hadoop, mave, hbase, hive, sqoop在ubuntu 14.04.04下的安装和sqoop与hdfs,hive,mysql导入导出
- Hadoop2.2.0+HBase.96+Hive0.12配置详细过程整理
- 搭建Hadoop2.7.3+Hive2.1.1及MySQL(配置Hadoop)(一)
- Sqoop-1.4.6安装配置及Mysql->HDFS->Hive数据导入(基于Hadoop2.7.3)