1. 程式人生 > >Ubuntu下安裝hive,並配置mysql作為元資料庫

Ubuntu下安裝hive,並配置mysql作為元資料庫

一、安裝hive
1.下載並解壓hive源程式

sudo tar -zxvf ./apache-hive-1.2.1-bin.tar.gz -C /usr/local # 解壓到/usr/local中
cd /usr/local/
sudo mv apache-hive-1.2.1-bin hive # 將資料夾名改為hive
sudo chown -R dblab:dblab hive # 修改檔案許可權
mkdir -p /usr/local/hive/warehouse # 建立元資料儲存資料夾
sudo chmod a+rwx /usr/local/hive/warehouse

2.配置環境變數
為了方便使用,我們把hive

命令加入到環境變數中去,編輯~/.bashrc檔案vim ~/.bashrc,在最前面一行新增:

export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin

儲存退出後,執行source ~/.bashrc使配置立即生效。

3.啟動hive

hive #啟動hive

注意:到這裡,我們其實已經安裝好了hive,但是是預設的derby作為元資料庫,這會帶來麻煩,後面會提到。

4.修改/usr/local/hive/conf下的hive-site.xml
這個檔案是不存在的,只需將hive-default.xml.template

保留一個副本,副本重新命名為hive-site.xml,原始檔可以重新命名為hive-default.xml。在副本中,刪除原內容,貼上如下程式碼:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value
>
jdbc:mysql://localhost: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>hive</value> <description>username to use against metastore database</description> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>hive</value> <description>password to use against metastore database</description> </property> </configuration>

二、安裝mysql
1.Ubuntu下 MySQL的安裝請參考:Ubuntu安裝MySQL及遇到的問題解決方案
使用以下命令即可進行MySQL安裝:
sudo apt-get install mysql-server
上述命令會安裝以下包:

apparmor
mysql-client-5.7
mysql-common
mysql-server
mysql-server-5.7
mysql-server-core-5.7

因此無需再安裝mysql-client等。安裝過程會提示設定mysql root使用者的密碼,設定完成後等待自動安裝即可。預設安裝完成就啟動了mysql。
啟動和關閉mysql伺服器:

service mysql start
service mysql stop

確認是否啟動成功:

sudo netstat -tap | grep mysql

進入mysql shell介面:mysql -u root -p

下面回顧一下安裝過程中我遇到的問題:
1]、安裝到Renaming removed key_buffer and myisam-recover options (if present)就卡住了,而且ctrl+C 也無法退出,最後我關閉了終端強制退出了,但是我發現運用sudo netstat -tap | grep mysql居然顯示是啟動成功的,可是進入shell介面就會出現問題,提示ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:YES)網上找了一堆方法,都無法解決。
無奈考慮解除安裝重灌:

sudo apt-get autoremove mysql* --purge
sudo apt-get remove apparmor //這個apparmor是在裝mysql-server時裝上的,和安全有關

2]、重啟電腦後(很多時候重啟是法寶),再次利用命令apt-get安裝mysql-server,執行到Renaming removed key_buffer and myisam-recover options (if present)仍然卡住了,我再次中止了終端,發現啟動也是成功的,嘗試進入shell介面,出現另一種新的錯誤:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2),然後又是找了很多國內外資料,國內百度無法搜尋出和這個錯誤完全相關的,還是老實翻牆上谷歌,提出的方案是需要刪除一些重複的配置檔案,但是我連這個/var/run/mysqld/mysqld.sock沒有,因此仍然無法解決。
再次解除安裝。考慮一定要解除安裝非常徹底。

sudo apt-get autoremove mysql* --purge
sudo apt-get remove apparmor
sudo rm /var/lib/mysql/ -R //非常重要
sudo rm /etc/mysql/ -R //非常重要

3]、重啟電腦,再次利用命令sudo apt-get install mysql-server 順利安裝成功!
總結:一定要解除安裝非常乾淨!

