Hive學習之二 《Hive的安裝之自定義mysql資料庫》

木子小僧發表於2016-03-21

由於MySQL便於管理,在學習過程中,我選擇MySQL。

一,配置後設資料庫。

    1、安裝MySQL,採用yum方式。

  ①yum  install  mysql-server,安裝mysql服務端,安裝服務端的同時,也會把mysql的客戶端安裝好。

  ②資料庫字符集設定。

      mysql配置檔案/etc/my.cnf中加入default-character-set=utf8

      指令如下:

vi /etc/my.cnf

  加入default-character-set=utf8

  ③啟動mysql服務和部分指令

1 service mysqld start
2 sudo chkconfig mysqld on//設定mysql開機啟動
3 chkconfig --list | grep mysql*//開機啟動設定是否成功
4 mysqladmin -u root password ****//建立root超級管理員
5 mysql -uroot –p******//登入mysql

  ④建立hive資料庫

  create database hive;

  ⑤設定hive庫的字符集

   alter database hive character set latin1;

  ⑥對其他IP放開訪問許可權: 

  GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
  GRANT ALL PRIVILEGES ON *.* TO 'root'@'master' IDENTIFIED BY '123456' WITH GRANT OPTION;

  

2、修改hive的資料庫為mysql

      ①把mysql的驅動上傳到相對應的目錄下。

  mysql-connector-java-5.1.17.jar包放在 /opt/cloudera/parcels/CDH/lib/hive/lib/下。

  ②複製到其他節點

  scp ./mysql-connector-java-5.1.17.jar slave:/opt/cloudera/parcels/CDH/lib/hive/lib/

  ③修改/etc/hive/conf/hive-site.xml 裡增加hive後設資料庫連結屬性

<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://master: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>123456</value>
</property>
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>

  Hive.metastore.local  是否為本地庫,如果 mysql 在當前主機上,就設定 true ,否則為 false 。

  ④在cm裡修改hive的配置,把資料庫連線修改為mysql

  

  儲存更改後,重新啟動hive。

  ⑤hadoop fs -chmod 777 /user,修改許可權。

 

  

 

相關文章