Functionality added or changed:
An attempt to create a TIMESTAMP column
with a display width (for example,
TIMESTAMP(6)) now results in a warning.
Display widths have not been supported for
TIMESTAMP since MySQL 4.1. (Bug#10466)
InnoDB: When creating or extending an
InnoDB data file, at most one megabyte at a time is allocated
for initializing the file. Previously, InnoDB allocated and
initialized 1 or 8 megabytes of memory, even if only a few
16-kilobyte pages were to be written. This improves the
performance of CREATE TABLE in
innodb_file_per_table mode.
InnoDB: Various optimizations. Removed
unreachable debug code from non-debug builds. Added hints for
the branch predictor in gcc. Made
assertions occupy less space.
InnoDB: Make
innodb_thread_concurrency=20 by default.
Bypass the concurrency checking if the setting is greater than
or equal to 20.
InnoDB: Make CHECK TABLE
killable. (Bug#9730)
Recursion in stored routines is now disabled because it was crashing the server. We plan to modify stored routines to allow this to operate safely in a future release. (Bug#11394)
The handling of BIT columns has been
improved, and should now be much more reliable in a number of
cases. (Bug#10617, Bug#11091, Bug#11572)
Bugs fixed:
SHOW CREATE VIEW did not take the
ANSI MODE into account when quoting
identifiers. (Bug#6903)
The mysql_config script did not handle
symbolic linking properly. (Bug#10986)
Incorrect results when using GROUP BY ... WITH
ROLLUP on a VIEW. (Bug#11639)
Instances of the VAR_SAMP() function in
view definitions were converted to
VARIANCE(). This is incorrect because
VARIANCE() is the same as
VAR_POP(), not
VAR_SAMP(). (Bug#10651)
mysqldump failed when reloading a view if the view was defined in terms of a different view that had not yet been reloaded. mysqldump now creates a dummy table to handle this case. (Bug#10927)
mysqldump could crash for illegal or nonexistent table names. (Bug#9358)
The --no-data option for
mysqldump was being ignored if table names
were given after the database name. (Bug#9558)
The --master-data option for
mysqldump resulted in no error if the
binary log was not enabled. Now an error occurs unless the
--force option is given. (Bug#11678)
DES_ENCRYPT() and
DES_DECRYPT() require SSL support to be
enabled, but were not checking for it. Checking for incorrect
arguments or resource exhaustion was also improved for these
functions. (Bug#10589)
When used in joins, SUBSTRING() failed to
truncate to zero any string values that could not be converted
to numbers. (Bug#10124)
mysqldump --xml did not format
NULL column values correctly. (Bug#9657)
There was a compression algorithm issue with
myisampack for very large datasets (where
the total size of of all records in a single column was on the
order of 3 GB or more) on 64-bit platforms. (A fix for other
platforms was made in MySQL 5.0.6.) (Bug#8321)
Temporary tables were created in the data directory instead of
tmpdir. (Bug#11440)
MySQL would not compile correctly on QNX due to missing
rint() function. (Bug#11544)
A SELECT DISTINCT
would work
correctly with a col_nameMyISAM table only when
there was an index on col_name.
(Bug#11484)
The server would lose table-level CREATE
VIEW and SHOW VIEW privileges
following a FLUSH PRIVILEGES or server
restart. (Bug#9795)
In strict mode, an INSERT into a view that
did not include a value for a NOT NULL
column but that did include a WHERE test on
the same column would succeed, This happened even though the
INSERT should have been prevented due to
the failure to supply a value for the NOT
NULL column. (Bug#6443)
Running a CHECK TABLES on multiple views
crashed the server. (Bug#11337)
When a table had a primary key containing a
BLOB column, creation of another index
failed with the error BLOB/TEXT column used in key
specification without keylength, even when the new
index did not contain a BLOB column. (Bug#11657)
NDB Cluster: When trying to open a table that could not be discovered or unpacked, cluster would return error codes which the MySQL server falsely interpreted as operating system errors. (Bug#103651)
Manually inserting a row with host='' into
mysql.tables_priv and performing a
FLUSH PRIVILEGES would cause the server to
crash. (Bug#11330)
A cursor using a query with a filter on a
DATE or DATETIME column
would cause the server to crash server after the data was
fetched. (Bug#11172)
Closing a cursor that was already closed would cause MySQL to hang. (Bug#9814)
Using CONCAT_WS on a column set
NOT NULL caused incorrect results when used
in a LEFT JOIN. (Bug#11469)
Signed BIGINT would not accept
-9223372036854775808 as a
DEFAULT value. (Bug#11215)
Views did not use indexes on all appropriate queries. (Bug#10031)
For MEMORY tables, it was possible for for
updates to be performed using outdated key statistics when the
updates involved only very small changes in a very few rows.
This resulted in the random failures of queries such as
UPDATE t SET col = col + 1 WHERE col_key =
2; where the same query with no
WHERE clause would succeed. (Bug#10178)
Optimizer performed range check when comparing unsigned integers to negative constants, could cause errors. (Bug#11185)
Wrong comparison method used in VIEW when
relaxed date syntax used (i.e. 2005.06.10).
(Bug#11325)
The ENCRYPT() and
SUBSTRING_INDEX() functions would cause
errors when used with a VIEW. (Bug#7024)
Clients would hang following some errors with stored procedures. (Bug#9503)
Combining cursors and subselects could cause server crash or memory leaks. (Bug#10736)
If a prepared statement cursor is opened but not completely fetched, attempting to open a cursor for a second prepared statement will fail. (Bug#10794)
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.