tar -zxvf mysql-connector-Java-5.1.40.tar.gz //解壓
cp mysql-connector-java-5.1.40/mysql-connector-java-5.0.8-bin.jar /usr/local/hive/lib //將mysql-connector-java-5.1.40-bin.jar拷貝到/usr/local/hive/lib目錄下:
 ```
3.啟動並登陸`mysql shell`

service mysql start //啟動mysql服務
mysql -u root -p //登陸shell介面
``
4.新建hive資料庫。用來儲存hive的元資料:
create database hive`;這個hive資料庫與localhost:3306/hive中的hive對應

5.配置mysql允許hive接入:

grant all on hive.* to [email protected] identified by 'hive'//後面的hive是配置hive-site.xml中配置的連線密碼
flush privileges //重新整理mysql系統許可權關係表

6.啟動hive
hive //啟動hive

使用預設的derby作為元資料庫,帶來的麻煩。

很多初學者安裝hive使用的是預設元資料庫derby,這裡面容易遇到下面問題:
安裝好了hive 環境,建表後關閉連線視窗,再重新進表就不見了,這是哪裡配置的不對?
1.命令列鍵入hive後建立表
2.在show tables; 顯示錶列表,上面顯示剛才建立的表
3.把視窗關閉,再重新開個視窗連線伺服器,鍵入hive ,然後show tables,表看不到了。
為什麼會找不到建立的表,這個並沒有消失,而是你的位置不對。
A.如果我們在/home下面進入hive,那麼我們的metastore_db,就會產生在home目錄下。
B.如果我們在/usr目錄下進入hive,那麼我們的metastore_db,就會產生在usr目錄下。
所以如果你更換了目錄啟動hive,那麼之前的建立的表你是找不到的。

相關推薦

Ubuntu安裝hive配置mysql作為資料庫

一、安裝hive 1.下載並解壓hive源程式 sudo tar -zxvf ./apache-hive-1.2.1-bin.tar.gz -C /usr/local # 解壓到/usr/local中 cd /usr/local/ sudo mv apa

在學校機房聯想硬盤保護安裝Linux配置銳捷客戶端

本地源 常識 ont 裝系統 cas 靜態ip設置 mod 都是 不能 最近幾天一直在機房裏刷題,空調開著非常舒服。但是機房電腦裏全是windows系統,不太好用,挺膈應人的。 一直打算換個系統,剛才終於搞定網絡問題了,以後用電腦就可以爽到了。 聯想硬盤保護系統下u盤安裝

Linux安裝php配置到nginx【最終版完美解決問題】

1、 下載         libxml2-2.6.32.tar.gz  http://download.csdn.net/detail/netlong339/1351852        php-5

ubuntu安裝Libevent通過QT測試

1、官網下載最新的Libevent-2.022 2、解壓安裝包,並進入檔案包 tar -zxvf libevent-2.0.22-stable.tzr.gz cd libevent-2.0.22-stable 3、配置編譯並安裝 1、./c

Linux安裝Python3的django配置mysql作為django默認數據庫(轉載)

make lba del log pri ica www src rim 我的操作系統為centos6.5 1 首先選擇django要使用什麽數據庫。django1.10默認數據庫為sqlite3,本人想使用mysql數據庫,但為了測試方便順便要安裝一下sqlite開發

Windows安裝VScode使用以及中文配置

首先明確一點,VScode是開發Go應用的基礎編輯器,是Microsoft(微軟的產品),可以執行在Windows、Linux、Mac Os X上使用,預設提供Go語言語法高亮,安裝Go語言外掛後,就可以智慧提示,編譯等執行功能,   當然市場上還有很多其他GO語言的開發工具,例如常見的Ec

Ubuntu 18.04安裝lamp環境配置mysql資料庫遠端連線

首先,更新軟體源軟體列表: 更新本機軟體: 安裝apache2: 安裝完成後,檢視Apache執行狀態,顯示running說明是執行中: 通過本地迴環地址(127.0.0.1/localhost)訪問apache伺服器,出現下圖所示

ubuntu安裝eclipse配置jdk環境變數仍然報錯

