MySQL Connector/Python packages are now available in two formats: Pure Python packages that contain only Python files, and packages that contain the Python files plus the C Extension and C Protobuf extension. Exception platforms are Solaris, macOS, and Windows, for which packages containing the Python files and C extensions are available but not pure Python packages. (Bug #26648417)
MySQL Connector/Python now supports connections to MySQL accounts that use the
caching_sha2_password
authentication plugin (see Caching SHA-2 Pluggable Authentication). This requires MySQL server version 8.0.3 or higher. It also requires use of a secure connection because Connector/Python does not support RSA encryption for password exchange. (WL #11073)-
MySQL Connector/Python now supports an
auth
connection option to specify the authentication methanism. Permitted values areplain
,mysql41
, andexternal
. The option name and value are not case sensitive.If the authentication mechanism is not specified, it defaults to
plain
for secure (TLS) or Unix socket connections, ormysql41
for insecure connections. (WL #10771) -
MySQL Connector/Python now supports a pure Python implementation of Protobuf. Consequently, the Protobuf C extension has become optional. Connector/Python will use the Python implementation if the C extension is not available. The Protobuf Python package is required if it is desired not to use the C extension.
The version requirements are Protobuf C++ 2.6.0 or higher, Protobuf Python 3.0.0 or higher. (WL #10899)
A
mysqlx.sessions
variable is now exposed to scripts that can be used for session-related tasks such as saving or loading session configuration information. (WL #10053)These methods have been added for
Collection
:add_or_replace_one()
,get_one()
,replace_one()
, andremove_one()
. (WL #10975)These methods have been added for
FindStatement
andSelectStatement
, to enable shared and exclusive locks to be acquired:lock_shared()
andlock_exclusive()
. (WL #10974)-
There is support for new forms of comparisons that use the
IN
operator:item IN list item IN document path dict IN dict
The left-hand-side value must be castable to the
JSON
type. (WL #10973)