查看网络端口命令
netstat -antp | less
netstat -aux | less
ps -aux
ps -ef
启动mysql,启动hadoop,访问hadoop8088端口
service mysqld start
start-all.sh
ip:8088
访问hadoop50070端口
ip:50070
启动hive,查看数据库以及数据库当中的表,tt这个数据库是我之前创建的,里面没有表
新建表,查询表里是否为空
在linux任意位置建立stu2015文件,我的文件位置为/home/hadoop/app
vi stu2015
里面内容为
进入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(&)可以不加