Centos7安裝配置Hive

来源:https://www.cnblogs.com/yujie168/archive/2023/05/26/17433421.html
-Advertisement-
Play Games

Centos7安裝配置 # 一 、 安裝 安裝就不多做詳述,選擇好自己的鏡像設置好路徑即可 # 二 、配置 #### 2.1 網路配置 桌面右鍵進入 `cmd` 命令編輯視窗,在 Linux 中設置網路的相關配置都需要管理員許可權,需要先切換到 root 用戶。 ```markdown vim /et ...


Centos7安裝配置

一 、 安裝

安裝就不多做詳述,選擇好自己的鏡像設置好路徑即可

二 、配置

2.1 網路配置

桌面右鍵進入 cmd 命令編輯視窗,在 Linux 中設置網路的相關配置都需要管理員許可權,需要先切換到 root 用戶。

vim /etc/sysconfig/network-scripts/ifcfg-ens33 

配靜態 IP 地址的實例如下:

BOOTPROTO="static"
ONBOOT="yes"
IPADDR=192.168.164.132
NETMASK=255.255.255.0
GATEWAY=192.168.164.2
DNS1=8.8.8.8
DNS2=144.144.144.144

插入 IP 地址、掩碼和網關。可以在 VMware 平臺的菜單中通過"編輯->虛擬網路編輯器->VMnet8->NAT設置"

2.2 重啟網路服務

修改了 IP 設置必須要重啟網路服務或者重啟電腦才能生效

方式一:systemctl restart network

方式二:systemctl stop network

systemctl start network

2.3 驗證是否成功

重啟網路服務之後在命令編輯視窗輸入 ifconfig 會顯示出配置的 IP 地址

ping www.baidu.com 按Ctrl + Z 退出

永久關閉防火牆命令 systemctl disable firewalld.service

2.4 修改主機名以及IP映射

#修改主機名
vim /etc/hostname
#修改ip映射
vim /etc/hosts
#重啟

三 、 Python 3 安裝

在 Linux 系統中,一般自帶有 python2 編譯器

將下載的 Python 包解壓:

tar -zxvf Python-3.9.6.tgz
對包進行重命名
mv Python-3.9.6 python

配置 configure 文件,進入 Python 解壓目錄,執行 configure 命令。在執行命令之前需要安裝 gcc 工具的支持

#需要管理員許可權才能下載安裝
yum -y install gcc
#進入到python解壓目錄後執行
./configure

configure 命令執行後會在當前目錄生成 Makefile 文件,這個文件將在 make 解析時使用。

配置 SSL 證書, pip 工具在下載安裝時所使用的 SSL 支持與系統自帶的不一致,就會導致後續 pip 工具在使用時出現不能正常下載

查看 SSL 地址

openssl version -a
#記住
OPENSSLDIR: "/etc/pki/tls"
#修改 SSL 配置
vim Modules/Setup
#修改後的
SSL=/etc/pki/tls
_ssl _ssl.c \
        -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
        -L$(SSL)/lib -lssl -lcrypto

使用 make 工具編譯源代碼,執行 make 命令需要 openssl 和 openssl-devel 的支持

yum -y install openssl.x86_64  openssl-devel.x86_64

make install 命令用於安裝 make 編譯好的源代碼

make install

Python 3 編譯安裝完成後,預設的安裝目錄是在 /usr/local/bin 和 /usr/local/lib 目錄下

創建軟鏈接:將 Python 3 可執行文件同步到 /usr/bin 目錄中

ln -s /usr/local/bin/python3 /usr/bin/python3
ln -s /usr/local/bin/pip3 /usr/bin/pip3

pip3 升級命令 python3 -m pip install --upgrade pip

四 、安裝配置 JDK

4.1 解壓下載好的安裝包

tar -zxvf jdk-8u131-linux-x64.tar.gz
#重命名
mv jdk1.8.0_131 jdk

4.2 配置環境變數

linux 系統的環境變數分為兩種:全局變數和局部變數。profile 文件是全局變數配置文件,只有管理員用戶才能擁有對其文件的寫入許可權

vim /etc/profile
#添加java的環境變數
export JAVA_HOME=/home/eureka/software/jdk
export PATH=$PATH:$JAVA_HOME/bin
#刷新文件
source /etc/profile

4.3 驗證 JDK 是否安裝成功

輸入 java -version 如果出現Java 命令的詳情或者出現版本號即表示安裝成功

五 、安裝配置 Hadoop

5.1 解壓安裝

tar -zxvf hadoop-2.10.1.tar.gz

5.2 配置環境變數

vim /etc/profile
#插入內容
export HADOOP_HOME=/home/eureka/software/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
#使環境變數生效
source /etc/profile

5.3 驗證

輸入 hadoop 命令,如果出現 hadoop 命令相關的詳細信息,則表示安裝成功

5.4 配置 core-site.xml 文件

