1、软件环境
RHEL6 | 角色 | jdk |
hadoop-2.8.1.tar.gz | ||
apache-maven-3.3.9 | mysql-5.1 | |
xx.xx.xx.xx ip地址 | NN | hadoop01 |
xx.xx.xx.xx ip地址 | DN | hadoop02 |
xx.xx.xx.xx ip地址 | DN | hadoop03 |
xx.xx.xx.xx ip地址 | DN | hadoop04 |
xx.xx.xx.xx ip地址 | DN | hadoop05 |
本次涉及伪分布式部署只是要主机hadoop01,软件安装参考伪分布式部署终极篇
编译hive之前,我们需要阅读编译hive的readme.txt 以便我们下在相应的软件版本
Requirements
============
- Java 1.6, 1.7 ---jdk只能使用1.6或者1.7 不能使用1.8
- Hadoop 1.x, 2.x
2、安装jdk
mkdir /usr/java && cd /usr/java/ tar -zxvf /tmp/server-jre-7u80-linux-x64.tar.gzchown -R root:root /usr/java/jdk1.7.0_80/ echo 'export JAVA_HOME=/usr/java/jdk1.7.0_80'>>/etc/profilesource /etc/profile3、安装maven
cd /usr/local/unzip /tmp/apache-maven-3.3.9-bin.zipchown root: /usr/local/apache-maven-3.3.9 -Recho 'export MAVEN_HOME=/usr/local/apache-maven-3.3.9'>>/etc/profileecho 'export MAVEN_OPTS="-Xms256m -Xmx512m"'>>/etc/profileecho 'export PATH=$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATH'>>/etc/profilesource /etc/profile--JDK 和maven部署可参考---
4、安装mysql
yum -y install mysql-server mysql/etc/init.d/mysqld startchkconfig mysqld onmysqladmin -u root password 123456mysql -uroot -p123456use mysql;GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'v123456' WITH GRANT OPTION;GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY '123456' WITH GRANT OPTION;GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;update user set password=password('123456') where user='root';delete from user where not (user='root') ;delete from user where user='root' and password=''; drop database test;DROP USER ''@'%';flush privileges;5、下载hive源码包:
# # 根据cdh版本选择对应hive软件包:# hive-1.1.0-cdh5.7.1-src.tar.gz# 解压后使用maven命令编译成安装包6、编译:
cd /tmp/tar -xf hive-1.1.0-cdh5.7.1-src.tar.gzcd /tmp/hive-1.1.0-cdh5.7.1mvn clean package -DskipTests -Phadoop-2 -Pdist# 编译生成的包在以下位置:# packaging/target/apache-hive-1.1.0-cdh5.7.1-bin.tar.gz7、安装编译生成的Hive包,然后测试
cd /usr/local/tar -xf /tmp/apache-hive-1.1.0-cdh5.7.1-bin.tar.gzln -s apache-hive-1.1.0-cdh5.7.1-bin hivechown -R hadoop:hadoop apache-hive-1.1.0-cdh5.7.1-bin chown -R hadoop:hadoop hive echo 'export HIVE_HOME=/usr/local/hive'>>/etc/profileecho 'export PATH=$HIVE_HOME/bin:$PATH'>>/etc/profile8、更改环境变量
su - hadoopcd /usr/local/hivecd conf1、hive-env.sh
cp hive-env.sh.template hive-env.sh&&vi hive-env.shHADOOP_HOME=/usr/local/hadoop2、hive-site.xml
vi hive-site.xml<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost:3306/vincent_hive?createDatabaseIfNotExist=true</value> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>vincent</value> </property></configuration>9、拷贝mysql驱动包到$HIVE_HOME/lib
# 上方的hive-site.xml使用了java的mysql驱动包# 需要将这个包上传到hive的lib目录之下# 解压 mysql-connector-java-5.1.45.zip 对应的文件到目录即可cd /tmpunzip mysql-connector-java-5.1.45.zipcd mysql-connector-java-5.1.45cp mysql-connector-java-5.1.45-bin.jar /usr/local/hive/lib/未拷贝有相关报错:
The specified datastore driver ("com.mysql.jdbc.Driver") was not found in the CLASSPATH. Please check your CLASSPATH specification, and the name of the driver.