可以在終端順利啟動Eclipse,但是滑鼠雙擊,或者用起動器啟動就會出現如下的內容: A Java RunTime Environment (JRE) or Java Development Kit (JDK) must be available in order to r

centos7 安裝canal實現將mysql資料同步到redis

簡介:canal為阿里巴巴產品,它主要模擬了mysql的Slave向Master傳送請求,當mysql有增刪改查時則會出發請求將資料傳送到canal服務中,canal將資料存放到記憶體,直到客戶端程式(canal服務端和客戶端程式都是由java編寫,且客戶端邏輯由我們藉助c

ubuntu 安裝 redis配置遠端、密碼

方式一: 本教程使用的最新文件版本為 2.8.17,下載並安裝: $ wget http://download.redis.io/releases/redis-2.8.17.tar.gz $ tar xzf redis-2.8.17.tar.gz $ cd redis

Win10安裝Mongodb配置成服務

append 配置文件 log 模式 日誌文件 文件夾 sta fig clas 好吧,今天突然發現新買的surface上沒有安裝mongodb,然後想著安裝一下,順便記錄一下,雖說安裝過程很簡單 一:下載安裝,然後拷貝到C盤根目錄,這個就不多說了,比QQ都簡單。 二:把b

Shell 自動化安裝Apache配置虛擬主機

shell 自動化安裝apache(一)Apache安裝思路 (1) 安裝必要組件 wget openssl* gcc (2)關閉防火墻和Selinux service iptables stop setenforce 0 (3)下載Apache源碼文件,並

Git配置(二)Windows安裝Git配置Centos為遠程倉庫

Git1、為Centos系統創建Git用戶 useradd -d /home/git git #創建git用戶 passwd git #修改密碼 2、打開Centos系統RAS認證 vim /etc/ssh/sshd_config 打開以下註釋,修

docker安裝centos在其上搭建lnmp環境

方便 libxml bic spro yum 啟動 openss ont dock 一、安裝CentOs容器 1.進入docker下載CentOs,這裏我使用的CentOs6.8   docker pull centos:6.8 2.創建容器   sudo docker r

centos7系統安裝php-fpm配置nginx支援開啟網站gzip壓縮

注:此處不介紹nginx的安裝。以下教程預設已安裝nginx。 1. yum install -y php-fpm yum install php-pdo yum install php-mysql yum安裝預設版本是php5.4,要使用更高版本可使用yum search all

linux安裝jdktomcat以及mysql

  環境:centOS6.8、jdk1.8,tomcat-8.5.15,mysql-5.7.18   1. 安裝JDK   注意:rpm與軟體相關命令 相當於window下的軟體助手 管理軟體   步驟:   1)檢視當前Linux系統是否已經安裝java rpm -qa | g

ubuntu 安裝軟體解除安裝檢視已經安裝的軟體

一般的安裝程式用三種:  .deb 和.rpm 這兩種安裝檔案  .bundle 這是二進位制的安裝檔案  而 tar.gz 這類的只是壓縮包(相當於 .rar,.zip 壓縮包一樣),如果此類檔案是程式的話,得先解壓。 使用者手動選擇安裝目錄是不必要的。這一套系統更瞭解什麼

windows安裝nginx新增至系統服務

安裝:解壓修改配置檔案執行即可   新增服務 需要藉助"Windows Service Wrapper"小工具下載地址:winsw GitHub 下載後放在nginx目錄下,並修改名字為nginx-service.exe 建立配置檔案nginx-service.exe.config&n

【django】windows安裝django建立new project

一、 進入:python 退出:exit()    二、 安裝django: 1.解壓官方下載的django-1.10.1 2.在該目錄下,python setup.py install  大概需要1分鐘的時間安裝完成,Django將被安

虛擬機器Ubuntu安裝vivado下載線識別不了終結解決方法

根據UG973說明(this option has been removed from the Linux installer beginning in Vivado 2015.4.),自從Vivado 2015.4版本開始就不自動安裝cable下載線的驅動了,但是線的驅動還