My personal and professional life

2020-07-20

MySQL 8.0.21 released

On Monday (July 13-th) Oracle released MySQL 8.0.21 server and related products, which is the next maintenance release from the 8.0 series that does not contain many new features for developers. The ones I spotted are the following.

New JSON function JSON_VALUE

There is new, SQL 2016 standard function JSON_VALUE, which is the same as calling CAST(JSON_UNQUOTE( JSON_EXTRACT(json_doc, path) ) AS type). It makes code shorter and clearer as well as more standards compliant, but the direct effect is that it simplifies creation of indexes on JSON fields by removing the need for generated columns.

Safer LOAD DATA LOCAL INFILE on clients

The problem with this command was that the server could request any file (see security considerations), so now there is the option load-data-local-dir with which clients could define what is allowed. I hope support for the command would now be integrated in Workbench, so that remote data loads are faster.

MySQL Shell

There is now support for JSON schema validation through the X DevAPI with the validation JSON object to ensure a certain structure of the documents being created or updated in a collection. See more in JSON Schema Validation article of X DevAPI's User Guide or in Shell's release notes.

MySQL Workbench

The new version comes with syntax support for various 8.0.19 and 8.0.20 server language features. This fixes bugs 98263 and 98266 which I reported.

There are of course many other new features and improvements as well as bug fixes for which you could read in details into the release notes and if you care only for the highlights then check out the article in the MySQL Server Blog.