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_name
MyISAM
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.