切換到 Hadoop 配置目錄,進入到 hadoop/etc/hadoop 目錄,編輯 core-sise.xml 文件

<configuration>
<!--指定HDFS存儲入口-->
<property>
        <name>fs.defaultFS</name>
        <value>hdfs://Eureka:9000</value>
    #自己的主機名
</property>

<!--指定hadoop臨時目錄-->
<property>
        <name>hadoop.tmp.dir</name>
        <value>/home/eureka/software/hadoop/tmp</value>
    #自己的hadoop安裝目錄
</property>

5.6 配置 hadoop-env.sh 文件

編輯 hadoop-env.sh 文件,修改 java_home 地址

export JAVA_HOME=/home/eureka/software/jdk
#自己JDK安裝目錄

5.7 配置 slaves 文件

如果是偽分佈有多個子機就配置上主機名即可

5.8 配置hdfs-site.xml 文件

hdfs-site.xml 文件是 Hadoop 2.0 以後版本的必配的文件之一,可以在裡面配置集群名字空間、訪問埠、URL地址、故障轉移等

<!--設備數據備份數量-->
<property>
	<name>dfs.replication</name>
	<value>3</value>
</property>

5.9 配置 mapred-site.xml 文件

Hadoop 包中沒有 mapred-site.xml文件,需要通過複製一個文件

cp mapred-site.xml.template mapred-site.xml

插入:

<!--配置mapreduce框架用yarn啟動-->
<property>
	<name>mapreduce.framework.name</name>
	<value>yarn</value>
</property>

5.10 配置 yarn-site.xml文件

<property>
	<name>yarn.resourcemanager.hostname</name>
	<value>Eureka</value>
</property>

	<!--NodeManager上運行的附屬服務。需配置成mapreduce_shuffle,才可運行MapReduce程式-->
<property>
	<name>yarn.nodemanager.aux-services</name>
	<value>mapreduce_shuffle</value>
</property>

格式化 NAMENODE 節點:hdfs namenode -format

5.11 設置免密

執行 ssh-keygen -t rsa -P '' 命令後將在 /root/.ssh/ 目錄下以 rsa 方式生成 id_rsa 的秘鑰

對虛擬機進行免密設置 ssh-copy-id Eureka(你的主機名)

5.12 啟動 Hadoop 集群

#啟動
start-all.sh
#停止
stop-all.sh
#查看進程
jps

六、MySQL 安裝配置

6.1 卸載 mariadb

mariadb 是 Linux 系統自帶的資料庫系統,跟 MySQL 衝突,所以在安裝之前一般先卸載這個沒用的資料庫

# 查看mariadb
rpm -qa | grep mariadb

#卸載 mariadb 命令
rpm -e mariadb-libs-5.5.68-1.el7.x86_64 --nodeps

# 再次確定是否卸載乾凈
rpm -qa | grep mariadb

6.2 解壓 MySQL 安裝包

#命令解壓
tar -xvf mysql-8.0.32-1.el7.x86_64.rpm-bundle.tar
#命令中的包要換成自己下載的版本號

6.3 安裝以及初始化

安裝順序: COMMON-->LIB-->LIB-COMPAT-->CLIENT-->SERVER

#安裝community-common
rpm -ivh mysql-community-common-8.0.32-1.el7.x86_64.rpm --nodeps --force
#安裝community-libs
rpm -ivh mysql-community-libs-8.0.32-1.el7.x86_64.rpm --nodeps --force
#安裝community-client
rpm -ivh mysql-community-client-8.0.32-1.el7.x86_64.rpm --nodeps --force
#安裝community-server
rpm -ivh mysql-community-server-8.0.32-1.el7.x86_64.rpm --nodeps --force

通過 rpm -qa | grep mysql 命令查看 mysql 的安裝包

6.3.1 初識化 MySQL

完成對 mysql 資料庫的初始化相關配置

mysqld --initialize
chown mysql:mysql /var/lib/mysql -R
systemctl start mysqld.service
#設置開機自啟動
systemctl enable mysqld

查看資料庫預設隨機密碼

cat /var/log/mysqld.log | grep password
#登錄mysql
mysql -uroot -p
#修改MySQL密碼
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
# 授權遠程登錄訪問
create user 'root'@'%' identified with mysql_native_password by 'root';
grant all privileges on *.* to 'root'@'%' with grant option;flush privileges;
# 修改密碼永不過期
alter user 'root'@'%' identified by 'Root_root123' password expire never;

七 、Hive 安裝以及配置

7.1 解壓安裝包

配置環境變數

#編輯文件
vim /etc/profile
#插入hive的路徑
export HIVE_HOME=/home/yj/software/hive
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin

7.2 配置 Hive

進入到 Hive 的 conf 目錄,把 hive-default.xml.template 複製一個副本,並重命名為 hive-site.xml

#複製副本
cp hive-default.xml.template hive-site.xml
#編輯文件
vim hive-site.xml
#配置hive-site.xml文件
<property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive_metadata?createDatabaseIfNotExist=true</value>
    <description>JDBC connect string for a JDBC metastore</description>
