How to Set Global SQL Mode on MySQL Clusters

MySQL is an open source, object-relational database built with speed and reliability in mind. Its large and active developer community has created many third-party applications, tools, and libraries that expand MySQL's functionality.

MySQL can operate in different SQL modes. Global SQL modes affect the SQL syntax MySQL supports and the data validation checks it performs. You can add and remove modes as needed, or remove all modes from your cluster if desired.

To set the global SQL mode for a MySQL cluster, find the cluster on the Databases page and then click the cluster's name. From the database's Overview page, click the Settings tab to view the settings for the cluster.

Screenshot of MySQL Cluster settings page

In the Global SQL mode section, you can see the current SQL modes in use. To add or remove modes, click Edit.

Select an available SQL mode from the drop-down menu or start typing the name of a mode to select from the results that match. When finished, click the Save button to apply the changes or the Cancel button to cancel editing. You can click the Reset to the default MySQL 8 SQL modes links to revert to the default settings.

Screenshot of MySQL SQL Mode edit

To remove modes, mouse over the mode you want to remove and then click the “x” icon to remove it from your cluster.

Screenshot of MySQL SQL Mode removal

The default SQL modes for MySQL on Managed Databases are as follows:

  • ANSI (shorthand)
  • ERROR_FOR_DIVISION_BY_ZERO
  • NO_ENGINE_SUBSTITUTION
  • NO_ZERO_DATE
  • NO_ZERO_IN_DATE
  • STRICT_ALL_TABLES
  • ALLOW_INVALID_DATES

See the official MySQL 8 documentation for a full list of supported SQL modes.