1. Hive配置的元仓储使用MySQL
使用WinSCP将mysql的服务端、客户端以及驱动包拷贝进hdfs系统中:
1.1 安装mysql服务端:
将mysql-client***.rpm和mysql-server-***.rpm拷贝到/usr/local/下面,将connect驱动包拷贝到/usr/local/下面
执行命令(安装):rpm -i MySQL-server-5.5.31-***.rpm
1.2 启动mysql:
安装完成后启动mysql:
执行命令:mysqld_safe &
这样就能启动mysql;
1.3 安装mysql客户端:
类似于mysql服务端的安装:
执行命令(安装):rpm -i MySQL-client-5.5.31-***.rpm
1.4 修改mysql密码:
安装完成mysql的服务端和客户端之后,修改密码,修改密码是为了mysql的安全性,本身默认是没有密码的;
执行命令(修改密码):mysql_secure_installation
后面会跟一系列提示:
1)键入当前的登录密码:当前密码为空,所以直接回车;
2)确认是否需要设置密码:Y 确认;
3)是否删除匿名用户:n 暂时不删
4)是否关闭远程登录:n
不关闭,后面的例子还会需要远程登录,windows的mysql客户端登录到Linux的mysql中;
5)是否删除测试数据:n
6)是否重新加载表:Y
1.5 登录mysql:
执行命令(登录):mysql -uroot -padmin (-u后面跟用户,-p后面跟密码)
另外补充下删除mysql的命令以及验证是否还有mysql的命令:
1.6 删除mysql
查看hdfs系统中原本有没有安装mysql:
rpm -qa | grep mysql
显示mysql版本了,就表示已经安装了mysql,这样就先删除该mysql(这里是测试使用,正常情况下有了就不用删除)
删除mysql:
rpm -e mysql-libs-5.1***
删除mysql(强制删):
如果普通删除无法删除掉,系统提示有依赖,则可以使用强制删除的命令:
rpm -e mysql-libs-5.1*** --nodeps
2. 使用MySQL作为Hive的metastore
2.1 把mysql的jdbc驱动放置到hive的lib下:
执行命令(拷贝):cp mysql-connector-java-5.1.10.jar
/usr/local/hive/lib
或者执行命令(移动):mv mysql-connector-java-5.1.10.jar
/usr/local/hive/lib
2.2 修改hive-site.xml文件,修改内容如下:
文件路径:/usr/local/hive/conf/hive-site.xml
修改连接jdbc的URL、驱动配置,这里面有默认的derby数据的连接,现在修改为mysql的连接配置:
这样配置之后,mysql就作为hive的数据库,可以直接使用:
使用hive命令进入hive的命令操作模式,然后执行其他sql操作;
这个操作的变化在mysql数据库中可以完全体现出来:
1)使用mysql远程连接的设置进行校验:
在设置前默认windows下的mysql客户端是不允许远程连接的,所以在hive中对mysql进行授权操作:
首先进入mysql命令:退出hive(quit),然后在Linux中登录mysql:mysql -uroot
-padmin
在mysql>执行命令:grant all on hive.* to 'root'@'%' identified
by 'admin';
注释:授权所有的权限给hive中的数据库、表等,给root用户,这个root用identified来访问,密码是admin;
然后刷新权限:flush privileges;
这样就能远程访问了;