雷顿学院大数据
雷顿学院大数据:http://www.leidun.site/
hive安装
下载hive
http://mirror.bit.edu.cn/apache/hive/
下载后解压
配置命令
将hive加入命令
vim ~/.bash_profile
添加如下命令
export HIVE_HOME=/usr/local/Cellar/hive/1.2.1/libexec
保存文件
mysql数据库驱动
curl -L 'http://www.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.42.tar.gz/from/http://mysql.he.net/' | tar xz
复制驱动jar文件到 hive/libexec/lib
修改配置
进入hive解压后的目录,拷贝hive配置文件
cp hive-default.xml.template hive-site.xml
metasore存储的三种方式
1. Derby
2. Local mysql
3. Remote mysql,生产环境选用
在配置中找到以下参数,修改value
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost/metastore</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive(填上述mysql中创建的用户名)</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456(填上述mysql中创建的用户密码)</value>
</property>
<property>
<name>hive.exec.local.scratchdir</name>
<value>/tmp/hive</value>
</property>
<property>
<name>hive.querylog.location</name>
<value>/tmp/hive</value>
</property>
<property>
<name>hive.downloaded.resources.dir</name>
<value>/tmp/hive</value>
</property>
<property>
<name>hive.server2.logging.operation.log.location</name>
<value>/tmp/hive</value>
</property>
另外将 hive-site.xml中所有配置项包含 system:java.io.tmpdir,替换成hdfs上一个存在的地址
初始化metastore
schematool –initSchemal –dyType mysql
启动hive
启动hive metastore
hive --service metastore &
启动hive,在命令行直接输入 hive
hive
注意事项:
安装hive的jdk需要使用jdk8及以下版本,
否则会报错如下
java.lang.Integer (jdbc-type="", sql-type="") cant be mapped for this datastore. No mapping is available.
这个报错是因为java类型到sql映射出错,jdk9对之前版本的某些jar或者之前jdk的某些用法不支持。
Exception in thread "main" java.lang.ClassCastException: java.base/jdk.internal.loader.ClassLoaders$AppClassLoad
这是因为jdk9的 将URLClassLoader 作为系统的ClassLoaders的superclass导致,所以之前用到他两转化的都会出错需要重写代码
学习大数据请加雷顿学院大数据技术交流QQ群(扫码加下方qq群),大牛实时互动,或者加我微信&qq: 314312298
转载于:https://blog.51cto.com/chenxiaolong/2294239