</property>
#指定mysql驅動
<name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.cj.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>root</value>
   <description>password to use against metastore database</description>
</property>
#設置hive作業的本地臨時空間,tmp地址需要自己創建
<property>
    <name>hive.exec.local.scratchdir</name>
    <value>/home/eureka/software/hive/tmp</value>
    <description>Local scratch space for Hive jobs</description>
</property>
#指定資源下載路徑
<property>
    <name>hive.downloaded.resources.dir</name>
    <value>/home/eureka/software/hive/tmp/${hive.session.id}_resources</value>
    <description>Temporary local directory for added resources in the remote file system.</description>
</property>
#指定存放在HDFS中的Hive真數據位置
/user/hive/warehouse
7.2.1 配置Hive相關配置文件

下載mysql-connector-java-xxx.zip後,並解壓它,在解壓後的文件里找到mysql-connector-java-xxx-bin.jar文件上傳到hive安裝目錄lib目錄下即可

mv mysql-connector-j-8.0.32.jar /home/eureka/software/hive/lib
#根據自己的安裝目錄決定
7.2.2 更新hadoop中的jline文件

從hive安裝目錄lib目錄下拷貝最新的jline文件到hadoop安裝目錄下/share/hadoop/yarn/lib目錄中

#根據自己的路徑
cp jline-2.12.jar /home/eureka/software/hadoop/share/hadoop/yarn/lib
7.2.3 配置hive的hosts
#編輯文件
vim /etc/hosts
#插入hive映射
IP地址 Hive

7.3 配置 hive-env.sh 文件

#複製副本
cp hive-env.sh.template hive-env.sh
# 編輯文件
vim hive-env.sh
##Java路徑
export JAVA_HOME=/home/eureka/software/jdk
# 設置Hadoop的安裝路徑
export HADOOP_HOME=/home/eureka/software/hadoop
#設置hive配置文件路徑
export HIVE_CONF_DIR=/home/eureka/software/hive/conf
#設置hive依賴包的路徑
export HIVE_AUX_JARS_PATH=/home/eureka/software/hive/lib

初始化資料庫:schematool -dbType mysql -initSchema


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • # 超輕量級 DynamicTableNameInnerInterceptor是mybatis-plug的一個攔截器插件,可以自己定義需要攔截的表單,然後對它進行加工,這時mybatis-plus就會把SQL代碼的表名加上你的這個裝飾。 # 封裝的思想 我們通常把mybatis做成一個包,公司其它同 ...
  • 用`markdown`寫文檔很方便,但是有個困擾的地方,就是標題的編號問題。 寫文檔的時候,經常會在中間插入新的標題和內容,所以手動管理編號的話,如果新的標題插在前面,則要調整後面所有的編號。 如果在文檔完成後再手動加上編號的話,不僅容易忘記, 而且有時候我們是在其他編輯器里編輯文檔再導出`mark ...
  • # 一、環境準備 Netty需要的運行環境很簡單,只有2個。 - JDK 1.8+ - Apache Maven 3.3.9+ # 二、Netty 客戶端/伺服器概覽 ![在這裡插入圖片描述](https://img-blog.csdnimg.cn/c49191e6ee6e448f8c525b450 ...
  • # 原因 當mysql資料庫單表大於1千萬以後,查詢的性能就不能保證了,我們必須考慮分庫,分表的方案了,還好,sharding-jdbc可以很優雅的與springboot對接,完成對mysql的分庫和分表。 # 依賴整理 > 為了不影響其它小容量的表,所有添加了動態數據源,只對需要分庫分表的進行配置 ...
  • # Maven的概述 @[toc] Java 項目開發過程中,構建指的是使用『原材料生產產品』的過程。 - 原材料 - Java 源代碼 - 基於 HTML 的 Thymeleaf 文件 - 圖片 - 配置文件 - …… - 產品 - 一個可以在伺服器上運行的項目 構建過程包含的主要的環節: - 清 ...
  • > ML.Net - 開源的跨平臺機器學習框架 > - 支持CPU/GPU訓練 > - 輕鬆簡潔的預測代碼 > - 可擴展其他的機器學習平臺 > - 跨平臺 ![img](https://img2023.cnblogs.com/blog/1339560/202305/1339560-20230524 ...
  • 文件比較平常都是用Beyond Compare,可以說離不開的神器,特別是針對代碼比較這塊,確實挺好用的。 不過Beyond Compare平常拿它主要是用來做代碼比較,用來做一些大批量的二進位文件比較,其實有點不是很方便。 於是造輪子,重新寫了一個簡單的文件夾比較的小工具。 平常主要是拿來做一些N ...
  • 遞歸演算法本質: 1、方法的自我調用 2、有明確的終止條件 3、每次調用時,問題規模在不斷減少。通過遞減,最終到達終止條件 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...