Docs: Features

This section describes Skeema’s interactions with each type of database object, and other topics relating to Skeema’s features.

Database object types

The free open source Skeema Community Edition CLI supports declarative management of tables and routines (stored procedures and functions). It does not interact with other types of objects, such as views or triggers. Their presence won’t break anything; Skeema Community Edition will simply ignore them entirely.

Our paid products – Skeema Premium Edition CLI and Skeema Cloud Linter SaaS – include full support for managing views and triggers.

Sequences, which only exist in MariaDB, cannot be managed by Skeema yet. This may be added in the future if there is sufficient community interest.

Database users, privilege grants, and roles must be managed externally from Skeema. It is possible that Skeema may provide declarative diff support for these as a future direction, but not in the near term. Likewise, Skeema cannot currently manage global variables (database server configuration settings).

Object TypeNotes
TablesDescribes all edge cases with storage engines, foreign keys, compression, partitioning, etc
RoutinesStored procedures and functions
ViewsPremium feature only
TriggersPremium feature only
EventsPremium feature only (added in Skeema v1.12)
Sequences (MariaDB)Ignored by Skeema (not supported yet / must be managed externally)
Users / grants / rolesMust be managed externally
Global server variablesMust be managed externally

Skeema features and additional topics

Safety ChecksAdjusting linter options, unsafe modification detection, and diff verification
Online Schema ChangeAltering tables without disrupting query workloads
WorkspacesConfiguring the location of a temporary database for testing and introspecting CREATE statements
Ignore Regex OptionsSetting options to skip database objects by name pattern
Seed DataTracking seed data INSERTs in your schema repo (Premium feature)
DefinersRestricting or stripping DEFINER clauses in stored objects
SSL/TLS CertificatesUsing encrypted connections and configuring certificates
SSH TunnelsConfiguring SSH tunnels through a bastion host, database server, or both (Premium feature)
ShardingMapping a single schema subdirectory to multiple databases