Hive個人心得筆記之安裝

                              Hive個人心得筆記之安裝

目錄

                              Hive個人心得筆記之安裝

一.Hive安裝

二.Mysql安裝

一.卸載刪除Percona和Mysql相關依賴

二.執行命令全部卸載

三.下載安裝即可

四.下載完成

五.安裝客戶端,服務端

六.新增mysql用戶組,並創建mysql用戶

七.修改my.cnf,默認在/usr/my.cnf,

八.將mysqld加入系統服務,並隨機啓動

九.啓動Mysql

十.查看初始生成的密碼

十一.修改初始密碼

十二.進入mysql數據庫

十三.進入conf目錄下,編輯新的配置文件,

十四.將mysql驅動包上傳到hive安裝目錄的lib目錄下

十五.進入到mysql數據庫,進行權限分配

十六.進入mysql數據庫,

十七.啓動hive客戶端

十八.關聯Hive查詢數據庫

十九.通過navicat來連接數據庫

二十.通過DBS 、TBLS、COLUMNS_V2、SDS這幾張表來查看元數據信息

1.DBS 存放的數據庫的元數據信息

2.TBLS存放的tables表信息

3.COLUMNS表存放的是列字段信息

4.SDS+表存放的HDFS裏的位置信息

四.元數據

一、概述

二、derby存在的問題

五、常見問題


一.Hive安裝

  1. 安裝JDK (已安裝)
  2. 安裝Hadoop (已安裝)
  3. 配置JDK和Hadoop的環境變量 (已配置)
  4. 下載Hive安裝包 (已下載) wget hive
  5. 解壓安裝hive (已解壓) tar -xvf xxxx
  6. 啓動Hadoop的HDFS和Yarn   (已啓動)  start-all.sh
  7. 進入到bin目錄,啓動Hive:sh hive  (或者執行:./hive)
  8. hive安裝過於簡單,解壓 無需配置 運行即可

二.Mysql安裝

一.卸載刪除Percona和Mysql相關依賴

[root@liuyong software]# rpm -ev --nodeps Percona-Server-shared-56-5.6.24-rel72.2.el6.x86_64
[root@liuyong software]# rpm -ev --nodeps Percona-Server-56-debuginfo-5.6.24-rel72.2.el6.x86_64
[root@liuyong software]# rpm -ev --nodeps Percona-Server-client-56-5.6.24-rel72.2.el6.x86_64
[root@liuyong software]# rpm -ev --nodeps Percona-Server-server-56-5.6.24-rel72.2.el6.x86_64
[root@liuyong software]# rpm -ev --nodeps mysql-libs-5.1.73-8.el6_8.x86_64
warning: /etc/my.cnf saved as /etc/my.cnf.rpmsave
[root@liuyong software]# rpm -ev --nodeps tcl-mysqltcl-3.052-1.el6.x86_64
[root@liuyong software]# rpm -qa | grep Percona
[root@liuyong software]# rpm -qa | grep mysql

二.執行命令全部卸載

三.下載安裝即可

四.下載完成

一個客戶端,一個服務端

五.安裝客戶端,服務端

  • rpm -ivh MySQL-server-5.6.29-1.linux_glibc2.5.x86_64.rpm
  • rpm -ivh MySQL-client-5.6.29-1.linux_glibc2.5.x86_64.rpm

六.新增mysql用戶組,並創建mysql用戶

  • groupadd mysql
  • useradd -r -g mysql mysql
  • 已經存在,無需關心

七.修改my.cnf,默認在/usr/my.cnf,

執行:vim /usr/my.cnf,添加如下內容:  如果沒有該文件手動創建

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

[mysqld]

character_set_server=utf8

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

八.將mysqld加入系統服務,並隨機啓動

  • 執行:cp /usr/share/mysql/mysql.server   /etc/init.d/mysqld
  • 說明:/etc/init.d 是linux的一個特殊目錄,放在這個目錄的命令會隨linux開機而啓動。

九.啓動Mysql

啓動mysqld,執行:service mysqld start

