6. Validating the Installation

Use the following steps to validate your installation:

  1. Initialize the Hive Metastore database schema:

    $HIVE_HOME/bin/schematool -initSchema -dbType $databaseType

    The value for $databaseType can be derby, mysql, oracle, mssql, or postgres.

    $HIVE_HOME is by default configured to usr/hdp/current/hive.

  2. Turn off autocreation of schemas. Edit hive-site.xml to set the value of datanucleus.autoCreateSchema to false:

         <description>Creates necessary schema on a startup if one doesn't exist</ description>
  3. Start the Hive Metastore service.

    su - hive nohup /usr/hdp/current/hive-metastore/bin/hive --service metastore>/var/log/hive/hive.out 2>/var/log/hive/hive.log &


    You may receive the following error after running the su - hive command:

    su hive This account is currently not available.

    If you get this error, you may need to reassign the $HIVE_USER shell. You can confirm this by looking for the following line in etc/passwd:


    This indicates that the $HIVE_USER is assigned to the sbin/nologin shell, which blocks access. You can use the following command to assign the $HIVE_USER to the bin/bash shell.

    sudo chsh -s /bin/bash hive

    This command should return the following:

    Changing shell for hive. Shell changed.

    You should then be able to successfully run the su $HIVE_USER command.

  4. Smoke test Hive.

    • Open Hive command line shell by entering the following in a terminal window:


    • Run sample commands:

      show databases;create table test(col1 int, col2 string); show tables;

  5. Start HiveServer2:

    • su - hive
      /usr/hdp/current/hive-server2/bin/hiveserver2 >/var/log/hive/hiveserver2.out 2> /var/log/hive/hiveserver2.log &
  6. Smoke test HiveServer2:

    • Open Beeline command line shell to interact with HiveServer2:

    • Establish connection to server:

       !connect jdbc:hive2://$hive.server.full.hostname:10000 $HIVE_USERpassword org.apache.hive.jdbc.HiveDriver
    • Run sample commands:

      show databases; create table test2(a int, b string); show tables;

loading table of contents...