What Is New in MariaDB 11.3
MariaDB 11.3 is a short-term support release packed with incremental improvements and new features. It builds upon the foundation of previous versions with a focus on optimizer enhancements, security, and developer experience.
| Category | Key Changes |
|---|---|
| New Features | Generated Columns for JSON, System-Versioned Tables, SQL/JSON constructors |
| Optimizer | Condition Pushdown improvements, New Optimizer Switches |
| Security | OpenSSL 3.0 Support, Authentication Improvements |
| Deprecations & Removals | Deprecated system variables, Removal of InnoDB system tables |
| Bug Fixes | Numerous fixes across replication, storage engines, and utilities |
What are the major SQL and developer feature updates?
The SQL engine gets more powerful with new ways to handle JSON and table versioning. This release introduces functions to construct JSON documents directly from SQL queries, making it easier to work with modern application data.
Generated columns now support JSON functions, allowing you to automatically create computed columns from JSON data. System-versioned tables let you track the entire history of row changes, which is useful for auditing or point-in-time analysis.
Example: JSON Constructor
class="code-block rounded">SELECT JSON_OBJECT('name', name, 'department', dept) AS employee_data FROM employees;
How has the query optimizer improved?
Query performance gets a boost through smarter condition pushdown and new optimizer controls. The engine can now push more types of conditions down to the storage engine level, reducing the amount of data that needs to be processed in higher layers.
New optimizer switches like condition_pushdown_for_derived give DBAs finer control over how queries
are executed. In practice, this means complex joins and subqueries can run significantly faster without any
application code changes.
What security enhancements were introduced?
MariaDB 11.3 updates its cryptographic foundation to OpenSSL 3.0, bringing support for newer algorithms and security standards. This matters because it ensures compatibility with current security requirements and future-proofs your deployment.
The authentication process has been refined with improvements to the ed25519 plugin and other internal mechanisms. These changes make the connection handshake more robust against certain types of network-based attacks.
What has been deprecated or removed?
Several older features have been deprecated to streamline the codebase and improve maintainability. The InnoDB
system tables (innodb_index_stats, innodb_table_stats) have been removed entirely in
favor of using the Data Dictionary.
System variables like large-pages and query-response-time-range are now deprecated. You
should check your configuration files and scripts to ensure they don't rely on these soon-to-be-removed options.
FAQ
Should I upgrade my production database to MariaDB 11.3?
MariaDB 11.3 is a short-term support
release. For production systems requiring long-term stability, consider the latest LTS version instead. Use 11.3
for testing new features or in development environments.
How do the JSON constructor functions work?
They allow building JSON objects and arrays
directly in SQL queries. Functions like JSON_OBJECT() and JSON_ARRAY() take key-value
pairs or values and return formatted JSON, eliminating the need for application-side JSON construction for
simple cases.
What are the benefits of system-versioned tables?
They automatically maintain a history of
all row changes. You can query data as it appeared at any point in time without implementing custom auditing
logic, which is valuable for compliance and debugging data changes.
Is OpenSSL 3.0 mandatory for MariaDB 11.3?
While not mandatory, it is the recommended and
tested cryptographic library for this release. Using OpenSSL 3.0 ensures you have the latest security patches
and algorithm support.
What should I do about the deprecated InnoDB system tables?
If you have scripts or tools that
query innodb_index_stats or innodb_table_stats, you need to update them to use the
Data Dictionary tables instead. The migration path should be planned before upgrading.