Environment Schemas Setting
Published 15 January 2025
Description
Case-sensitive list of schemas managed by Flyway.
Flyway will attempt to create these schemas if they do not already exist, and will clean them in the order of this list. If Flyway automatically created them, then the schemas themselves will be dropped when cleaning.
If defaultSchema
is not specified, the first schema in this list also acts as the default schema, which is where the schema history table will be placed.
For diff or prepare operations these will be the schemas used in the comparison (except in the case of SQL Server where this parameter will be ignored).
Type
String array
Default
[]
Usage
Flyway Desktop
This can be set from the connection dialog for all databases other than SQL Server, where schemas should not be specified.
Command-line
./flyway -schemas="schema1,schema2" info
To configure a named environment via command line when using a TOML configuration, prefix schemas
with
environments.{environment name}.
for example:
./flyway "-environments.sample.schemas=schema1,schema2" info
TOML Configuration File
[environments.default]
schemas = ["schema1", "schema2"]
Configuration File
flyway.schemas=schema1,schema2
Environment Variable
FLYWAY_SCHEMAS=schema1,schema2
API
Flyway.configure()
.schemas("schema1", "schema2")
.load()
Gradle
flyway {
schemas = ['schema1', 'schema2']
}
Maven
<configuration>
<schemas>
<schema>schema1</schema>
<schema>schema2</schema>
</schemas>
</configuration>