Mac hive安装



1、下载apache-Hive-1.2.1-bin.tar.gz

2、解压到/Users/xiaoph/Documents/java/hive/​apache-hive-1.2.1-bin

3、环境变量配置

export HIVE_HOME=​/Users/xiaoph/Documents/java/hive/​apache-hive-1.2.1-bin

export PATH=$HIVE_HOME/bin:$PATH

4、​确定你的hadoop环境里,hdfs-site.xml里的dfs.replication的值是1,否则会报拒绝链接的错误。

  <property>

        <name>dfs.replication</name>

        <value>1</value>

    </property>

5、​下载  mysql-connector-Java-5.1.42-bin.jar ,并且copy到你的hive下的lib里,  /Users/xiaoph/Documents/java/hive/​apache-hive-1.2.1-bin/lib

6、进入hive的lib目录​

cp conf/hive-env.sh.template  conf/hive-env.sh

添加配置信息:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home

export HADOOP_HOME=/Users/xiaoph/Documents/java/hadoop/hadoop-2.6.2

export HIVE_HOME=/Users/xiaoph/Documents/java/hive/apache-hive-1.2.1-bin

:wq! 保存退出

7、修改log4j文件
cp hive-log4j.properties.template hive-log4j.properties

将EventCounter修改成org.apache.hadoop.log.metrics.EventCounter

#log4j.appender.EventCounter=org.apache.hadoop.hive.shims.HiveEventCounter

log4j.appender.EventCounter=org.apache.hadoop.log.metrics.EventCounter



​8、touch hive-site.xml   vi

配置信息:

<configuration>

        <property>

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

                <value>jdbc:mysql://localhost:3306/hivedb?createDatabaseIfNotExist=true&amp;useUnicode=true&amp;characterEncoding=UTF-8</value>

               <description>数据库链接地址</description>

        </property>

        <property>

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

                <value>com.mysql.jdbc.Driver</value>

                <description>数据库驱动类</description>

        </property>

        <property>

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

                <value>root</value>

                <description>数据库用户名</description>

        </property>

        <property>

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

                <value>root</value>

                <description>数据库密码</description>

        </property>

</configuration>

:wq!保存退出

9、mysql -u root -p 给用户赋予权限,以使得该用户可以远程登录数据库:

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

FLUSH PRIVILEGES;

10、​如果是第一次启动Hive,则需要先执行如下初始化命令:

   schematool -dbType mysql -initSchema

11、hive

----------------------------------------------------------------------------------------------------------------

注意:如果启动报错

(1)、Found class jline.Terminal, but interface was​

  说明 hadoop中存在旧版的jline,把hive中的jline拷贝到hadoop中

​cp /Users/xiaoph/Documents/java/hive/apache-hive-1.2.1-bin/lib/jline-2.12.jar /Users/xiaoph/Documents/java/hadoop/hadoop-2.6.2/share/hadoop/yarn/lib/

(2)、Duplicate key name 'PCS_STATS_IDX'

这个错误是因为,执行schematool -initSchema -dbType mysql的时候,hivedb数据库表里已经存在表了,所以在库里吧所有的表都删除了,再执行命令。

(3)、

org.apache.hadoop.security.AccessControlException: org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode="jing":jing:supergroup:rwxr-xr-x

这个时候是因为,在你的hadoop里安全模式是开着的,所以

hdfs-site.xml里的dfs.replication的值是1

 <property>

        <name>dfs.replication</name>

        <value>1</value>

    </property>

