hive 安装和配置

Hive必须依赖hadoop,当hadoop_home环境变量配置的时候取环境变量,没有的时候就取
which    hadoop        对应的值,如果还没有就直接报错了。




//上传
[hcr@ebsdi-23260-oozie    hive-0.11.0]$    rz
//解压
[hcr@ebsdi-23260-oozie    hive-0.11.0]$    tar    -zxvf    hive-0.11.0.tar.gz
//当前目录
[hcr@ebsdi-23260-oozie    hive-0.11.0]$    pwd
/home/hcr/local/hive-0.11.0




配置hive
[hcr@ebsdi-23260-oozie    local]$    cd    /home/hcr/conf/hive/conf
[hcr@ebsdi-23260-oozie    conf]$    cp    hive-default.xml.template    hive-default.xml
[hcr@ebsdi-23260-oozie    conf]$    cat    hive-env.sh.template    >>    hive-env.sh


修改配置文件
[hcr@ebsdi-23260-oozie    conf]$    vim    hive-default.xml    
<property>
        <name>hive.exec.scratchdir</name>
        <value>    /tmp/hive-${user.name}</value>
        <description>Scratch    space    for    Hive    jobs</description>
</property>
<property>
        <name>hive.exec.local.scratchdir</name>
        <value>$HOME/tmp/${user.name}</value>
        <description>Local    scratch    space    for    Hive    jobs</description>
</property>    
<property>
        <name>hive.querylog.location</name>
        <value>$HOME/tmp/${user.name}</value>
        <description>
                Location    of    Hive    run    time    structured    log    file
        </description>
</property>
    
<property>
        <name>hive.metastore.warehouse.dir</name>
        <value>/user/hive/warehouse</value>
        <description>location    of    default    database    for    the    warehouse</description>
</property>







Hdfs目录新建并且赋权


hadoop    fs    -mkdir    /tmp
hadoop    fs    -chmod    a+w    /tmp
hadoop    fs    -mkdir    /user/hive/warehouse
hadoop    fs    -chmod    a+w    /user/hive/warehouse


元数据数据库
可以选择是否配置元数据数据库
配置Metastore用mysql数据库,可以多用户同时访问,默认的是derby只能为每个metastore提供一个hive回话
在mysql    数据库新建数据库赋权限
create    user    and    database    for    hive    in    mysql
create    database    hive;
GRANT    all    ON    hive.*    TO    hive@'%'    IDENTIFIED    BY    'hive';


配置hive-site.xml


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


可以通过传--config选项参数给hive命令以重新定义Hive查找hive-site.xml文
件的目录:
hive    --config    /home/houchangren/hive/conf        --hiveconf    hive.root.logger=DEBUG,console










配置hive




可以在运行的时候指定hive-site.xml文件的目录指定对应的配置,这种情况在多个集群中比较方便使用,比如    同时管理5个对应的集群,直接建立5个集群的配置文件夹,运行的时候,直接指定第一个运行


Hive        --conf    /user/hadoop-1/hive-conf/


其他的同样
Hive        --conf    /user/hadoop-2/hive-conf/


Hive还允许你想hive命令传递-hiveconf选项来为单个会话设置属性。




使用伪分布集群
Hive    –hiveconf    fs.default.name=localhost    –hiveconf    mapred.job.tracker=localhost:8021


使用日志在控台显示
Hive    –hiveconf        hive.root.logger=DEBUG,console




还可以在hive的运行会话中set个别自定义属性
hive>    set    hive.enforce.bucketing=ture;
hive>    set    hive.enforce.bucketing;
hive.enforce.buckting=true




set    –v可以显示所有的属性




Hive    set属性优先级命令排序
1.Hive    set    命令
2.命令行    --hiveconf选项
3.hive-site.xmf
4.hive-default.xml
5.hadoop-site.xml(或等价的core-site.xml,        hdfs-site.xml与mapred-site.xml)
6.hadoop-default.xml(或等价的core-default.xml,    hdfs-default.xml以及mapreddefault.xml)

你可能感兴趣的:(hive安装)