<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Hadoop第9周練習(xí)—Hive部署測試(含MySql部署)

      1  運(yùn)行環(huán)境說明... 3

      1.1 硬軟件環(huán)境... 3

      1.2 機(jī)器網(wǎng)絡(luò)環(huán)境... 3

      2 書面作業(yè)1:搭建Hive環(huán)境... 3

      2.1 書面作業(yè)1內(nèi)容... 3

      2.2 搭建過程... 4

      2.2.1   安裝MySql數(shù)據(jù)庫... 4

      2.2.2   安裝Hive. 10

      2.2.3   驗(yàn)證部署... 15

      3 問題解決... 17

      3.1 設(shè)置mysql數(shù)據(jù)庫root用戶密碼報(bào)錯(cuò)... 17

      3.2 hive啟動(dòng),報(bào)CommandNeedRetryException異常... 19

      3.3 hive中使用操作語言... 20

       

      1 運(yùn)行環(huán)境說明

      1.1  硬軟件環(huán)境

      l  主機(jī)操作系統(tǒng):Windows 64 bit,雙核4線程,主頻2.2G6G內(nèi)存

      l  虛擬軟件:VMware? Workstation 9.0.0 build-812388

      l  虛擬機(jī)操作系統(tǒng):CentOS 64位,單核,1G內(nèi)存

      l  JDK1.7.0_55 64 bit

      l  Hadoop1.1.2

      1.2  機(jī)器網(wǎng)絡(luò)環(huán)境

      集群包含三個(gè)節(jié)點(diǎn):1個(gè)namenode2個(gè)datanode,其中節(jié)點(diǎn)之間可以相互ping通。節(jié)點(diǎn)IP地址和主機(jī)名分布如下:

      序號(hào)

      IP地址

      機(jī)器名

      類型

      用戶名

      運(yùn)行進(jìn)程

      1

      10.88.147.221

      hadoop1

      名稱節(jié)點(diǎn)

      hadoop

      NNSNNJobTracer

      2

      10.88.147.222

      hadoop2

      數(shù)據(jù)節(jié)點(diǎn)

      hadoop

      DNTaskTracer

      3

      10.88.147.223

      hadoop3

      數(shù)據(jù)節(jié)點(diǎn)

      hadoop

      DNTaskTracer

      所有節(jié)點(diǎn)均是CentOS6.5 64bit系統(tǒng),防火墻均禁用,所有節(jié)點(diǎn)上均創(chuàng)建了一個(gè)hadoop用戶,用戶主目錄是/usr/hadoop。所有節(jié)點(diǎn)上均創(chuàng)建了一個(gè)目錄/usr/local/hadoop,并且擁有者是hadoop用戶。

      2  書面作業(yè)1:搭建Hive環(huán)境

      2.1  書面作業(yè)1內(nèi)容

      安裝Hive,有條件的同學(xué)按本地獨(dú)立模式或遠(yuǎn)程模式安裝,將安裝過程和最后測試成功的界面抓圖提交。

      2.2  搭建過程

      2.2.1安裝MySql數(shù)據(jù)庫

      2.2.1.1下載mysql安裝文件

      下載地址:http://dev.mysql.com/downloads/mysql/#downloads,使用系統(tǒng)為CentOS選擇 Red Hat Enterprise Linux/Oracle系列:

      clip_image002

      操作系統(tǒng)為64位,選擇對應(yīng)安裝包進(jìn)行下載:

      clip_image004

      clip_image006

      clip_image008

      下載在本地目錄如下圖:

      clip_image010

      2.2.1.2上傳mysql安裝文件

      把下載的mysql安裝包,使用SSH Secure File Transfer工具(第12作業(yè)周2.1.3.1介紹)上傳到/home/hadoop/Downloads 目錄下,如下圖所示:

      clip_image012

      2.2.1.3卸載舊的mysql

      (1)  查找以前是否安裝有mysql

      使用命令查看是否已經(jīng)安裝過mysql

      rpm -qa | grep -i mysql

      可以看到如下圖的所示:

      clip_image014

      說明之前安裝了:

      MySQL-client-5.6.21-1.el6.x86_64

      MySQL-server-5.6.21-1.el6.x86_64

      MySQL-devel-5.6.21-1.el6.x86_64

      如果沒有結(jié)果,可以進(jìn)行mysql數(shù)據(jù)庫安裝

      (2)  停止mysql服務(wù)、刪除之前安裝的mysql

      停止mysql服務(wù)、刪除之前安裝的mysql刪除命令:rpm -e nodeps 包名

      sudo rpm -ev MySQL-server-5.6.21-1.el6.x86_64

      sudo rpm -ev MySQL-devel-5.6.21-1.el6.x86_64

      sudo rpm -ev MySQL-client-5.6.21-1.el6.x86_64

      clip_image016

      如果存在CentOS自帶mysql-libs-5.6.21-1.el6.x86_64使用下面的命令卸載即可

      sudo rpm -ev --nodeps mysql-libs-5.6.21-1.el6.x86_64

      (3)  查找之前老版本mysql的目錄并且刪除老版本mysql的文件和庫

      sudo find / -name mysql

      clip_image018

      刪除對應(yīng)的mysql目錄

      sudo rm -rf /usr/lib64/mysql

      sudo rm -rf /var/lib/mysql

      clip_image020

      (4)  再次查找機(jī)器是否安裝mysql

      sudo rpm -qa | grep -i mysql

      無結(jié)果,說明已經(jīng)卸載徹底、接下來直接安裝mysql即可

      clip_image022

      2.2.1.4安裝mysql

      進(jìn)入安裝文件的目錄,安裝mysql服務(wù)端

      cd /home/hadoop/Downloads

      sudo rpm -ivh MySQL-server-5.6.21-1.el6.x86_64.rpm

      clip_image024

      安裝mysql客戶端、mysql-devel

      sudo rpm -ivh MySQL-client-5.6.21-1.el6.x86_64.rpm

      sudo rpm -ivh MySQL-devel-5.6.21-1.el6.x86_64.rpm

      clip_image026

      2.2.1.5設(shè)置root密碼

      CentOS6.5下安裝mysql設(shè)置root密碼時(shí),出現(xiàn)如下錯(cuò)誤:

      clip_image028

      /usr/bin/mysqladmin: connect to server at 'localhost' failed

      error: 'Access denied for user 'root'@'localhost' (using password: NO)'

      可以進(jìn)入安全模式進(jìn)行設(shè)置root密碼

      (1)  停止mysql服務(wù)

      使用如下命令停止mysql服務(wù):

      sudo service mysql stop

      sudo service mysql status

      clip_image030

      (2)  跳過驗(yàn)證啟動(dòng)mysql

      使用如下命令驗(yàn)證啟動(dòng)mysql,由于&結(jié)尾是后臺(tái)運(yùn)行進(jìn)程,運(yùn)行該命令可以再打開命令窗口或者Ctr+C繼續(xù)進(jìn)行下步操作:

      mysqld_safe --skip-grant-tables &

      sudo service mysql status

      clip_image032

      (3)  跳過驗(yàn)證啟動(dòng)MySQL

      驗(yàn)證mysql服務(wù)已經(jīng)在后臺(tái)運(yùn)行后,執(zhí)行如下語句,其中后面三條命令是在mysql語句:

      mysql -u root

      mysql>use mysql;

      mysql>update user set password = password('root') where user = 'root';

      mysql>flush privileges;

      clip_image034

      (4)  跳過驗(yàn)證啟動(dòng)MySQL

      重啟mysql服務(wù)并查看狀態(tài)

      sudo service mysql stop

      sudo service mysql start

      sudo service mysql status

      clip_image036

      2.2.1.6設(shè)置hive用戶

      進(jìn)入mysql命令行,創(chuàng)建hive用戶并賦予所有權(quán)限:

      mysql -uroot -proot

      mysql>create user 'hive' identified by 'hive';

      mysql>grant all on *.* TO 'hive'@'%' with grant option;

      mysql>flush privileges;

      clip_image038

      (注意:如果是root第一次登錄數(shù)據(jù)庫,需要重新設(shè)置一下密碼,所報(bào)異常信息如下:ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

      2.2.1.7創(chuàng)建hive數(shù)據(jù)庫

      使用hive用戶登錄,創(chuàng)建hive數(shù)據(jù)庫:

      mysql -uhive -phive

      mysql>create database hive;

      mysql>show databases;

      clip_image040

      2.2.2安裝Hive

      2.2.2.1下載hive安裝文件

      可以到Apache基金hive官網(wǎng)http://hive.apache.org/downloads.html,選擇鏡像下載地址:http://mirrors.cnnic.cn/apache/hive/下載一個(gè)穩(wěn)定版本,如下圖所示:

      clip_image042

      2.2.2.2下載mysql驅(qū)動(dòng)

      mysql官網(wǎng)進(jìn)入下載頁面:http://dev.mysql.com/downloads/connector/j/ ,選擇所需要的版本進(jìn)行下載,這里下載的zip格式的文件

      clip_image044

      2.2.2.3上傳mysql安裝文件和mysql驅(qū)動(dòng)

      把下載的hive安裝包和mysql驅(qū)動(dòng)包,使用SSH Secure File Transfer工具(第12作業(yè)周2.1.3.1介紹)上傳到/home/hadoop/Downloads 目錄下,如下圖所示:

      clip_image046

      2.2.2.4mysql驅(qū)動(dòng)放到hivelib目錄下

      把下載的hive安裝包和mysql驅(qū)動(dòng)包,使用

      cd /home/hadoop/Downloads

      cp mysql-connector-java-5.1.34-bin.jar /usr/local/hive-0.12.0/lib

      clip_image048

      2.2.2.5解壓縮

      到上傳目錄下,用如下命令解壓縮hive安裝文件:

      cd /home/hadoop/Downloads

      tar -zxvf hive-0.12.0-bin.tar.gz

      clip_image050

      遷移到/usr/local目錄下:

      sudo mv hive-0.12.0-bin  /usr/local/hive-0.12.0

      clip_image052

      2.2.2.6配置/etc/profile環(huán)境變量

      使用如下命令打開/etc/profile文件:

      sudo vi /etc/profile

      clip_image054

      clip_image056

      使配置文件生效:

      source /etc/profile

      clip_image058

      2.2.2.7設(shè)置hive-env.sh配置文件

      進(jìn)入hive-0.12.0/conf目錄,復(fù)制hive-env.sh.templaetehive-env.sh

      cd /usr/local/hive-0.12.0/conf

      cp hive-env.sh.template hive-env.sh

      ls

      vi hive-env.sh

      clip_image060

      分別設(shè)置HADOOP_HOMEHIVE_CONF_DIR兩個(gè)值:

      clip_image062

      2.2.2.8設(shè)置hive-site.xml配置文件

      復(fù)制hive-default.xml.templaetehive-site.xml

      cp hive-default.xml.template hive-site.xml

      sudo vi hive-site.xml

      clip_image064

      (1)  加入配置項(xiàng)

      默認(rèn)metastore在本地,添加配置改為非本地

      <property>

        <name>hive.metastore.local</name>

        <value>false</value>

      </property>

      clip_image066

      (2)  修改配置項(xiàng)

      hive默認(rèn)為derby數(shù)據(jù)庫,需要把相關(guān)信息調(diào)整為mysql數(shù)據(jù)庫

      <property>

        <name>hive.metastore.uris</name>

        <value>thrift://hadoop1:9083</value>

        <description>Thrift URI for the remote metastore. ...</description>

      </property>

      <property>

        <name>javax.jdo.option.ConnectionURL</name>

        <value>jdbc:mysql://hadoop1: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>

      clip_image068

      clip_image070

      (3)  訂正錯(cuò)誤項(xiàng)

      在配置文件2000行左右配置項(xiàng)hive.server2.thrift.sasl.qop原來為<value>auth</auth>,按照如下進(jìn)行修改:

      <property>

        <name>hive.server2.thrift.sasl.qop</name>

        <value>auth</value>

        <des.....

      </property>

      clip_image072

      并把hive.metastore.schema.verification配置項(xiàng)值修改為false

      <property>

        <name>hive.metastore.schema.verification</name>

        <value>false</value>

         <desc....>

      </property>

      clip_image074

      2.2.3驗(yàn)證部署

      2.2.3.1啟動(dòng)metastorehiveserver

      在使用hive之前需要啟動(dòng)metastorehiveserver服務(wù),通過如下命令啟用:

      hive --service metastore &

      hive --service hiveserver &

      clip_image076

      啟動(dòng)用通過jps命令可以看到兩個(gè)進(jìn)行運(yùn)行在后臺(tái)

      clip_image078

      2.2.3.2hive中操作

      登錄hive,在hive創(chuàng)建表并查看該表,命令如下:

      hive

      hive>create table test(a string, b int);

      hive>show tables;

      hive>desc test;

      clip_image080

      登錄mysql,在TBLS表中查看新增test表:

      mysql -uhive -phive

      mysql>use hive;

      mysql>select TBL_ID, CREATE_TIME, DB_ID, OWNER, TBL_NAME,TBL_TYPE from TBLS;

      clip_image082

      3 問題解決

      3.1  設(shè)置mysql數(shù)據(jù)庫root用戶密碼報(bào)錯(cuò)

      CentOS6.5下安裝mysql設(shè)置root密碼時(shí),出現(xiàn)如下錯(cuò)誤:

      clip_image028[1]

      /usr/bin/mysqladmin: connect to server at 'localhost' failed

      error: 'Access denied for user 'root'@'localhost' (using password: NO)'

      (5)  停止mysql服務(wù)

      使用如下命令停止mysql服務(wù):

      sudo service mysql stop

      sudo service mysql status

      clip_image030[1]

      (6)  跳過驗(yàn)證啟動(dòng)mysql

      使用如下命令驗(yàn)證啟動(dòng)mysql,由于&結(jié)尾是后臺(tái)運(yùn)行進(jìn)程,運(yùn)行該命令可以再打開命令窗口或者Ctr+C繼續(xù)進(jìn)行下步操作:

      mysqld_safe --skip-grant-tables &

      sudo service mysql status

      clip_image032[1]

      (7)  跳過驗(yàn)證啟動(dòng)MySQL

      驗(yàn)證mysql服務(wù)已經(jīng)在后臺(tái)運(yùn)行后,執(zhí)行如下語句,其中后面三條命令是在mysql語句:

      mysql -u root

      mysql>use mysql;

      mysql>update user set password = password('root') where user = 'root';

      mysql>flush privileges;

      clip_image034[1]

      (8)  跳過驗(yàn)證啟動(dòng)MySQL

      重啟mysql服務(wù)并查看狀態(tài)

      sudo service mysql stop

      sudo service mysql start

      sudo service mysql status

      clip_image036[1]

      3.2  hive啟動(dòng),報(bào)CommandNeedRetryException異常

      啟動(dòng)hive時(shí),出現(xiàn)CommandNeedRetryException異常,具體信息如下:

      clip_image084

      Exception in thread "main" java.lang.NoClassDefFoundError:org/apache/hadoop/hive/ql/CommandNeedRetryException

              at java.lang.Class.forName0(Native Method)

              at java.lang.Class.forName(Class.java:270)

              at org.apache.hadoop.util.RunJar.main(RunJar.java:149)

      Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hive.ql.CommandNeedRetryException

              at java.net.URLClassLoader$1.run(URLClassLoader.java:366)

              at java.net.URLClassLoader$1.run(URLClassLoader.java:355)

              at java.security.AccessController.doPrivileged(Native Method)

              at java.net.URLClassLoader.findClass(URLClassLoader.java:354)

              at java.lang.ClassLoader.loadClass(ClassLoader.java:425)

              at java.lang.ClassLoader.loadClass(ClassLoader.java:358)

      由于以前使用hadoop時(shí),修改hadoop-env.shHADOOP_CLASSPATH配置項(xiàng),由以前的:

      export HADOOP_CLASSPATH=/usr/local/hadoop-1.1.2/myclass

      修改為:

      export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/usr/local/hadoop-1.1.2/myclass

      clip_image086

       

      clip_image088

      3.3  hive中使用操作語言

      啟動(dòng)hive后,使用Hsql出現(xiàn)異常,需要啟動(dòng)metastorehiveserver

      clip_image090

      FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient

      在使用hive之前需要啟動(dòng)metastorehiveserver服務(wù),通過如下命令啟用:

      hive --service metastore &

      hive --service hiveserver &

      clip_image076[1]

      啟動(dòng)用通過jps命令可以看到兩個(gè)進(jìn)行運(yùn)行在后臺(tái)

      clip_image078[1]

      posted @ 2015-01-07 08:52  shishanyuan  閱讀(7076)  評論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 长治县| 柠檬福利第一导航在线| 国产区精品视频自产自拍| 人人妻人人玩人人澡人人爽| 在线中文字幕国产精品| 亚洲精品日本一区二区| 精品中文人妻中文字幕| 亚洲精品国偷自产在线99人热| 黄色三级亚洲男人的天堂| 成人看的污污超级黄网站免费| 精品久久8x国产免费观看| 亚洲天堂一区二区成人在线| 亚洲国产永久精品成人麻豆| 豆国产97在线 | 亚洲| 亚洲av熟女国产一二三| 亚洲综合一区国产精品| 国精品无码一区二区三区左线| 国产精品久久露脸蜜臀| 亚洲制服无码一区二区三区| 四虎精品视频永久免费| 内射极品少妇xxxxxhd| 在线播放国产精品亚洲| 国内精品一区二区不卡| 欧美老少配性行为| 四虎影视库国产精品一区| 日本高清在线观看WWW色| 乱码精品一区二区亚洲区| 国产成人欧美一区二区三区在线| 亚洲第一区二区快射影院| 亚洲综合一区二区国产精品| 久久男人av资源站| 爆乳日韩尤物无码一区| 乱老年女人伦免费视频| 日韩成人无码影院| 狠狠色狠狠色五月激情| 亚洲综合中文字幕首页| 蜜芽久久人人超碰爱香蕉| 中文字幕成熟丰满人妻| 成人国产精品一区二区不卡| 亚洲中文字幕在线二页| 丰满岳乱妇一区二区三区|