当前位置:   article > 正文

hive取mysql数据oracle数据,Hive安装过程(mysql/oracle存储元数据)详解

hive初始化oracle后,表是哪些

Hive安装过程(mysql/oracle存储元数据)

前置条件:

- mysql数据库已经安装成功

- hadoop环境已经配置正确,且可以提供正常服务

说明:

-由于资源有限,下面配置的hadoop集群只有一个节点,所有服务都在一个节点上启动

(一)mysql存储元数据

(1)创建mysql用户

[email protected]:~$ mysql -uroot -pmysql

mysql> CREATE USER 'hive' IDENTIFIED BY 'mysql';

mysql> GRANT ALL PRIVILEGES ON *.* TO 'hive'@'%' WITH GRANT OPTION;

mysql> flush privileges;

(2)重启mysql服务

sudo service mysql restart

(3)建立 Hive 专用的元数据库(使用刚才创建的hive用户登陆)

mysql> exit;

hadoop@ubuntu:~$mysql -uhive -pmysql

mysql> create database hive;

(4)Hive环境变量及配置项

设置环境变量

在/home/hadoop/.bashrc文件中加入环境变量

export HIVE_HOME=/home/hadoop/apache-hive-2.1.0-bin

export PATH=$HIVE_HOME/bin:$PATH

修改配置文件

将 $HIVE_HOME/conf/hive-default.xml.template修改为$HIVE_HOME/conf/hive-site.xml,修改hive-site.xml文件内容如下:

javax.jdo.option.ConnectionURL

jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true

javax.jdo.option.ConnectionUserName

hive

Username to use against metastore database

javax.jdo.option.ConnectionPassword

mysql

password to use against metastore database

(5)下载mysqlJDBC驱动包,复制到Hive的lib目录下

cp mysql-connector-java-5.1.39-bin.jar $HIVE_HOME/lib/

(6)初始化hive元数据表

schematool -initSchema -dbType mysql

(7)启动 Hive Shell

启动 Hive Shell, 执行“show tables;”命令,如果不报错,表明基于独立元数据库的 Hive 已经安装成功了

(8)测试

创建表

hive> create table mytable(str STRING);

查看表信息

hive> describe mytable;

OK

str string

Time taken: 0.075 seconds, Fetched: 1 row(s)

添加数据

echo "test hive table row" >/tmp/myfile

hive -e "LOAD DATA LOCAL INPATH '/tmp/myfile' INTO TABLE mytable" ;

查询数据

hive> select * from mytable;

OK

test hive table row

Time taken: 0.152 seconds, Fetched: 1 row(s)

删除表

hive> drop table mytable;

OK

Time taken: 2.133 seconds

(二)oracle 存储元数据

(1)创建用户

sqlplus "sys as sysdba"

SQL> create user hive identified by hive;

User created.

SQL> grant connect to hive;

Grant succeeded.

SQL> grant all privileges to hive;

Grant succeeded.

(2)配置文件

javax.jdo.option.ConnectionURL

jdbc:oracle:thin:@myhost:1521:xe

javax.jdo.option.ConnectionDriverName

oracle.jdbc.OracleDriver

javax.jdo.option.ConnectionUserName

hive

javax.jdo.option.ConnectionPassword

hive

(3)下载oracle驱动包

(4)初始化表

schematool -dbType oracle -initSchema

(5)示例(使用Hive自带的数据)

创建表

hive> CREATE TABLE testtable (foo INT, bar STRING) PARTITIONED BY (ds STRING);

插入数据

hive> LOAD DATA LOCAL INPATH '$HIVE_HOME/examples/files/kv1.txt' OVERWRITE INTO TABLE testtable PARTITION (ds='2016-07-28');

hive> LOAD DATA LOCAL INPATH '$HIVE_HOME/examples/files/kv2.txt' OVERWRITE INTO TABLE testtable PARTITION (ds='2016-07-29');

请将$HIVE_HOME替换成具体路径执行

- 查询数据

hive> select t.foo from testtable t where t.ds='2016-07-29';

(6)参考

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/176877
推荐阅读
相关标签
  

闽ICP备14008679号