linux cpu占用率如何看
296
2022-11-17
大数据Hadoop之——部署hadoop+hive环境(window10)
一、安装JDK8
连接如下:java -version
二、Hadoop安装(window10环境)
1)下载Hadoop3.1.3
下载地址:https://archive.apache.org/dist/hadoop/common/hadoop-3.1.3/hadoop-3.1.3.tar.gz 2)Hadoop配置环境变量 HADOOP_HOME
验证
$ hadoop --version
3)在hadoop解压目录下创建相关目录
创建data和tmp目录
然后在data文件夹下面再创建namenode和datanode目录
4)修改Hadoop配置文件
配置文件目录:$HADOOP_HOME\etc\hadoop
1、core-site.xml文件:添加以下配置
2、hdfs-site.xml文件:添加以下配置,路径改成自己的安装路径
3、mapred-site.xml文件:添加以下配置
4、yarn-site.xml文件:添加以下配置
5)格式化节点
$ hdfs namenode -format
6)替换文件
1、替换bin目录下文件(winutils)
打开winutils文件,把里面的bin文件复制到hadoop的安装路径,替换掉原来的bin文件
下载:apache-hadoop-3.1.0-winutils也可以去GitHub上下载其它对应版本
当然如果自己有时间也有兴趣的话,可以自己去编译
2、按照路径找到图中该文件
7)运行
【温馨提示】回到hadoop安装bin目录下,右击以管理员的身份运行start-all.cmd文件,要不然会报权限问题
出现下面四个窗口就是 成功了,注意每个窗口标题的后面的名称,比如yarn nodemanager,如果没有出现则是失败
8)验证
hdfs web 地址:web 地址:3.1.2版本下载地址:hadoop fs -mkdir /tmp $ hadoop fs -mkdir /user/ $ hadoop fs -mkdir /user/hive/ $ hadoop fs -mkdir /user/hive/warehouse $ hadoop fs -chmod g+w /tmp $ hadoop fs -chmod g+w /user/hive/warehouse
5)安装mysql8.x
1、下载mysql
官网下载:切换到mysql bin目录下执行 # cd D:\software\window-hadoop-hive\mysql\mysql-8.0.28-winx64\bin # d: $ mysqld --initialize --console
4、安装mysql服务
$ mysqld --install mysql
6、通过命令启动服务
$ net start mysql
7、通过mysql客户端登录验证并修改root密码
$ mysql -uroot -p #输入上面初始化的密码
8、重置mysql root密码(命令行都要以管理员运行 )
停止mysql服务 $ net stop mysql 启动MySQL服务的时候跳过权限表认证
$ mysqld --console --skip-grant-tables --shared-memory
在新开的命令行中执行mysql 【温馨提示】由于上面的命令行被mysql的服务给占用,我们得重新开启一个新的命令行
$ mysql
将root用户的密码清空 $ update user set authentication_string = '' where user='root' ; quit 退出,然后在之前的命令行将我们开启的mysql服务停止掉(Ctrl+C或者关闭命令行),然后执行net start mysql 重新启动mysql服务
$ net start mysql
在我们之后开启的命令行中输入mysql -uroot -p 然后按enter键,输入密码继续按enter键(这里密码已经被清空)
$ mysql -uroot -p
修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; FLUSH PRIVILEGES;
【问题】如果mysql工具出现错误:
Authentication plugin 'caching_sha2_password' cannot be loaded
【原因】
很多用户在使用Navicat Premium 12连接MySQL数据库时会出现Authentication plugin 'caching_sha2_password' cannot be loaded的错误。 出现这个原因是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password, 解决问题方法有两种,一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password.
【解决】
# 管理员权限运行命令 ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456'; FLUSH PRIVILEGES;
6)修改Hive 配置文件
配置文件目录D:\software\window-hadoop-hive\hive\apache-hive-3.1.2-bin\conf有4个默认的配置文件模板拷贝成新的文件名
hive-default.xml.template -----> hive-site.xmlhive-env.sh.template -----> hive-env.shhive-exec-log4j.properties.template -----> hive-exec-log4j2.propertieshive-log4j.properties.template -----> hive-log4j2.properties
1、hive-site.xml 文件:配置文件内容如下
2、hive-env.sh 文件:配置文件内容如下
# Set HADOOP_HOME to point to a specific hadoop install directory export HADOOP_HOME=D:\software\window-hadoop-hive\hadoop\hadoop-3.1.3 # Hive Configuration Directory can be controlled by: export HIVE_CONF_DIR=D:\software\window-hadoop-hive\hive\apache-hive-3.1.2-bin\conf # Folder containing extra libraries required for hive compilation/execution can be controlled by: export HIVE_AUX_JARS_PATH=D:\software\window-hadoop-hive\hive\apache-hive-3.1.2-bin\lib
7)替换bin目录
【温馨提示】2.2.0版本之后就不提供cmd相关文件了,所以得去下载apache-hive-2.2.0-src.tar.gz,把这个版本里的bin目录文件替换到hive安装bin目录下。 下载:apache-hive-2.2.0-src.tar.gz
8)下载mysql-connector-java-*.jar
这里将mysql-connector-java-*.jar拷贝到安装目录lib下
下载地址:初始化依赖的数据库hive,注意编码格式:latin1
10)Hive 初始化数据
$ hive --service schematool -dbType mysql -initSchema
11)启动Hive 服务
1、首先启动Hadoop
执行指令:stall-all.cmd,上面其实已经验证过了,启动是没问题的
2、再启动Hive 服务
$ hive --service metastore
3、验证
另起一个cmd窗口验证
$ hive create databases test; show databases;
12)配置beeline
1、添加beeline配置
【温馨提示】hive命令会慢慢不再使用了,以后就用beeline,如果对hive不了解的,可以看我之前的文章:大数据Hadoop之——数据仓库Hive
在Hive服务安装目录的%HIVE_HOME%\conf\hive-site.xml配置文件中添加以下配置:
在Hadoop服务安装目录的%HADOOP_HOME%\etc\hadoop\core-site.xml配置文件中添加以下配置:
【注意】hadoop.proxyuser.29209.hosts和hadoop.proxyuser.29209.hosts,其中29209是连接beeline的用户,将29209替换成自己的用户名即可,其实这里的用户就是我本机的用户,也是上面创建文件夹的用户,这个用户是什么不重要,它就是个超级代理。
2、启动hiveserver2
启动hiveserver2 之前必须重启hive服务
$ hive --service metastore $ hive --service hiveserver2
【问题】java.lang.NoClassDefFoundError: org/apache/tez/dag/api/SessionNotRunning【解决】在hive 配置文件hive-site.xml添加如下配置:
重启hiveserver2
$ hive --service metastore $ hive --service hiveserver2
HiveServer2 web:beeline
【问题一】Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hive/jdbc/JdbcUriParseException【解决】Hadoop缺少hive-jdbc-***.jar,将Hive安装目录下的lib文件夹中的hive-jdbc-3.1.2.jar包复制到Hadoop安装目录\share\hadoop\common\lib下
【问题二】Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/hive/conf/HiveConf【解决】Hive安装目录下,将hive-common-3.1.2.jar复制到Hadoop安装目录的\share\hadoop\common\lib下
$ beeline !connect jdbc:hive2://localhost:10001 29209 # 下面这句跟上面等价,都可以登录 $ %HIVE_HOME%\bin\beeline.cmd -u jdbc:hive2://localhost:10001 -n 29209
【问题三】Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hive/service/cli/HiveSQLException。【解决】把Hive安装目录下,将hive-service-3.1.2.jar复制到Hadoop安装目录的\share\hadoop\common\lib下。
再重启登录
$ hive --service metastore $ hive --service hiveserver2 $ %HIVE_HOME%\bin\beeline.cmd -u jdbc:hive2://localhost:10001 -n 29209
正常登录,一切OK,更多关于大数据的知识,请耐心等待~
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~