MySQL Connector/ODBC 5.3.7 has been released

Dear MySQL users,

MySQL Connector/ODBC 5.3.7, a new version of the ODBC driver for
the MySQL database management system, has been released.

The available downloads include both a Unicode driver and an ANSI
driver based on the same modern codebase. Please select the driver type
you need based on the type of your application – Unicode or ANSI.
Server-side prepared statements are enabled by default. It is suitable
for use with any MySQL version from 5.5.

This is the fourth release of the MySQL ODBC driver conforming to the
ODBC 3.8 specification. It contains implementations of key 3.8 features,
including self-identification as a ODBC 3.8 driver, streaming of output
parameters (supported for binary types only), and support of the
SQL_ATTR_RESET_CONNECTION connection attribute (for the Unicode driver
only).

Also, Connector/ODBC 5.3 introduces a GTK+-based setup library
providing a GUI DSN setup dialog on some Unix-based systems, currently
included in the Debian 7/8, EL6/OL6, EL7/OL7 (64-bit only), Fedora 24/25,
FreeBSD 10/11, SLES 12, Ubuntu 12/14/16 packages. Other new
features in the 5.3 driver are FileDSN and Bookmarks support.

The release is now available in source and binary form for a number of
platforms from our download pages at

http://dev.mysql.com/downloads/connector/odbc/5.3.html

For information on installing, please see the documentation at

http://dev.mysql.com/doc/connector-odbc/en/connector-odbc
-installation.html

Enjoy!

The MySQL Connectors team at Oracle

Changes in MySQL Connector/ODBC 5.3.7      (2016-12-13)

Security Notes

