java大数据hadoop2.9.2 Linux安装mariadb和hive
一、安装mariadb
版本centos7
1、检查Linux服务器是否已安装mariadb
yum list installed mariadb*
2、如果安装了,想要卸载
yum remove mariadb
rm -rf /etc/my.cnf
rm -rf /var/lib/mysql
才能完全删除
3、安装mariadb
在线网络安装
yum install -y mariadb-server
开启服务
systemctl start mariadb.service
输入下方命令,进入数据库内部
mysql

给用户权限,方便后续使用navicat等工具远程登录
show databases;
use mysql;
grant all on *.* to 'root'@'%' identified by '123456';
select user,host,password from user;
二、安装Hive
1、上传hive压缩包到Linux系统解压
tar -zcvf apache-hive-3.1.1-bin.tar.gz
把解压缩的文件复制到/usr/local/hive
2、修改配置文件
(1)修改hive-env.sh
cd /usr/local/hive/conf
cp ./hive-env.sh.template . /hive-env.sh
编辑hive-env.sh
添加下方两行
HADOOP_HOME=/usr/local/hadoop
export HADOOP_HOME

(2)修改hive-site.xml
hive-site.xml文件
编辑指定hive元数据要保存的关系数据库的连接信息
cd /usr/local/hive/conf
cp ./hive-default.xml.template ./hive-site.xml
编辑hive-site.xml
在hive-site.xml文件修改部分节点配置
<configuration><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://ip:3306/hive?createDatabaseIfNotExist=true</value><description>JDBC connect string for a JDBC metastore</description></property><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.jdbc.Driver</value><description>Driver class name for a JDBC metastore</description></property><property><name>javax.jdo.option.ConnectionUserName</name><value>root</value><description>username to use against metastore database</description></property><property><name>javax.jdo.option.ConnectionPassword</name><value>123456</value><description>password to use against metastore database</description></property>
</configuration>
3、启动测试
vi /etc/profile
添加下方全局配置
HIVE_HOME=/usr/local/hive
export HIVE_HOME
PATH=$HIVE_HOME/bin:$PATH
export PATH
navicat连接mysql创建一个库,即前面安装的mariadb中新增hive数据库
schematool -dbType mysql -initSchema//初始化表结构
命令有可能报错,需要下载mysql驱动
https://downloads.mysql.com/archives/get/p/3/file/mysql-connector-java-5.1.47.tar.gz
tar -zxvf mysql-connector-java-5.1.47.tar.gz
解压缩后,把里面的jar包mysql-connector-java-5.1.47.jar文件拷贝到
/usr/local/hive/lib
start-all.sh启动Hadoop,然后再执行初始化表结构的命令
进入hive内部,输入hive命令,有可能报错,需要修改配置文件hive-site.xml
vi /usr/local/hive/conf/hive-site.xml
修改如下几个节点
将hive-site.xml文件中的${system:java.io.tmpdir}替换为hive的临时目录,例如我替换为/home/lch/software/Hive/apache-hive-2.1.1-bin/tmp/,该目录(tmp)如果不存在则要自己手工创建,并且赋予读写权限。
<property><name>Hive.exec.local.scratchdir</name><value>/usr/local/hive/tmp/${user.name}</value><description>Local scratch space for Hive jobs</description></property><property><name>hive.downloaded.resources.dir</name><value>/usr/local/hive/tmp/${hive.session.id}_resources</value><description>Temporary local directory for added resources in the remote file system.</description></property><property><name>hive.server2.logging.operation.log.location</name><value>/usr/local/hive/tmp/operation_logs</value><description>Top level directory where operation logs are stored if logging functionality is enabled</description></property>
后面输入hive即可进入

4、hive操作
创建数据库
create database test;
创建表
use test;create table t_student(id int,name string,sex string,age int
)
row format delimited fields terminated by ',';
后面可在hadoop的文件系统web端查看到创建的库和表

