This section documents all changes and bug fixes applied since the release of 1.4.0. It is also the first non-labs release of the 1.4.x branch.
Functionality Added or Changed
--license parameter was added to
display the license text, and the
parameter was updated to show the license type.
An Installer package (DMG) was added for Mac OS X.
A workaround was to compile the MySQL Utilities from source. (Bug #17347424, Bug #70123)
The mysqlfrm utility now has the ability to
produce a valid
.frm file with the storage
engine changed for any table that can be read by the
.frm Reader in default mode. This ability
requires you to specify
--frmdir (used to create and place .frm
files, and the directory must exist).
Performance improvements, including multiprocessing support, was added to the mysqldbexport, mysqldbimport and mysqldbcopy utilities. Performance improvements include:
Multiprocessing by database for non-POSIX systems (Microsoft
Windows) and by table for POSIX systems, using the new
--output-file parameter was added
to store the export results instead of using the (slower)
standard output. Export results are now always sent to a
file, and only to stdout and the end if required.
Multiprocessing by file (independent of the operating
system), using the new
Perform only a single COMMIT at the end of importing each
file, by default. A new
option was added to allow each statement to be committed
upon its execution.
The bulk insert feature was improved (supports SQL
statements). If the
is enabled, then all INSERT statements are parsed and their
data aggregated (if possible) in order to be executed as a
--max-bulk-insert option was added
to control the maximum size of the bulk insert, in order to
avoid broken pipe errors. When the maximum number of INSERT
statements is reached, then a new bulk insert is created.
Multiprocessing by database for non POSIX systems (Microsoft
Windows) and by table for POSIX systems, using the new
Remove/disable the previous thread feature.
Checks are now made to force that a MySQL server belongs to a single group. (Bug #17929077, Bug #71125)
The Backspace key did not function in the mysqluc utility. (Bug #17909223)
The mysqlmetagrep utility now emits an informative notice if an unsupported object type is passed in, such as "--search-objects=function" or "--object-types=function", when before it threw an unhandled exception. (Bug #17908146)
The mysqlfailover utility threw an unexpected exception when a non-existent slave was specified in the slaves list. (Bug #17903944)
The required version of Connector/Python is now v1.0.8 or greater. (Bug #17864266)
Attempting to use the mysqldbcopy utility to copy a database with one or more blob fields failed, and emit an error such as "TypeError: not all arguments converted during string formatting". (Bug #17722274)
On Microsoft Windows, the mysqlfabric script
would not execute easily due to it missing a file extension. The
file is now named
A workaround was to pass the script to a python executable, such
(Bug #17639666, Bug #70694)
With Fabric, the checkpoint routine could cause deadlocks. (Bug #17633546, Bug #71127)
The help for the
mysqldbexport utility parameter was improved
to clarify that a destination/slave server cannot be specified
The mysqldbcopy and mysqldbexport utilities were creating views before user-defined functions or procedures. As result, the copy or export failed if at least one of the views was using user-defined functions or procedures. Now, the functions and procedures are processed before the views. (Bug #17622298, Bug #70648)
On Microsoft Windows, starting Fabric could hang due to insufficient resources when used with a 32-bit build of Python on a 64-bit Windows system. Error handling was also improved for related use cases. (Bug #17592301, Bug #71128)
On Microsoft Windows, attempting to install the MySQL Utilities from
source failed, as
setup.py required a
(Bug #17555531, Bug #70512)
Improvements were made to the mysqldbcopy MUT tests. (Bug #17548335)
Error reporting in the mysqluc utility was improved to clarify which utilities are generating the errors. (Bug #17510350)
The mysqlauditadmin utility would unnecessarily set "audit_log_flush = ON" during a rotate operation. (Bug #17475780)
The mysqldbcopy utility could emit an error and exit when cloning a database with foreign key constraints that pointed to multiple tables. (Bug #17474810)
The mysqlindexcheck utility now informs the user when there was not enough data collected to produce a list of "best" and "worst" queries, when before it would seemingly ignore the table. (Bug #17457402, Bug #70339)
On Microsoft Windows, the
parameter of the mysqlfabric utility did not
(Bug #17454423, Bug #71126)
In MUT, the 'drop database' functionality is now centralized and reused throughout MUT, when before it was defined in multiple files. (Bug #17423074)
On Microsoft Windows, the mysqluc utility would crash after clicking the home button in MySQL Workbench. (Bug #17415167)
The Debian MySQL Utilities packages could not be installed if the installed Connector/Python package had a different license type, as the license type of both packages had to be identical. It is now possible to install a commercial version of Connector/Python with a GPL version of MySQL Utilities, or vice-versa. (Bug #17393742)
When MySQL Utilities was installed using the RPM package, it was not possible to upgrade with a newer version, or change the license type from another RPM package to another without manually removing the installed package. (Bug #17393523)
After executing the mysqluserclone utility
without the optional
which then attempted to use the default credentials, an
unhandled exception would be thrown if the default credentials
were invalid. The
--source parameter is now
login-path feature, as set in
.mylogin.cnf, did not allow for login paths
with special characters, such as dashes.
When the mysqlfailover connection to the master was killed, occasionally it caused an automatic fail over. mysqlfailover will now attempt to reconnect to the master, and after 3 attempts it will assume that the master is down. The connection to the master is not maintained between the reporting intervals. (Bug #17066910, Bug #69213)
The mysqlserverinfo utility parsed error messages raised during the server connection, which could suggest actions that the user could take to fix the errors, such as using the start option when the server was offline. The error numbers are now used for the same purpose instead of parsing the error messages. (Bug #16386941)
server_info_errors test was unable to
execute successfully on Microsoft Windows, and was temporary
disabled. It is now enabled again, and was adjusted to function
The mysqlserverinfo utility output did not display information about the error, general, slow query. and audit log files. (Bug #14181681)
The mysqlserverclone utility did not check if
the server passed to the
was local to the machine that
mysqlserverclone was being executed on.
The mysqlprocgrep utility did not provide an
option to search and kill processes by ID. The
--match-id parameter was added, which
searches processes by ID and allows them to be killed by ID.
--body parameter of the
mysqlmetagrep utility now supports views.
--character-set option was added to
utilities that allow the user to define the client character set
used for the MySQL connection, such as
mysqldbimport. If this option is not
provided, then the character set retrieved from the MySQL Server
character_set_client is used.