Using Utilities

View as Markdown

HeavyDB includes the utilities initdb for database initialization and generate_cert for generating certificates and private keys for an HTTPS server.

initdb

Before using HeavyDB, initialize the data directory using initdb:

$initdb [-f | --skip-geo] $HEAVYAI_BASE/storage

This creates three subdirectories:

  • catalogs: Stores HeavyDB catalogs
  • data: Stores HeavyDB data
  • log: Contains all HeavyDB log files.
  • disk_cache: Stores the data cached by HEAVY COnnect

The -f flag forces initdb to overwrite existing data and catalogs in the specified directory.

By default, initdb adds a sample table of geospatial data. Use the --skip-geo flag if you prefer not to load sample geospatial data.

generate_cert

$generate_cert [{-ca} <bool>]
$ [{-duration} <duration>]
$ [{-ecdsa-curve} <string>]
$ [{-host} <host1,host2>]
$ [{-rsa-bits} <int>]
$ [{-start-date} <string>]

This command generates certificates and private keys for an HTTPS server. The options are:

  • [{-ca} <bool>]: Whether this certificate should be its own Certificate Authority. The default is false.
  • [{-duration} <duration>]: Duration that the certificate is valid for. The default is 8760h0m0s.
  • [{-ecdsa-curve} <string>]: ECDSA curve to use to generate a key. Valid values are P224, P256, P384, P521.
  • [{-host} <string>]: Comma-separated hostnames and IPs to generate a certificate for.
  • [{-rsa-bits} <int>]: Size of RSA key to generate. Ignored if –ecdsa-curve is set. The default is 2048.
  • [{-start-date} <string>]: Start date formatted as Jan 1 15:04:05 2011