Version 8.0.9 Release Candidate is the first release candidate of the 8.0 branch of MySQL Connector/J, providing an insight into upcoming features. It is suitable for use with MySQL Server versions 5.5, 5.6, 5.7, and 8.0. It supports the Java Database Connectivity (JDBC) 4.2 API.
X DevAPI: In the process of refining the definition of the X DevAPI to cover the most relevant usage scenarios, the following API components have been removed from the X DevAPI implementation for Connector/J:
Components that support DDLs for views, including the
Components that support DDLS for tables, including the
Components that support session configurations, including the
PasswordHandlerinterface, and the
X DevAPI: Added the
releaseSavepoint()methods to the
Sessioninterface to support the SAVEPOINT, ROLLBACK TO SAVEPOINT, and RELEASE SAVEPOINT statements. See MySQL Connector/J X DevAPI Reference for more details.
X DevAPI: A new
patch()function has been added to the
ModifyStatementinterface. The function accepts an JSON-like object describing document changes and applies them to documents matched by the
modify()filter. See MySQL Connector/J X DevAPI Reference for more details.
X DevAPI: The
createIndex()method for the
Collectioninterface now has a new syntax. See MySQL Connector/J X DevAPI Reference for more details.
X DevAPI: Added the following methods for single-document operations in the X DevAPI:
See MySQL Connector/J X DevAPI Reference for more details.
X DevAPI: Setters and getters methods have been added for the configuration properties with the
X DevAPI: The connection property
enabledTLSProtocolscan now be used to select the allowed TLS versions for an X Protocol connection to the server.
Connector/J now supports the new
caching_sha2_passwordauthentication plugin, which is the default authentication plugin for MySQL 8.0.4 and later (see Caching SHA-2 Pluggable Authentication for details).Note
To authenticate accounts with the
caching_sha2_passwordplugin, either a secure connection to the server using SSL or an unencrypted connection that supports password exchange using an RSA key pair (enabled by setting one or both of the connecting properties
serverRSAPublicKeyFile) must be used.
Because earlier versions of Connector/J 8.0 do not support the
caching_sha2_passwordauthentication plugin and therefore will not be able to connect to accounts that authenticate with the new plugin (which might include the root account created by default during a new installation of a MySQL 8.0 Server), it is highly recommended that you upgrade now to Connector/J 8.0.9, to help ensure that your applications continue to work smoothly with the latest MySQL 8.0 Server.
Connector/J now takes advantage of the MySQL Server 8.0 data dictionary by making the connection property
useInformationSchematrue by default; this makes Connector/J, by default, access the data dictionary more efficiently by querying tables in the INFORMATION_SCHEME. See INFORMATION_SCHEMA and Data Dictionary Integration for details. Users can still set useInformationSchema to false; but for MySQL 8.0.3 and later, some data dictionary queries might then fail, due to deprecations of older data dictionary features.
In the past, query texts were always passed as strings to
QueryInterceptormethods, even if the texts were not actually used by them. Now, only suppliers for the texts are passed, and the texts are only extracted by
get()calls on the suppliers.
The connection property
nullNamePatternMatchesAll, when set to false (which was the default value), caused some
DatabaseMetaDatamethods to throw an error when a null search string was used with them. The behavior was not compliant with the JDBC specification, which requires that a search criterion be ignored when a null search string is used for it. The connection property has now been removed from Connector/J 8.0. (Bug #26846249, Bug #87826)
Trying to print the query in a
toString()method after it has been closed resulted in an exception (No operations allowed after statement closed) being thrown. (Bug #26748909)
When working with MySQL Server 8.0, an update or delete statement for a
ResultSetfailed when the
ResultSet's primary keys included a boolean column and the character set used was not
latin1. (Bug #26266731)
Connector/J failed to recognize a server greeting error it received during a handshake with the server and parsed the error message as a normal greeting packet, causing an ArrayIndexOutOfBoundsException to be thrown. (Bug #24924097)