sqitch-environment - Environment variables recognized by Sqitch


Sqitch supports a number of environment variables that affect its functionality. This document lists them all, along with brief descriptions of their purposes and pointers to relevant documentation.

Sqitch Environment

Engine Environments

In addition to Sqitch’s environment variables, some of the database engines support environment variables of their own. These are not comprehensive for all variables supported by a database engine, but document those supported by Sqitch’s implementation for each engine.

PostgreSQL, YugabyteDB, CockroachDB

All the usual PostgreSQL environment variables should be implicitly used. However, the following variables are explicitly recognized by Sqitch:


SQLite provides no environment variable support.


Sqitch recognizes and takes advantage of the following MySQL environment variables:


Sqitch’s Oracle engine supports a few environment variables:

In addition, the Oracle engine in Sqitch explicitly overrides the NLS_LANG and SQLPATH environment variables. The former is set to AMERICAN_AMERICA.AL32UTF8 to ensure that all database connections use the UTF-8 encoding. The latter is set to an empty string, to prevent SQL*Plus executing SQL scripts unexpectedly.


The Sqitch Firebird engine supports the following environment variables:


Sqitch provides explicit support for the following Vertica environment variables:


The Sqitch Exasol engine supports no special environment variables. It does, however, override THE SQLPATH environment variable, to prevent EXAplus executing SQL scripts unexpectedly.


Sqitch provides explicit support for the following Snowflake environment variables:

See Also


Part of the sqitch suite.