hive通过浏览器展示节点内容

查看网络端口命令

netstat   -antp | less

netstat  -aux | less

ps -aux

ps -ef

启动mysql,启动hadoop,访问hadoop8088端口

service mysqld start

start-all.sh

ip:8088


hive通过浏览器展示节点内容_第1张图片 

访问hadoop50070端口

ip:50070



hive通过浏览器展示节点内容_第2张图片


启动hive,查看数据库以及数据库当中的表,tt这个数据库是我之前创建的,里面没有表

hive通过浏览器展示节点内容_第3张图片

新建表,查询表里是否为空

hive通过浏览器展示节点内容_第4张图片

在linux任意位置建立stu2015文件,我的文件位置为/home/hadoop/app

vi stu2015

里面内容为

liubing,20031001,23
liuy,20034001,24
zhangwu,20040333,21
lizhang,20033233,20
wuzh,23232323,19

进入hive命令行,输入以下命令,将文件的内容写入到mysql的student表中,覆盖

load data local inpath '/home/hadoop/app/stu2015' overwrite into table student partition (dt='2015');

select * from student;

student里面的内容为stu2015文件的内容,达到了复写的效果(通过浏览器50070端口查看文件结构)

(ps:如果遇到问题:通过 hive -hiveconf hive.root.logger=DEBUG,console可以打开hive的调试模式,对于查找bug可以有所帮助)

进入hive命令行模式,执行以下代码

load data local inpath '/home/hadoop/app/stu2015'  into table student partition (dt='2014');

select * from student;查看效果

创建外部表(通过浏览器50070端口查看文件结构)(直接引用,不用hadoop fs -ls 上传了)

create external table student1 (name string,number string,age string) PARTITIONED BY ( dt STRING ) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',\t' location '/user/hive/warehouse/student/dt=2014';(此命令又问题,希望有大神可以解答一下,运行后为什么没有东西)

更改存储路径

hive.metastore.warehouse.dir

用默认模式开启hive

hive --hiveconf  hive.cli.print.current.db=true

在linux命令行里编辑文件t.hql,位置/home/hadoop/app

vi t.hql

load data local inpath '/home/hadoop/app/stu2015' into table student partition (dt='2015');
select * from student;

在/home/hadoop/app下的linux命令行里执行,查看50070端口里的文件

hive -f t.hql

如果要使用eclipse编写java代码用jdbc连接mysql执行,要执行以下命令,以及自己编写代码(此端口为10000)

hive --service hiveserver2(&)可以不加


你可能感兴趣的:(hive)