在Linux的任意一个目录新增一个文件,my_student.txt
cd /root/app/
vi ./my_student.txt
1,zhangsan,man,20
2,lisi,woman,21
3,wangwu,man,34
4,xiaofan,woman,24
文件上传到hadoop中的hive目录
hdfs dfs -put ./my_student.txt /user/hive/warehouse/test.db/t_student
再去hive里面通过sql查询语句
select * from t_student;
5、Java操作
创建maven项目,依赖如下
<!-- https://mvnrepository.com/artifact/org.apache.hive/hive-jdbc --><dependency><groupId>org.apache.hive</groupId><artifactId>hive-jdbc</artifactId><version>2.3.4</version></dependency>
操作代码
public class TestHive {public static void main(String[] args) throws Exception{test();}public static void test()throws Exception{Class.forName("org.apache.hive.jdbc.HiveDriver");Connection conn = DriverManager.getConnection("jdbc:hive2://192.168.208.133:10000/test", "root", "123456");Statement stmt = conn.createStatement();String sql = "select * from t_student";ResultSet rs = stmt.executeQuery(sql);while(rs.next()) {System.out.println(rs.getInt(1));System.out.println(rs.getString(2));System.out.println(rs.getString(3));System.out.println(rs.getInt(4));}}
}
需要hive开启远程
(1)配置远程
vi /usr/local/hadoop/etc/hadoop/core-site.xml
添加两个节点
<property><name>hadoop.proxyuser.root.hosts</name><value>*</value></property><property><name>hadoop.proxyuser.root.groups</name><value>*</value></property>
Linux运行命令
hiveserver2
启动hiveserver2这个命令需要等几分钟才能完全启动,后面才能运行Java代码连接hive客户端查询里面的表数据
相关文章:
java大数据hadoop2.9.2 Linux安装mariadb和hive
一、安装mariadb 版本centos7 1、检查Linux服务器是否已安装mariadb yum list installed mariadb* 2、如果安装了,想要卸载 yum remove mariadb rm -rf /etc/my.cnf rm -rf /var/lib/mysql 才能完全删除 3、安装mariadb 在线网络安装 yum install -y mari…...
Docker部署微服务问题及解决
👨🎓作者简介:一位大四、研0学生,正在努力准备大四暑假的实习 🌌上期文章:Docker容器命令案例:Nginx容器修改,Redis容器持久化 📚订阅专栏:Docker 希望文章…...
Android: alarm定时很短时,比如500ms,测试执行mPowerManager.forceSuspend()后,系统不会suspend
参考文档: https://blog.csdn.net/weixin_35691921/article/details/124961404 Android: alarm定时很短时,比如500ms,然后执行mPowerManager.forceSuspend()后,系统不会suspend,原因分析: static int ala…...
一个简单好用的C语言单元测试框架-Unity
Unity简介: Unity是一个用于C语言的轻量级单元测试框架。它由Throw The Switch团队开发,旨在简化嵌入式系统的单元测试。单元测试中单元的含义,单元就是人为规定的最小的被测功能模块,如C语言中单元指一个函数,Java里…...
ubuntu系统 vscode 配置c/c++调试环境
文章目录 1.安装插件2.目录结构3.cmake tools配置 1.安装插件 c/c插件 cmake cmake tools插件 2.目录结构 . ├── build ├── CMakeLists.txt ├── demo │ └── main.cpp ├── image.png ├── src │ ├── add.cpp │ └── add.hpp └── vsdebug.…...
算法练习-A+B/财务管理/实现四舍五入/牛牛的菱形字符(题目链接+题解打卡)
难度参考 难度:简单 分类:熟悉OJ与IDE的操作 难度与分类由我所参与的培训课程提供,但需要注意的是,难度与分类仅供参考。以下内容均为个人笔记,旨在督促自己认真学习。 题目 A B1. A B - AcWing题库财务管理1004:财…...
XSS语句
XSS测试语句 在测试网站是否存在XSS漏洞时,应该输入一些标签如<,>输入后查看网页源代码是否过滤标签,如果没过滤,很大可能存在XSS漏洞。 <h5>1</h5> <span>1</span> <SCRIPT>alert(document.cookie)&l…...
AD导出BOM表 导出PDF
1.Simple BOM: 这种模式下,最好在pcb界面,这样的导出的文件名字是工程名字,要是在原理图界面导出,会以原理图的名字命名表格。 直接在菜单栏 报告->Simple BOM 即可导出物料清单,默认导出 comment pattern qu…...
linux 的nobody是什么用户? 对安全有没有影响?
目 录 一、前言:nobody是不是可疑用户? 二、Linux系统中的nobody用户? 二、有nobody用户存在,安全吗? 一、前言:nobody是不是可疑用户? 在前面一篇文章“Linux安全问题,如何查看哪…...
2024年华数杯国际数学建模B 光伏电(Problem B: Photovoltaic Power)完整思路以及源代码分享
背景 中国的电力构成包括传统的能源发电(如煤炭、石油和天然气)、可再生能源发电 (如水力发电、风能、太阳能和核能)和其他形式的电力。这些发电方式在满足中 国巨大的电力需求方面发挥着至关重要的作用。根据最新数据…...
在 Spring MVC 中,用于接收前端传递的参数的注解有以下几种
目录 RequestParam: PathVariable: RequestBody: RequestHeader: CookieValue: RequestParam: 用于获取请求参数的值。可以指定参数名称和默认值。示例代码: GetMapping("/users&q…...
K8s常用命令
查看集群各节点的状态 部署应用 删除一个service服务 查询service服务列表 kubectl get services 查看网络资源 kubectl get svc pod 创建一个namespace kubectl create namaspace namespace名称 创建一个pod 通常不需要创建pod 查看pod kubectl get pods kube…...
MySQL的基本操作
目录 序言 一、SQL语句(Structured Query Language) 1.1 SQL简介 1.2 SQL语句的分类 1.3 SQL语句的书写规范 二、数据库操作 2.1 查看库 2.2 创建库 2.3 切换库 2.4 删除库 三、MySQL字符集 3.1 MySQL字符集的分类 3.2 UTF8和UTF8MB4的区别…...
【b站咸虾米】chapter4_vue组件_新课uniapp零基础入门到项目打包(微信小程序/H5/vue/安卓apk)全掌握
课程地址:【新课uniapp零基础入门到项目打包(微信小程序/H5/vue/安卓apk)全掌握】 https://www.bilibili.com/video/BV1mT411K7nW/?p12&share_sourcecopy_web&vd_sourceb1cb921b73fe3808550eaf2224d1c155 四、vue组件 uni-app官网 …...
Java网络编程——UDP通信原理
一、TCP和UDP概述 传输层通常以TCP和UDP协议来控制端点与端点的通信 TCPUDP协议名称传输控制协议用户数据包协议是否连接面向连接的协议。数据必须要建立连接无连接的协议,每个数据报中都给出完整的地址信息,因此不需要事先建立发送方和接受方的连接是…...
Spring | Srping AOP (AOP简介、动态代理、基于“代理类”的AOP实现)
目录: 1.Spring AOP简介1.1 AOP简介1.2 AOP术语 2.动态代理2.1 JDK动态代理2.2 CGLIB代理 3.基于“代理类”的AOP实现3.1 Spring的通知类型3.2 ProxyFactoryBean ( 可通知.xml配置文件完成aop功能 ) 1.Spring AOP简介 1.1 AOP简介 Spring的AOP模块,是Spring框架体系…...
StarRocks 生成列:百倍提速半结构化数据分析
半结构化分析主要是指对 MAP,STRUCT,JSON,ARRAY 等复杂数据类型的查询分析。这些数据类型表达能力强,因此被广泛应用到 OLAP 分析的各种场景中,但由于其实现的复杂性,对这些复杂类型分析将会比一般简单类型…...
数据结构---数组
一、基本概念 1. 存放一组相同数据类型的集合 2.在内存中,分配连续的空间,数组创建时要指定大小 3. 定义 数据类型 [] 数组名 // 1.定义一个数组,里面的元素包含10, 20, 24, 17, 35, 58, 45, 74 int arr[] {10, 20, 24, 17, 35, 58, 45, 74}; 4. 获取数组的长度 int lengt…...
知识笔记(八十四)———链式语句中fetchSql和force和bind用法
fetchSql: fetchSql用于直接返回SQL而不是执行查询,适用于任何的CURD操作方法。 例如: $result Db::table(think_user)->fetchSql(true)->find(1);输出result结果为: SELECT * FROM think_user where id 1 force&#…...
为什么要用B+树
B树的优势 支持范围查询:B树在进行范围查询时,只需要从根节点一直遍历到叶子节点,因为数据都存储在叶子节点上,而且叶子节点之间有指针连接,可以很方便的进行范围查询 支持排序:B树的叶子节点按照关键字顺…...
我自己写的论文为什么被判 AI 率 60%?这款工具帮我降到 5% 通过 985 知网严查
我自己写的论文为什么被判 AI 率 60%?这款工具帮我降到 5% 通过 985 知网严查 我是 211 直博生、毕业论文 100% 自己手写、没用过任何 AI 工具。送学校知网 AIGC 检测——AI 率 60%,学校卡 15% 红线。我整个人懵了——明明没用 AI 写、为什么算法判我 AI…...
OBS遮罩插件深度指南:15种特效解决直播画面优化的5大痛点
OBS遮罩插件深度指南:15种特效解决直播画面优化的5大痛点 【免费下载链接】obs-advanced-masks Advanced Masking Plugin for OBS 项目地址: https://gitcode.com/gh_mirrors/ob/obs-advanced-masks OBS高级遮罩插件(OBS Advanced Masksÿ…...
【LLM推理加速】Lookahead:无损加速新范式,如何用Trie树与多分支策略突破IO瓶颈
1. 为什么我们需要无损推理加速? 大语言模型在实际应用中面临的最大痛点之一就是推理速度慢。想象一下,当你向AI助手提问时,每次等待回复都要花上好几秒,这种体验有多糟糕。传统的加速方法比如量化(把模型参数从16位压…...
终极游戏MOD加载指南:5分钟学会使用ASI加载器提升游戏体验
终极游戏MOD加载指南:5分钟学会使用ASI加载器提升游戏体验 【免费下载链接】Ultimate-ASI-Loader The Ultimate ASI Loader is a proxy DLL that loads custom .asi libraries into any game process. 项目地址: https://gitcode.com/gh_mirrors/ul/Ultimate-ASI-…...
vue-pdf踩坑实录:从‘Cannot read properties of undefined’到完美预览的避坑指南
Vue-PDF实战避坑指南:从版本冲突到性能优化的全链路解决方案 1. 当控制台抛出"undefined catch"错误时 那个令人窒息的红色报错框突然出现在控制台——"Cannot read properties of undefined (reading catch)"。作为经历过三次类似场景的老手&a…...
手持式身份核验测温一体机:从防疫工具到智能终端的深度解析与应用
1. 项目概述:一个被低估的“防疫哨兵”你可能在商场、写字楼、医院或者社区的入口见过它——一个看起来像固定电话机,或者一个带屏幕的扫码盒子,旁边还伸出一个测温探头。这就是我们今天要聊的主角:手持式身份核验测温一体机。很多…...
CSL编辑器技术深度解析:基于HTML5的学术引用样式编辑全栈指南
CSL编辑器技术深度解析:基于HTML5的学术引用样式编辑全栈指南 【免费下载链接】csl-editor cslEditorLib - A HTML 5 library for searching and editing CSL styles 项目地址: https://gitcode.com/gh_mirrors/csl/csl-editor CSL编辑器是一个基于HTML5技术…...
无王无帝定乾坤,来自田间第一人 海棠藏圣定山河
无王无帝定乾坤,来自田间第一人。 自古山河安定,世人皆归功于帝王镇守、朝堂统御, 仿佛万里乾坤唯有王权可镇、唯有霸业可安。 然则山河气运自有天道,世间安定自有公理, 强权只能维系一时疆域,正道方能稳固…...
别再只用ARIMA了!用Facebook Prophet快速搞定业务时间序列预测(附Python实战代码)
用Facebook Prophet三行代码完成高精度业务预测:电商场景实战指南 当市场部门的同事又在周五下午5点发来"下周销售预测急用"的邮件时,你是否还在为ARIMA模型的参数调优焦头烂额?时间序列预测本应是数据科学中最具商业价值的技能之一…...
终极英雄联盟辅助工具League Akari:3分钟快速上手指南
终极英雄联盟辅助工具League Akari:3分钟快速上手指南 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power 🚀. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit 你是否厌倦了在英雄联盟客户…...
