Skip to content

Instantly share code, notes, and snippets.

@kbendick
Forked from SureshChaganti/Step 1
Created July 27, 2020 06:41
Show Gist options
  • Save kbendick/a3341525bd8bbaf56fe26d45bd8cc3dc to your computer and use it in GitHub Desktop.
Save kbendick/a3341525bd8bbaf56fe26d45bd8cc3dc to your computer and use it in GitHub Desktop.
Install hive on Mac with Homebrew
$ tar zxvf mysql-connector-java-5.1.44.tar.gz
$ sudo cp mysql-connector-java-5.1.44/mysql-connector-java-5.1.44-bin.jar /usr/local/Cellar/hive/2.1.1/libexec/lib/
$ brew update
$ brew install hadoop
$ brew install hive
$ brew install mysql
# ~/.bashrc
export HADOOP_HOME=/usr/local/Cellar/hadoop/2.8.1
export HIVE_HOME=/usr/local/Cellar/hive/2.1.1/libexec
$ cd /usr/local/Cellar/hive/4.1.1/libexec/conf
$ cp hive-default.xml.template hive-site.xml
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost/metastore</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hiveuser</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>password</value>
</property>
<property>
<name>datanucleus.fixedDatastore</name>
<value>false</value>
</property>
<property>
<name>hive.exec.local.scratchdir</name>
<value>/tmp/hive</value>
<description>Local scratch space for Hive jobs</description>
</property>
<property>
<name>hive.downloaded.resources.dir</name>
<value>/tmp/hive</value>
<description>Temporary local directory for added resources in the remote file system.</description>
</property>
<property>
<name>hive.querylog.location</name>
<value>/tmp/hive</value>
<description>Location of Hive run time structured log file</description>
</property>
<property>
`<name>hive.metastore.schema.verification</name>`
<value>false</value>
<description>Some Description</description>
</property>
run the schematool so that hive will use mysql
./schematool -initSchema -dbType mysql
$hive
hive > show tables;
start My sql with below command:
brew services start mysql
$ mysql
mysql> CREATE DATABASE metastore;
mysql> USE metastore;
mysql> CREATE USER 'hiveuser'@'localhost' IDENTIFIED BY 'password';
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,ALTER,CREATE, REFERENCES, INDEX ON metastore.* TO 'hiveuser'@'localhost';
@kbendick
Copy link
Author

I had to also set the mysql server timezone to UTC via logging into mysql and running SET @@global.time_zone='+00:00';

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment