hadoop2.6.0上安装哪个mysql版本

如题所述

1.到http://www.apache.org/dyn/closer.cgi/hive/ 上下载hive0.14.0的版本
2.使用cp命令拷贝到Linux主机的hadoop用户下

我这里使用的hadoop用户为qhg
3.使用tar -zxvf 命令进行解压,解压完后由于名字太长,使用mv进行重命名

4.配置Hive的环境变量
在.bash_profile文件中添加HIVE_HOME,然后在PATH中加入HIVE_HOME/bin目录

然后source .bash_profile,使环境变量生效

5.修改hive的配置文件
a.在hive/conf/下有几个模板文件

b.复制hive-env.sh.template 文件并命名为hive-env.sh
命令为cp hive-env.sh.template hive-env.sh

c.hive-env.sh 是hive的环境配置问价,需要修改hadoop的目录和hive的conf目录等
使用vi 打开hive-env.sh文件

wq保存退出。
d.复制文件hive-default.xml.template并重命名为hive-site.xml
命令:cp hive-default.xml.template hive-site.xml
删除<configuration> </configuration>之间的内容,(在vi命令模式下输入:21,3395d 回车)
将以下内容拷过去
关于元数据库的设置
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
这项配置已经被废弃,如果不是local模式则指定下面的信息,不指定则默认为local模式<property>
<name>hive.metastore.uris</name>
<value>thrift://hadoopmaster:9083</value>
</property>

1 <property>
2 <name>hive.metastore.local</name>
3 <value>true</value>
4 </property>
5 <property>
6 <name>javax.jdo.option.ConnectionURL</name>
7 <value>jdbc:mysql://localhost:3306/hive?characterEncoding=UTF-8</value>
8 </property>
9 <property>
10 <name>javax.jdo.option.ConnectionDriverName</name>
11 <value>com.mysql.jdbc.Driver</value>
12 </property>
13 <property>
14 <name>javax.jdo.option.ConnectionUserName</name>
15 <value>root</value>
16 </property>
17 <property>
18 <name>javax.jdo.option.ConnectionPassword</name>
19 <value>root</value>
20 </property>

其中jdbc:mysql://localhost:3306/hive?characterEncoding=UTF-8,localhost:3306/hive为MySQL服务器的地址和端口号
hive为MySQL中作为hive metastore的数据库,需要在后面装MySQL的时候进行创建。
6.使用MySQL作为hive的metastore
a.切换到root用户安装MySQL
yum install mysql / yum install mysql-server
b.启动MySQL服务
service mysqld start (可以使用service mysqld status查看MySQL服务是否正确启动)
c.将mysqld服务设置为开机自启动
chkconfig mysqld on
d.使用mysql_secure_installation 命令来设置mysql密码
运行该命令后,会提示是否更改mysql密码,这里输入Y。
然后输入新密码 root,再一次输入新密码root,接下来询问是否删除匿名用户,输入 n;
紧接着询问是否关闭 root的远程登录,输入 n;
询问是否删除mysql的测试数据库,输入 n ,然后询问是否重新刷新权限表,输入 Y。
e.为了使hive拥有远程登录和访问MySQL的权限,使用mysql -u用户名 -p密码
我在d过程中将root的密码设置为root了,所以执行的命令为 mysql -uroot -proot 回车进入MySQL shell

在mysql shell 中执行 grant all on hive.* to 'root'@'%' identified by 'root'; 命令
在这里,如果root的密码不是root则进行相应的修改

并在MySQL中创建名为hive的数据库,(数据库的名字由javax.jdo.option.ConnectionURL 的 value 中的hive指定)

f.切换到root用户,使用service mysqld restart重启MySQL服务

g.最后还需要安装jdbc的驱动,

利用rpm -qfl mysql-connector-java命令,查找mysql的JDBC驱动jar文件所在位置,
通常情况放在/usr/share/java/mysql-connector-java.jar,将其拷贝至 $HIVE_HOME/lib目录中,同时修改该文件的权限
7.启动hive,启动之前确保hadoop成功启动

输入hive 回车
进入hive的命令行模式后执行一条简单sql验证hive
例: show databases;
温馨提示:答案为网友推荐,仅供参考