重新格式化,再重启hadoop
<think>嗯,用户想在MacBook上安装Hive,我得先想想怎么一步步指导他们。首先,Hive需要依赖Hadoop和Java环境,所以应该先检查这些前提条件是否满足。 用户可能已经安装了Java,但版本是否合适呢?可能需要确认是JDK8或者更高版本。可以用java -version命令检查。如果没有安装,得告诉他们怎么安装,比如通过Homebrew或者Oracle官网下载。 接下来是HadoopHive通常运行在Hadoop之上,所以用户需要先安装配置Hadoop。如果用户是新手,可能对Hadoop的单机模式或伪分布式模式不太熟悉,可能需要简单说明或者提供参考链接。 然后是下载Hive的稳定版本,比如3.1.2。用户可能需要从官网或镜像下载,解压到合适的目录,比如/usr/local。这时候要注意权限问题,可能需要使用sudo或者调整目录权限。 配置环境变量部分,要修改.bash_profile或者.zshrc,添加HIVE_HOME和PATH。用户可能不熟悉如何编辑这些文件,需要给出具体的命令示例,比如用vim或者nano。 Hive的配置文件hive-site.xml,可能需要配置元数据存储的位置。默认使用Derby数据库的话,用户需要注意Derby是单用户模式,不适合多任务。如果用户需要多会话,可能需要切换到MySQL这样的数据库,但这一步可能会比较复杂,需要额外指导,比如安装MySQL、下载JDBC驱动、配置XML文件等。 初始化Derby数据库时,用户需要运行schematool,这里可能会遇到错误,比如权限问题或者配置错误,得提醒用户注意错误信息,并检查配置是否正确。 最后,启动Hive命令行测试,如果成功,说明安装基本完成。用户可能会遇到Hadoop路径问题,或者内存不足的情况,需要提示他们检查Hadoop配置和内存设置。 另外,用户可能不了解Derby的限制,如果需要在生产环境使用,可能需要建议他们使用MySQL,但这会增加安装的复杂性。可能还需要提到Hive的日志位置,方便用户排查问题。 整体结构需要分步骤,清晰明了,避免使用专业术语过多,同时给出具体的命令和配置示例,方便用户复制粘贴。可能还需要在最后给出验证安装是否成功的方法,以及常见问题的解决办法,比如ClassNotFound错误或连接问题。</think>以下是在MacBook上安装Apache Hive的详细步骤: --- ### 一、安装前准备 1. **依赖环境检查** - 确认已安装Java 8+: ```bash java -version ``` - 确认已安装Hadoop(推荐Hadoop 3.x): ```bash hadoop version ``` 2. **创建安装目录** ```bash sudo mkdir -p /usr/local/hive sudo chown -R $(whoami) /usr/local/hive ``` --- ### 二、下载并解压Hive 1. **下载Hive稳定版** ```bash wget https://downloads.apache.org/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz ``` 2. **解压到目标目录** ```bash tar -xzvf apache-hive-3.1.2-bin.tar.gz -C /usr/local/hive --strip-components 1 ``` --- ### 三、配置环境变量 1. **编辑`.bash_profile`或`.zshrc`** ```bash vim ~/.bash_profile ``` 2. **添加以下内容** ```bash export HIVE_HOME=/usr/local/hive export PATH=$HIVE_HOME/bin:$PATH ``` 3. **生效配置** ```bash source ~/.bash_profile ``` --- ### 四、配置Hive元数据存储 1. **创建Hive配置文件** ```bash cd $HIVE_HOME/conf cp hive-default.xml.template hive-site.xml ``` 2. **配置`hive-site.xml`(关键参数)** ```xml <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:derby:;databaseName=/usr/local/hive/metastore_db;create=true</value> </property> ``` --- ### 五、初始化元数据库 ```bash schematool -dbType derby -initSchema ``` --- ### 六、验证安装 1. **启动Hive CLI** ```bash hive ``` 2. **执行测试命令** ```sql SHOW DATABASES; ``` --- ### 七、常见问题处理 1. **Derby数据库冲突** - 错误提示:`AlreadyExistsException` - 解决方法:删除旧元数据目录 ```bash rm -rf /usr/local/hive/metastore_db ``` 2. **Hadoop路径问题** - 错误提示:`HADOOP_HOME not set` - 解决方法:在`hive-env.sh`中添加 ```bash export HADOOP_HOME=/path/to/hadoop ``` --- ### 八、进阶配置(可选) - **使用MySQL替代Derby** 1. 安装MySQL并创建hive数据库 2. 下载MySQL JDBC驱动到`$HIVE_HOME/lib` 3. 修改`hive-site.xml`中JDBC连接配置 --- ### 备注 - Hive默认日志路径:`/tmp/<username>/hive.log` - 内存不足时可调整`hive-env.sh`中的`HADOOP_HEAPSIZE` - 生产环境建议使用远程元数据库(如MySQL/PostgreSQL)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值