* Security Fix: The linked OpenSSL library for
Connector/ODBC Commercial 5.3.7 has been updated from
version 1.0.1q to version 1.0.2j. Versions of OpenSSL
prior to 1.0.2j are reported to be vulnerable to
CVE-2016-6304
(http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-20
16-6304).
This change does not affect the Oracle-produced MySQL
Community build of Connector/ODBC 5.3.7, which uses the
yaSSL library instead. (Bug #24753385, CVE-2016-6304)

Functionality Added or Changed

* A new configuration option, SSL_MODE, has been introduced
for setting the SSL mode of the connection to the server.
This option overrides the now deprecated sslverify and
SSL_ENFORCE options. See Connector/ODBC DSN Configuration
Options
(http://dev.mysql.com/doc/connector-odbc/en/connector-o
dbc-configuration-connection-parameters.html#codbc-dsn-co
nfig-options) for details. (Bug #23497043)

* Added new configuration option NO_TLS_1_0, NO_TLS_1_1,
and NO_TLS_1_2 for controlling TLS versions for
encrypting connecting. See Connector/ODBC DSN
Configuration Options
(http://dev.mysql.com/doc/connector-odbc/en/connector-o
dbc-configuration-connection-parameters.html#codbc-dsn-co
nfig-options) for details. For more information about
connection protocols in MySQL, see Secure Connection
Protocols and Ciphers
(http://dev.mysql.com/doc/refman/5.7/en/secure-connection
-protocols-ciphers.html).
(Bug #23496903)

Bugs Fixed

* An assertion failure occurred when mysql_stmt_close()
(http://dev.mysql.com/doc/refman/5.7/en/mysql-stmt-close.
html) was called on a broken connection. (Bug #25109356)

* Connector/ODBC could not be built with CMake 3.0.2 or
later. The build script has been fixed to correct the
issue. (Bug #22746557)

On behalf on the MySQL RE Team.
-Sreedhar S

MySQL Connector/NET 6.10.0 alpha has been released

MySQL Connector/Net 6.10.0 alpha is the first release to provide Entity
Framework Core 1.1 support and to enable compression in the .NET Core
version of the driver for enhanced cross-platform application
development.To download MySQL Connector/Net 6.10.0 alpha, see the “Development
Releases” tab at http://dev.mysql.com/downloads/connector/net/

Note

Known limitation of this release: DbContext within an application can
emit an unhandled exception. Due to this limitation,

MySQL Connector/Net 6.9.9 is the preferred version to use with EF6.

Functionality Added or Changed

  • Support for compression was extended to the .NET Core version of the driver.
  • Added support for Entity Framework (EF) Core 1.1.

Nuget

Packages are available at:

https://www.nuget.org/packages/MySql.Data/6.10.0-alpha
https://www.nuget.org/packages/MySql.Web/6.10.0-alpha
https://www.nuget.org/packages/MySql.Data.Entity/6.10.0-alpha
https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore/6.10.0-alpha

Enjoy and thanks for the support!

On behalf of the MySQL/Oracle Release Engineering Team
Prashant Tekriwal

MySQL Connector/Python 2.2.2 m3 Development Release has been released

MySQL Connector/Python 2.2.2 M3 is the third development release of the MySQL Connector Python 2.2 series. This series adds support for the new X DevAPI. The X DevAPI enables application developers to write code that combines the strengths of the relational and document models using a modern, NoSQL-like syntax that does not assume previous experience writing traditional SQL.

To learn more about how to write applications using the X DevAPI, see http://dev.mysql.com/doc/x-devapi-userguide/en/index.html. For more information about how the X DevAPI is implemented in MySQL Connector/Python, and its usage, see http://dev.mysql.com/doc/dev/connector-python.

Please note that the X DevAPI requires at least MySQL Server version 5.7.12 or higher with the X Plugin enabled. For general documentation about how to get started using MySQL as a document store, see http://dev.mysql.com/doc/refman/5.7/en/document-store.html.

To download MySQL Connector/Python 2.2.2 M3, see the “Development Releases” tab at http://dev.mysql.com/downloads/connector/python/

We are working on the github upload, it should be available soon.

Enjoy!

Changes in MySQL Connector/Python 2.2.2 (2016-12-01, Milestone 3)
* Functionality Added or Changed

* Bugs Fixed Functionality Added or Changed

* If the MySQL server is configured to support secure connections, Connector/Python now attempts to establish a secure (encrypted) connection by default, falling back to an unencrypted connection otherwise. This is behavior similar to the –ssl-mode=PREFERRED option supported by MySQL client programs.
The following TLS/SSL options have been implemented for the mysqlx URI schema. All require Python 2.7.9 or higher.

+ ssl-enable: This option enforces SSL connections. If given, a connection attempt must be able to establish a secure connection or the attempt fails.

+ ssl-ca: This option is used to verify the server certificate.

+ ssl-cert, ssl-key: These options are used to pass the client certificate and key, but the server currently does not validate the client using these.
The ssl-enable parameter can be specified in a parameter dictionary or URL, like this:
mysqlx.get_session({“user”: “root”, “host”: “localhost”, “port”: 33060,
“password”: “pass”, “ssl-enable”: True})
Or:
mysqlx.get_session(“mysqlx://root:pass@localhost?ssl-enable”)

The other parameters are used similarly. In a URL, path name values should be given within parentheses; for example, ssl-cert=(path_name). (Bug #24954646)

* There is now a standard API to create a table: Schema objects have a create_table function. It throws an error if the table exists.

* For any method that takes a value list of parameters for its argument, there is now more flexibility with how the parameters can be specified: Either as a value list or a list of individual parameters. For example, these method calls are the same:
Collection.add([{“a”: 27}, {“a”: 28}])
Collection.add({“a”: 27}, {“a”: 28})
* For Schema objects, get_view, create_view, alter_view,
and drop_view functions were added to support retrieval,
create, alter, and drop operations on View objects.

* Unix domain socket files are now supported as a connection transport. The socket file can be specified in a parameter dictionary or URL, like this:
mysqlx.get_session({“user”: “root”, “password”: “pass”,
“socket”: “/path/to/socket”})
Or:
mysqlx.get_session(“mysqlx://user:pass@(/path/to/sock)/schema”)
mysqlx.get_session(“mysqlx://user:pass@/path%2Fto%2Fsock/schema”)
mysqlx.get_session(“mysqlx://user:pass@.%2Fpath%2Fto%2Fsock/schema”)
mysqlx.get_session(“mysqlx://user:pass@..%2Fpath%2Fto%2Fsock/schema”)

Bugs Fixed

* For a user created with REQUIRE SSL, establishing an SSL connection by specifying –ssl-key but not –ssl-ca or
–ssl-cert fails for standard MySQL client programs. The same connection configuration was (improperly) permitted in Connector/Python. (Bug #24953032)

* Connection failures due to an improper SSL CA resulted in an uninformative error message. (Bug #24948054)

* Using a schema object to alter a view failed if the view selected from a non-INFORMATION_SCHEMA table and it was altered to select from an INFORMATION_SCHEMA table. (Bug
#24947078)

* schema.create_collection() with an empty collection name threw an improper error. (Bug #24520850)

Documentation
——————–

Online:http://dev.mysql.com/doc/connector-python/en/index.html The source distribution includes the manual in various formats under the docs/ folder.

Reporting Bugs
——————–

We welcome and appreciate your feedback and bug reports:
http://bugs.mysql.com/

On Behalf of the MySQL/ORACLE RE Team,
Balasubramanian Kandasamy

MySQL Connector/Node.js 1.0.5 m4 development has been released

MySQL Connector/Node.js is a new Node.js driver for use with the X DevAPI. This release, v1.0.5 M4, is the fourth development release of the MySQL Connector/Node.js 1.0 series.

The X DevAPI enables application developers to write code that combines the strengths of the relational and document models using a modern, NoSQL-like syntax that does not assume previous experience writing traditional SQL.

To learn more about how to write applications using the X DevAPI, see
http://dev.mysql.com/doc/x-devapi-userguide/en/index.html. For more information about how the X DevAPI is implemented in MySQL Connector/Node.js, and its usage, see http://dev.mysql.com/doc/dev/connector-nodejs.

Note

Please note that the X DevAPI requires at least MySQL Server version 5.7.12 or higher with the X Plugin enabled. For general documentation about how to get started using MySQL as a document store, see
http://dev.mysql.com/doc/refman/5.7/en/document-store.html.

Functionality Added or Changed

  • Added APIs for Transaction handling.
  • Added a Table creation API.

Enjoy and thanks for the support!

On behalf of the MySQL/Oracle Release Engineering Team
Piotr Obrzut

MySQL Connector/NET 7.0.6 m5 development has been released

MySQL Connector/Net 7.0.6 is the third development release that expands cross-platform support to Linux and OS X when using Microsoft’s .NET Core framework. Now,
.NET developers can use the X DevAPI with .NET Core and Entity Framework Core
(EF Core) 1.0 to create server applications that run on Windows, Linux and OS X.
We are very excited about this change and really look forward to your feedback on it!

MySQL Connector/Net 7.0.6 is also the fifth development release of MySQL Connector/Net to add support for the new X DevAPI. The X DevAPI enables
application developers to write code that combines the strengths of the
relational and document models using a modern, NoSQL-like syntax that
does not assume previous experience writing traditional SQL.

To learn more about how to write applications using the X DevAPI, see
http://dev.mysql.com/doc/x-devapi-userguide/en/index.html. For more
information about how the X DevAPI is implemented in Connector/Net, see
http://dev.mysql.com/doc/dev/connector-net.

Note

The X DevAPI requires at least MySQL Server version 5.7.12 or higher with
the X Plugin enabled. For general documentation about how to get started
using MySQL as a document store, see
http://dev.mysql.com/doc/refman/5.7/en/document-store.html.

To download MySQL Connector/Net 7.0.6 M5, see the “Development
Releases” tab at http://dev.mysql.com/downloads/connector/net/

Functionality Added or Changed

  • X DevAPI: The SessionConfig class, SessionConfigManager class, and IpersistenceHandler interface were added for session-configuration management to represent all the information associated with a session.
  • EF Core: Added all-platform compliance support for the .NET Framework stack (Console, WPF, WinForms, and ASP.NET) and compatibility with ASP.NET 5 when using the .NET Framework or .NET Core version.
    Changes in MySQL Connector/Net 7.0.6 (2016-10-28)
  • Added the following functionality for saving changes in EF Core:
    • Basic save operation to persist entity-instance changes to the database.
    • Optimistic concurrency to protect against overwriting changes made by another user after data was fetched from the database.

Bugs Fixed

  • EF Core: A missing function used when a model is added or changed caused the migration generation to fail. MySQLHistoryRepository now implements get_existssql(). (Bug #24804771)
  • EF Core: An SQL syntax error was emitted when the Contains operator was used in the Where predicate of a LINQ query. This fix requires the use of EF Core version
    1.1 or later. (Bug #24797524)
  • An Entity Framework DbContext object created with a column of type DateTimeOffset returned an error indicating that DateTimeOffset values were incompatible with DateTime and Timestamp values. (Bug #24732001)
  • X DevAPI: The GetCollections(), GetTable(), and GetTables() methods threw
    System.InvalidOperationException: name is not a valid column name in the row. (Bug #24385662)

Nuget

Packages are available at:

https://www.nuget.org/packages/MySql.Data/7.0.6-IR31
https://www.nuget.org/packages/MySql.Web/7.0.6-IR3
https://www.nuget.org/packages/MySql.Data.Entity/7.0.6-IR3
https://www.nuget.org/packages/MySql.Data.EntityFrameworkCore/7.0.6-IR31 

Enjoy and thanks for the support!

On behalf of the MySQL/Oracle Release Engineering Team

MySQL Connector/Python 2.0.5 GA has been released

Dear MySQL users,

MySQL Connector/Python 2.0.5 GA is a new GA version of 2.0 release series of the pure Python database driver for MySQL. It can be used for production environments.

MySQL Connector/Python version 2.0.5 is compatible with MySQL Server versions 5.5 and greater. Python 2.6 and greater as well as Python 3.3 and greater are supported. Python 2.4, 2.5 and 3.1, 3.2 are not supported.

MySQL Connector/Python 2.0.5 is available for download from:
http://dev.mysql.com/downloads/connector/python/#downloads

The ChangeLog file included in the distribution contains a brief summary of changes in MySQL Connector/Python 2.0.5. For a more complete list of changes, see below or online at:
http://dev.mysql.com/doc/relnotes/connector-python/en/

Changes in MySQL Connector/Python 2.0.5 (2016-10-26)

Bugs Fixed

* A potential SQL injection vector was eliminated. (Bug #22529828, Bug #24816150)

Documentation
————-
The manual of MySQL Connector/Python is available online here:
http://dev.mysql.com/doc/connector-python/en/index.html

It is also available for download in various formats here:
http://dev.mysql.com/doc/index-connectors.html

Reporting Bugs
————–
We welcome and appreciate your feedback and bug reports:
http://bugs.mysql.com/

Enjoy !

On behalf of the MySQL Connector/Python and the MySQL/ORACLE RE Team
Hery Ramilison

MySQL Connector/C++ 2.0.3 m3 Development Release has been released

MySQL Connector/C++ 2.0.3 is the next development milestone of the MySQL Connector/C++ 2.0 series, and the first public release. Apart from covering more X DevAPI features, it adds a new, plain C API, called XAPI, that offers functionality similar to X DevAPI to applications written in plain C. Thus, not only can MySQL Connector/C++ be used to write C++ applications, as before.

Now, using the XAPI, MySQL Connector/C++ can be used to write plain C applications to access MySQL Database implementing a document store as well as execute traditional plain SQL statements. For more information about XAPI, refer to the documentation at http://dev.mysql.com/doc/dev/connector-cpp/xapi_ref.html.

To learn more about how to write applications using the X DevAPI, see X DevAPI User Guide (http://dev.mysql.com/doc/x-devapi-userguide/en/). For more information about how to use Connector/C++ 2.0 and how the X DevAPI is implemented in it, see http://dev.mysql.com/doc/dev/connector-cpp/.

Note

The X DevAPI requires at least MySQL Server version 5.7.12 or higher with the X Plugin enabled. For general documentation about how to get started using MySQL as a document store, see Using MySQL as a Document Store (http://dev.mysql.com/doc/refman/5.7/en/document-store.html).

To download MySQL Connector/C++ 2.0.3 m3, see the “Development Releases” tab at http://dev.mysql.com/downloads/connector/cpp/

X DevAPI Notes

New X DevAPI features added in this MySQL Connector/C++ release:

  • Methods for starting and controlling transactions
  • Using an X DevAPI URI or connection string to specify new session parameters
  • Capability of binding a session to the default shard and execute SQL statements there (using XSession.bindToDefaultShard())
  • Methods for counting elements in a table or collection
  • Access to multiple result sets if present in a query result
  • Methods to count items in a result set and fetch a complete result set at once (using fetchAll()), instead of accessing items one by one (using fetchOne())
  • Access to warnings reported when processing a statement (getWarnings())
  • Access to information about affected rows, generated auto-increment values, and identifiers of documents added to a collection

On Behalf of the MySQL/ORACLE RE Team

MySQL Connector/J 6.0.5 m4 Development Release has been released

Dear MySQL users,

MySQL Connector/J 6.0.5 m4 Development Release is a developer milestone
release for the 6.0.x series.
This release includes the following new features and changes, also described
in more detail on
http://dev.mysql.com/doc/relnotes/connector-j/6.0/en/news-6-0-5.html.

As always, we recommend that you check the “CHANGES” file in the download
archive to be aware of changes in behavior that might affect your application.

To download MySQL Connector/J 6.0.5 M4, see the “Development
Releases” tab at http://dev.mysql.com/downloads/connector/j/

Enjoy!

Changes in MySQL Connector/J 6.0.5 (2016-10-19, Milestone 4)

Version 6.0.5 Milestone is the forth development release of
the 6.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, and 5.7. It supports the Java
Database Connectivity (JDBC) 4.2 API.

Functionality Added or Changed

* Added support for the error codes of two MySQL server
errors, ER_XA_RBTIMEOUT
(http://dev.mysql.com/doc/refman/5.7/en/error-messages-se
rver.html#error_er_xa_rbtimeout) and ER_XA_RBDEADLOCK
(http://dev.mysql.com/doc/refman/5.7/en/error-messages-se
rver.html#error_er_xa_rbdeadlock). (Bug #13702433, Bug
#64188)

* X DevAPI: Client-side failover is now supported. It is
enabled by specifying multiple hosts in the X DevAPI
connection URL. See X DevAPI URL Format for more details.

* com.mysql.cj.core.MysqlType can now be used as
java.sql.SQLType in JDBC methods.

* X DevAPI: A new method, createTable(), has been added to
the Schema interface. See MySQL Connector/J X DevAPI
Reference (http://dev.mysql.com/doc/dev/connector-j/) for
details.

* X DevAPI: A new method, bindToDefaultShard(), has been
added to the XSession interface. It creates a “virtual”
NodeSession instance, which shares the connection to the
router with the XSession that was used to create it. See
MySQL Connector/J X DevAPI Reference
(http://dev.mysql.com/doc/dev/connector-j/) for details.

* X DevAPI: For any function that takes a value list of
parameters for its argument, there is now more
flexibility with how the parameters are to be specified:
they can now be supplied either as a value list or a list
of individual parameters.

* The Extension interface has been removed. Extension
classes now implement their own interfaces.

Bugs Fixed

* In certain cases, the exception interceptor was being
triggered twice in the internal SQLException factory
method. Also, if the exception interceptor returned an
exception with the cause already initialized, the same
factory method would fail to initialize the cause again,
and the real cause for the exception remained uncaptured.
(Bug #23743956)

* getLength() returned -1 for fields of the LONGBLOBL,
LONGTEXT, and GEOMETRY data types. This is due to the way
these data types are handled by protocol buffers, and
this fix makes the method return the right values. (Bug
#22988922)

* A memory leakage occurred when the connection properties
cachePrepStmts and useServerPrepStmts were both set to be
true and server-side prepared statements were set as
non-poolable, which resulted in the prepared statement
being not closable by the client, and the number of
prepared statements then kept on increasing.
When the memory leakage described above occurred, it did
not make Connector/J fail, as Connector/J switched to
using client-side prepared statements when the maximum
number of prepared statements was reached. However, when
rewriteBatchedStatements was also set to true, the switch
to client-side prepared statements did not occur, and
Connector/J threw the MySQLSyntaxErrorException (“Can’t
create more than max_prepared_stmt_count statements”)
when the client wanted to create more prepared statements
than allowed.
This fix corrected the way prepared statements are
handled in order to avoid both of the problems described
above. (Bug #22954007, Bug #80615)

* ResultSet.getString() sometimes returned garbled data for
columns of the JSON data type. This was because JSON data
was binary encoded by MySQL using the utf8mb4 character
set, but decoded by Connector/J using the ISO-8859-1
character set. This patch fixes the decoding for JSON
data. Thanks to Dong Song Ling for contributing to the
fix. (Bug #22891845, Bug #80631)

* When Connector/J retrieved the value of a BIT column as a
string using, for example, getString(), it returned the
wrong string if the BIT value happened to be equivalent
to the decimal value of some ASCII character. This was
because Connector/J treated the BIT value as a character
code; thus, for example, the value “01100001” (decimal 97
in binary) was interpreted as the character “a” (whose
ASCII value in decimal is 97), which was returned by the
function. This fix corrected the parsing behavior of
Connector/J on BIT values, so that a string
representation of the number (“97” in the last example)
is returned by getString(). (Bug #21938551, Bug #78685)

* When the connection property useLocalTransactionState was
set to “true” and autocommit was set to “false” on the
server, if any exception was thrown, any further calls
for rollback() or commit() were not sent to the server.
It was because when there was an exception while
executing a query, Connector/J lost the information
regarding the server’s transaction state. This patch
fixes this issue by preserving the previous transaction
state for the current connection when any exception is
thrown. (Bug #20212882, Bug #75209)

* An invalid connection URL caused Connector/J to throw a
NullPointerException. With this fix, an SQLException is
thrown instead in the situation. (Bug #18759269, Bug
#72632)

* When a very large amount of compressed data is
transmitted from the server to the client and under very
special circumstances, a CommunicationsException might
occur. It happened when a single compressed packet from
the server was not big enough to provide an entire
uncompressed packet to the client side. With this fix,
Connector/J reads as many compressed packets as necessary
to fill the size of the uncompressed packet that was
being requested. Thanks to Ryosuke Yamazaki for
contributing to the fix. (Bug #11756431, Bug #48346)

Documentation
————–
Online: http://dev.mysql.com/doc/connector-j/6.0/en/index.html

Reporting Bugs
—————
We welcome and appreciate your feedback and bug reports:
http://bugs.mysql.com/

On behalf of the MySQL Release Team
-Sreedhar S