十.查看初始生成的密碼

執行:vim /root/.mysql_secret 。這個密碼隨機生成的

因爲之前安裝過Mysql集羣,所以沒有,第一次安裝的會有,改下密碼爲root 

十一.修改初始密碼

  • 第一次安裝完mysql後,需要指定登錄密碼
  • 執行:mysqladmin -u root -p  password root  此時,提示要輸入初始生成的密碼,拷貝過來即可

自行操作

十二.進入mysql數據庫

  • 執行:mysql -u root -p
  • 輸入:root進入
  • 執行:\s查看mysql數據配置信息

十三.進入conf目錄下,編輯新的配置文件,

名字爲:hive-site.xml

	<configuration>
	    <property>
	        <name>javax.jdo.option.ConnectionURL</name>
	        <value>jdbc:mysql://hadoop01:3306/hive?createDatabaseIfNotExist=true</value>
	    </property>
	    <property>
	        <name>javax.jdo.option.ConnectionDriverName</name>
	        <value>com.mysql.jdbc.Driver</value>
	    </property>
	    <property>
	        <name>javax.jdo.option.ConnectionUserName</name> 
	        <value>root</value> 
	    </property>
	    <property>
	        <name>javax.jdo.option.ConnectionPassword</name>
	        <value>root</value>
	    </property>
	</configuration>

十四.將mysql驅動包上傳到hive安裝目錄的lib目錄下

進入conf目錄下,編輯新的配置文件,名字爲:hive-site.xml

十五.進入到mysql數據庫,進行權限分配

  • 執行:grant all privileges on *.* to 'root'@'hadoop01' identified by 'root' with grant option;
  • 執行:grant all on *.* to 'root'@'%' identified by 'root';
  • 執行:flush privileges;

十六.進入mysql數據庫,

執行:create database hive character set latin1;

 

十七.啓動hive客戶端

十八.關聯Hive查詢數據庫

十九.通過navicat來連接數據庫

二十.通過DBS 、TBLS、COLUMNS_V2、SDS這幾張表來查看元數據信息

1.DBS 存放的數據庫的元數據信息

2.TBLS存放的tables表信息

3.COLUMNS表存放的是列字段信息

4.SDS+表存放的HDFS裏的位置信息

四.元數據

一、概述

  1. hive可以管理hdfs上的文件,用表的形式來管理文件數據。而表名、表裏有哪些字段,字段類型、哪張表存在哪個數據下等這些表信息,稱之爲hive的元數據信息
  2. 默認情況下,hive的元數據信息不是存在hdfs上的,而是存在hive自帶的derby關係型數據庫裏的
  3. Hive安裝完成之後,通常都需要替換元數據庫,目前Hive只支持derby和mysql兩種元數據庫,需要將元數據庫替換爲MySQL
  4. 元數據的默認字符集是ISO8859-1

二、derby存在的問題

  1. derby數據庫是一種文件型的數據庫,在進入時會檢查當前目錄下是否有metastore_db文件夾用來存儲數據庫數據,如果有就直接使用,如果沒有就創建,這樣一旦換一個目錄,元數據就找不到了
  2. derby數據庫是一個單用戶的數據庫,無法支持多用戶同時操作,而hive如果使用derby作爲元數據庫,則也只能支持單用戶操作,這就導致在數據量大連接多的情況下會產生大量連接的積壓

五、常見問題

  1. 如果出現不能修改密碼的問題,則可以執行如下命令強制修改:
    1. 關閉MySQL服務:service mysqld stop
    2. 進入安全模式:mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
    3. 在安全模式下輸入:mysql -u root mysql
    4. 進入mysql之後輸入:
      1. UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
      2. FLUSH PRIVILEGES;
      3. quit
    5. 重啓MySQL服務:service mysqld restart
  2. 顯示MySQL密碼過期:
    1. 進入mysql
    2. 使用mysql庫:use mysql
    3. 更新密碼狀態:update user set password_expired='N' where user='root';
    4. 更新策略:flush privileges;
    5. 退出MySQL:quit

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章