首页 > 学院 > 操作系统 > 正文

安装Hive(独立模式 使用mysql连接)

2024-06-28 16:01:17
字体:
来源:转载
供稿:网友
安装Hive(独立模式 使用MySQL连接) 1.默认安装了java+hadoop2.下载对应hadoop版本的安装包3.解压安装包    tar zxvf apache-hive-1.2.1-bin.tar.gz4.安装mysql    yum -y install mysql-server mysql mysqldev  //需要以root身份运行   另外可能需要配置yum源    mysql常用命令:        service mysqld start/stop        chkconfig mysqld on //加入开机启动 以系统root用户操作5.授权mysql(以系统hadoop身份 数据库root身份进行操作)    mysqladmin -u root passWord "root" //修改root密码为root    mysql -uroot -p密码  (初始密码为空)         create user 'hive' identified by 'hive'//创建用于连接的hive用户 密码为hive    grant all PRivileges on *.* to 'hive'@'%' identified by "hive" with grant option;    flush privileges; //刷新权限         grant all privileges on *.* to 'hive'@'localhost' identified by "hive" with grant option;    flush privileges; //刷新权限         grant all privileges on *.* to 'hive'@'hadoop.master' identified by "hive" with grant option;    flush privileges; //刷新权限         set global binlog_format='MIXED'//设置格式  必须执行。不然报错         exit;    service mysqld restart   //重启服务6.测试连接    mysql -hhadoop.master -uhive -phive  //能进去则表示设置成功    create database hive; //创建连接数据库hive    alter database hive character set latin1;     7.配置环境变量(/etc/profile)    #hive    export HIVE_HOME=/opt/hive-1.2.1    export HIVE_AUX_JARS_PATH=/opt/hive-1.2.1/lib    export HIVE_CONF_DIR=/opt/hive-1.2.1/conf    export PATH=$PATH:$HIVE_HOME/bin    export CLASSPATH=$CLASSPATH:$HIVE_HOME/lib    保存退出    source /etc/profile8.修改配置文件    1.根据模版复制配置文件        cp hive-default.xml.template hive-site.xml        cp hive-env.sh.template hive-env.sh        cp hive-log4j.properties.template hive-log4j.properties    2.修改配置文件        ####hive-site.xml####        //添加项目   --0.11 版本以后可不用添加此项        <property>        <name>hive.metastore.local</name>        <value>false</value>        </property>                 //修改项目        <property>        <name>javax.jdo.option.ConnectionURL</name>        <value>jdbc:mysql://hadoop.master:3306/hive</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>                 <property>        <name>hive.exec.local.scratchdir</name>        <value>/opt/hive-1.2.1/tmp</value>        //需要创建此目录        <description>Local scratch space for Hive jobs</description>        </property>                 <property>        <name>hive.downloaded.resources.dir</name>        <value>/opt/hive-1.2.1/tmp</value>        <description>Temporary local directory for added resources in the remote file system.</description>        </property>                          <property>        <name>hive.hwi.war.file</name>        <value>/opt/hive-1.2.1/lib/hive-hwi-1.2.1.jar</value>        <description>This sets the path to the HWI war file, relative to ${HIVE_HOME}. </description>        </property>                 ####hive-env.sh####        HADOOP_HOME=/opt/hadoop-2.5.2                 ####hive-log4j.properties####        hive.log.threshold=ALL        hive.root.logger=INFO,DRFA        hive.log.dir=/opt/hive-1.2.1/logs  //需创建相应目录        hive.log.file=hive.log9.其他配置项    1.hdfs上创建相应文件夹并修改权限        hadoop fs -mkdir -p /tmp/hive        hadoop fs -chmod 777 /tmp/hive        hadoop fs -mkdir -p /user/hive        hadoop fs -chmod 777 /user/hive    2.修改hadoop hadoop-env.sh配置文件        export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$CLASSPATH    3.将mysql jdbc jar包拷贝到lib目录下        cp mysql-connector-java-5.1.21.jar /opt/hive-1.2.1/lib    4.将lib目录下的jline-2.12.jar 拷贝到/opt/hadoop-2.5.2/share/hadoop/yarn/lib下,并将相应包重属名        cp /opt/hive-1.2.1/lib/jline-2.12.jar /opt/hadoop-2.5.2/share/hadoop/yarn/lib        mv /opt/hadoop-2.5.2/share/hadoop/yarn/lib/jline-0.9.94.jar /opt/hadoop-2.5.2/share/hadoop/yarn/lib/jline-0.9.94.jar.bak9.使用验证    hive --service metastore & //开机首次执行    hive -e "show databases;" //运行完不报错即安装成功    也可以使用hive命令行进去执行10.常用命令    1.显示        show tables;        show databases;    2.定义      //添加外部分区表  推荐以后就是用这种表        create external table access_info(ip string,access_date string,url string)        partitioned by(logdate string) row format delimited fields terminated by '/t'                 desc access_info;    3.添加数据        alter table access_info add partition(logdate='2016-01-15') location '/access'; --加载文件hdfs实际路径  access为文件夹名称        load data local inpath '/home/hadoop/huangzhijian/access.txt' into table access_info_local_file;  --加载本地文件    3.查询        select * from access_info;    4.删除        drop table access_info;  //外部表不会删除原本数据  内部表就会删除原数据         //注意不能update         5.其他        1.hive –f test.sql          ####test.sql####          select * from t1;          select count(*) from t1;        2.hive -e 'hql语句'        3.hive -S -e 'select * from t1'(用法与第一种方式的静音模式一样,不会显示mapreduce的操作过程)        4.hive -e 'select * from t1'  > test.txt  (将结果输出到本地文件中)

  


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表