hive与mysql的安装与配置

hive与mysql的安装与配置

hive是基于hadoop的数据仓库工具,将一定格式的文件映射为一张张表,因此hive版本和hadoop版本有对应关系,一定要检查自己安装的hadoop和hive版本是否兼容;

hadoop版本:2.9.1,hive版本:3.2.1,jdk:1.8.0_162,mysql:8.0.20,jdbc:8.0.20

在链接内自己可以查看hive,hadoop关系(http://hive.apache.org/downloads.html)

##查看hive版本:启动hive时会出现hive-common-x.x.x.jar,xxx就是版本号

#1.安装hive:

\1. cd ~/下载

\2. sudo tar -xzvf ./apache-hive-1.2.1-bin.tar.gz -C /usr/loca # 解压到*/usr/local**中*

\3. cd /usr/local

\4. sudo mv apache-hive-1.2.1-bin hive #将文件夹名改为hive

\5. sudo chown -R hadoop:hadoop hive # 修改文件权限,注意修改为你的用户名和组

#2.配置环境变量:

先打开.bashrc隐藏文件,再复制export到首行并保存,最后使生效,注意查看路径与实际路径一致!!!

\1. gedit ~/.bashrc *#**或者**vim ~/.bashrc*

\2. export HIVE_HOME=/usr/local/hive

\3. export PATH=$PATH:$HIVE_HOME/bin

\4. source ~/.bashrc *#*使修改生效

#3.启用hive-default.xml,修改hive-site.xml****(****./hive/conf)

cd /usr/local/hive/conf

mv hive-default.xml.template hive-default.xml

vim hive-site.xml #hive-site.xml中的设置优先级高于hive-default.xml

\1. <?xml version="1.0" encoding="UTF-8" standalone="no"?>

\2. <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

\3. <configuration>

\4. <property>

\5. <name>javax.jdo.option.ConnectionURL</name>

\6. <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>#启动hive时会有useSSL=false或者true的提示。是安全验证的,具体可以百度一下。

在这里插入图片描述

\7. <description>JDBC connect string for a JDBC metastore</description>

\8. </property>

\9. <property>

\10. <name>javax.jdo.option.ConnectionDriverName</name>

\11. <value>com.mysql.cj.jdbc.Driver</value>

\12. <description>Driver class name for a JDBC metastore</description>

\13. </property>

\14. <property>

\15. <name>javax.jdo.option.ConnectionUserName</name>

\16. <value>hive</value>

\17. <description>username to use against metastore database</description>

\18. </property>

\19. <property>

\20. <name>javax.jdo.option.ConnectionPassword</name>

\21. <value>123456</value>

\22. <description>password to use against metastore database</description>

\23. </property>

\24. </configuration>

看描述内容,设置了mysql地址,driver,数据库user,数据库passwd,可以根据情况自行修改哦,必须与后面mysql中创建的一致,否则连不上。

#4.安装msql:

\1. sudo apt-get update *#*更新软件源

\2. sudo apt-get install mysql-server #安装mysql

默认是启动的,可以通下面netstat -tap|grep mysql 查看(下面给出开启,关闭,重启命令)

\1. sudo netstat -tap | grep mysql #mysql节点处于LISTEN**状态表示启动成功

\2. sudo service mysql start *#*开启

\3. sudo service mysql stop *#*关闭

\4. sudo service mysql restart *#*重启

注意:我安装时没有提示输入root账户与密码,默认是空的。

sudo mysql -u root -p #密码按Enter即可进入mysql shell,空格也可以,普通用户一定sudo

#5.下载安装mysql jdbc,下载地址![图形用户界面, 文本, 应用程序 描述已自动生成](file:///C:/Users/顾念思成/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png选择系统,系统版本,自动出现最新的安装包,注意下载的是deb格式的,可以使用cpkg命令安装

\1. cd ~/下载 *#*切换到你的文件所在目录下

\2. sudo apt install ./mysql-connector-java_8.0.20-1ubuntu20.04_all.deb

\3. sudo dpkg -i mysql-connector-java_8.0.20-1ubuntu20.04_all.deb *#*我用的是这个命令

\4. cp /usr/share/java/mysql-connector-java-8.0.20.jar /usr/local/hive/lib #jar包拷贝到/hive/lib**目录下

注意,你可能不知道安装到哪里了,别急,在/usr/share/java/,(验证路径的方法:打开deb文件,提取文件,看到.tar.xz文件,用xz -d 解压,tar -xvf 解包,出来的文件目录路径就是在系统中的路径,你可以cd试试。

#6.创建mysql hive用户和hive库
mysql -u root -p #登陆shell界面,请先确认已经启动

\1. create user '用户名'@'localhost' identified by '密码'; 创建hive用户,密码是hive,必须与hive-site.xml配置的user,password相同

\2. grant all on *.* to 'hive'@'localhost' ; 将所有数据库的所有表的所有权限赋给**hive

\3. flush privileges; 刷新mysql系统权限关系表

可以查看是否添加成功。

Select user from mysql.user;

#7.Everything is ok,let’s test:

启动hadoop:start-dfs.sh or start-all.sh

启动hive:hive

创建表,create table test(id int,name string);

到mysql中查看保存在元数据库的TBLS表中,use hive;

select * from TBLS;

如果有刚刚建的表名,则配置成功;

备注:1.启动hive时如果出现Hive metastore database is not initialized的错误,则使用命令初始化:

schematool -dbType mysql -initSchema

**2.jdbc 8.0.20 driver class name 更改:com.mysql.cj.jdbc.Driver

atabase is not initialized的错误,则使用命令初始化:***

schematool -dbType mysql -initSchema

2.jdbc 8.0.20 driver class name 更改:com.mysql.cj.jdbc.Driver*

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值