Hvie安装部署
1.准备环境
1.JDK
2.MySQL
3.Hadoop(SSH免密)
mysql -uroot -p
grant all privileges on *.* to hive@'%' identified by 'xxxxxx';
flush privileges;
exit;
2.安装
2.1解压缩
su - hadoop
wget http://archive.cloudera.com/cdh5/cdh/5/hive-1.1.0-cdh5.16.2.tar.gz
tar -zvxf hive-1.1.0-cdh5.16.2.tar.gz -C app
cd app
ln -s hive-1.1.0-cdh5.16.2 hive #建立软连接
cd hive/conf
cp ~/app/hadoop/etc/hadoop/core-site.xml hive-site.xml
2.2修改conf中hive-site.xml
vi hive-site.xml #把之前hadoop中的配置需要删除掉
<property> <!--这个里面的data是hostname,每次不同,都要修改的-->
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://data:3306/hive?createDatabaseIfNotExist=true&useSSL=false</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<!--mysql在创建的用户hive-->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
</property>
<!--mysql在创建的用户hive密码-->
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>000000</value>
</property>
<!--在hive shell界面可以看到当前使用的数据库-->
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
<!--在查询结果中会显示表名.字段,方面查看-->
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
2.3配置lib
cd ../
cd lib
rz 回车 #上传mysql-connector-java-5.1.47.jar
cd ../../
vi .bashrc
export HADOOP_HOME=/home/hadoop/app/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HIVE_HOME=/home/hadoop/app/hive
export PATH=$PATH:$HIVE_HOME/bin:$HIVE_HOME/sbin
source .bashrc
which hive
3.启动
#首先启动hadoop
app/hadoop/sbin/start-all.sh
hive #启动hive
4.安装过程中问题
java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused
检查发现Hadoop中的nn和dn没有启动,导致hive没有启动起来,所以进行查资料,将Hadoop中的进程都启动起来,再次启动Hive,显示成功了
其中Hadoop:
NN
DN
SNN
NM
RM
5.Hive日志信息
默认的修改日志文件在/hive/conf/hive-log4j/properties中
默认的位置:/hive/conf/hive-log4j/properties #需要自己去掉后缀.template,然后可以在里面修改Hive夫存放路径
${java.io.tmpdir}=/tmp
我自己的日志存放位置在/home/hadoop/tmp/(hostname)hadoop/hive.log #这个是觉得路径,其实就是在/tmp/主机名/hive.log
6.Hive查看属性信息
hive.root.logger
在本地操作hive -help
hive --hiveconf hive.root.logger=INFO,console #设置当前会话session生效,相当于局部修改
7.Hive中操作本地指令
HIve命令行窗口也可以执行本地命令:dfs XXX
dfs -rm -R 目录; #删除目录
dfs -ls /; #查看文件目录