Functionality added or changed:
Added mysql_set_character_set()
C API
function for setting the default character set of the current
connection. This allows clients to affect the character set
used by mysql_real_escape_string()
. (Bug#8317)
The behaviour of the Last_query_cost
system
variable has been changed. The default value is now 0 (rather
than -1) and it now has session-level scope (rather than being
global). See Sección 5.3.4, “Variables de estado del servidor” for
additional information.
All characters occuring on the same line following the
DELIMITER
keyword will be set as delimiter.
For example, DELIMITER :;
will set
:;
as the delimiter. This behavior is now
consistent between MySQL 5.1 and MySQL 5.0. (Bug#9879)
The table
, type
, and
rows
columns of EXPLAIN
output can now be NULL
. This is required
for using EXPLAIN
on
SELECT
queries that use no tables (i.e.
EXPLAIN SELECT 1
). (Bug#9899)
Placeholders now can be used for LIMIT
in
prepared statements. (Bug#7306)
SHOW BINARY LOGS
now displays a
File_size
column that indicates the size of
each file.
The --delayed-insert
option for
mysqldump has been disabled to avoid
causing problems with storage engines that do not support
INSERT DELAYED
. (Bug#7815)
Improved the optimizer to be able to use indexes for
expressions of the form
and
indexed_col
NOT IN
(val1
,
val2
, ...)
.. (Bug#10561)
indexed_col
NOT BETWEEN
val1
AND
val2
Removed mysqlshutdown.exe
and
mysqlwatch.exe
from the Windows “No
Installer” distribution (they had already been removed
from the “With Installer” distribution before).
Removed those programs from the source distribution.
Removed WinMySQLAdmin
from the source
distribution and from the “No Installer” Windows
distribution (it had already been removed from the “With
Installer” distribution before).
InnoDB
: In stored procedures and functions,
InnoDB
no longer takes full explicit table
locks for every involved table. Only `intention' locks are
taken, similar to those in the execution of an ordinary SQL
statement. This greatly reduces the number of deadlocks.
Bugs fixed:
Security update: A user with
limited privileges could obtain information about the
privileges of other users by querying objects in the
INFORMATION_SCHEMA
database for which that
user did not have the requisite privileges. (Bug#10964)
Triggers with dropped functions caused crashes. (Bug#5893)
Failure of a BEFORE
trigger did not prevent
the triggering statement from performing its operation on the
row for which the trigger error occurred. Now the triggering
statement fails as described in
Sección 20.3, “Utilización de disparadores”. (Bug#10902)
Issuing a write lock for a table from one client prevented
other clients from accessing the table's metadata. For
example, if one client issued a LOCK TABLES
, then a second client attempting to execute a
mydb
.mytable
WRITEUSE
would
hang. (Bug#9998)
mydb
;
The LAST_DAY()
failed to return
NULL
when supplied with an invalid
argument. See Sección 12.5, “Funciones de fecha y hora”. (Bug#10568)
The functions COALESCE()
,
IF()
, and IFNULL()
performed incorrect conversions of their arguments. (Bug#9939)
The TIME_FORMAT()
function returned
incorrect results with some format specifiers. See
Sección 12.5, “Funciones de fecha y hora”. (Bug#10590)
Dropping stored routines when the MySQL server had been
started with --skip-grant-tables
generated
extraneous warnings. (Bug#9993)
A problem with the my_global.h
file
caused compilation of MySQL to fail on single-processor Linux
systems running 2.6 kernels. (Bug#10364)
The ucs2_turkish_ci collation failed with upper('i'). UPPER/LOWER now can return a string with different length. (Bug#8610)
OPTIMIZE of InnoDB table does not return 'Table is full' if out of tablespace. (Bug#8135)
GROUP BY queries with ROLLUP returned wrong results for expressions containing group by columns. (Bug#7894)
Fixed bug in FIELD()
function where value
list contains NULL
. (Bug#10944)
Corrected a problem where an incorrect column type was
returned in the result set metadata when using a prepared
SELECT DISTINCT
statement to select from a
view. (Bug#11111)
Fixed bug in the MySQL Instance manager that caused the
version to always be unknown
when
SHOW INSTANCE STATUS
was issued. (Bug#10229)
Using ORDER BY
to sort the results of an
IF()
that contained a
FROM_UNIXTIME()
expression returned
incorrect results due to integer overflow. (Bug#9669)
Fixed a server crash resulting from accessing
InnoDB
tables within stored functions. This
is handled by prohibiting statements that do an explicit or
explicit commit or rollback within stored functions or
triggers. (Bug#10015)
Fixed a server crash resulting from the second invocation of a
stored procedure that selected from a view defined as a join
that used ON
in the join conditions. (Bug#6866)
Using ALTER TABLE
for a table that had a
trigger caused a crash when executing a statement that
activated the trigger, and also a crash later with
USE
for
the database containing the table. (Bug#5894)
db_name
Fixed a server crash resulting from an attempt to allocate too
much memory when GROUP BY
and
blob_col
COUNT(DISTINCT)
were used. (Bug#11088)
Fixed a portability problem for compiling on Windows with Visual Studio 6. (Bug#11153)
The incorrect sequence of statements HANDLER
without a
preceding tbl_name
READ
index_name
NEXTHANDLER
for an
tbl_name
READ index_name
=
(value_list
)InnoDB
table resulted in a server crash
rather than an error. (Bug#5373)
On Windows, with lower_case_table_names
set
to 2, using ALTER TABLE
to alter a
MEMORY
or InnoDB
table
that had a mixed-case name also improperly changed the name to
lowercase. (Bug#9660)
The server timed out SSL connections too quickly on Windows. (Bug#8572)
Executing LOAD INDEX INTO CACHE
for a table
while other threads where selecting from the table caused a
deadlock. (Bug#10602)
Fixed a server crash resulting from CREATE TABLE ...
SELECT
that selected from a table being altered by
ALTER TABLE
. (Bug#10224)
The FEDERATED
storage engine properly
handled outer joins, but not inner joins. (Bug#10848)
Consistently report INFORMATION_SCHEMA
table names in uppercase in SHOW TABLE
STATUS
output. (Bug#10059)
Fixed a failure of WITH ROLLUP
to sum
values properly. (Bug#10982)
Triggers were not being activated for multiple-table
UPDATE
or DELETE
statements. (Bug#5860)
INSERT BEFORE
triggers were not being
activated for INSERT ... SELECT
statements.
(Bug#6812)
INSERT BEFORE
triggers were not being
activated for implicit inserts (LOAD DATA
).
(Bug#8755)
If a stored function contained a FLUSH
statement, the function crashed when invoked.
FLUSH
now is disallowed within stored
functions. (Bug#8409)
Multiple-row REPLACE
could fail on a
duplicate-key error when having one
AUTO_INCREMENT
key and one unique key. (Bug#11080)
Fixed a server crash resulting from invalid string pointer
when inserting into the mysql.host
table.
(Bug#10181)
Multiple-table DELETE
did always delete on
the fly from the first table that was to be deleted from. In
some cases, when using many tables and it was necessary to
access the same row twice in the first table, we could miss
some rows-to-be-deleted from other tables. This is now fixed.
The mysql_next_result()
function could hang
if you were executing many statements in a
mysql_real_query()
call and one of those
statements raised an error. (Bug#9992)
The combination of COUNT()
,
DISTINCT
, and CONCAT()
sometimes triggered a memory deallocation bug on Windows
resulting in a server crash. (Bug#9593)
InnoDB
: Do very fast shutdown only if
innodb_fast_shutdown=2
, but wait for
threads to exit and release allocated memory if
innodb_fast_shutdown=1
. Starting with
MySQL/InnoDB 5.0.5, InnoDB would do brutal shutdown also when
innodb_fast_shutdown=1
. (Bug#9673)
InnoDB
: Fixed InnoDB: Error:
stored_select_lock_type is 0 inside ::start_stmt()!
in a stored procedure call if
innodb_locks_unsafe_for_binlog
was set in
my.cnf
. (Bug#10746)
InnoDB
: Fixed a duplicate key error that
occurred with REPLACE
in a table with an
AUTO-INC
column. (Bug#11005)
Fixed that MySQL would pass a wrong key length to storage
engines in MIN()
. This could cause warnings
InnoDB: Warning: using a partial-field key prefix in
search.
in the .err
log. (Bug#11039)
Fixed a server crash for INSERT
or
UPDATE
when the WHERE
clause contained a correlated subquery that referred to a
column of the table being modified. (Bug#6384)
Fixed a problem causing an incorrect result for columns that
include an aggregate function as part of an expression when
WITH ROLLUP
is added to GROUP
BY
. (Bug#7914)
Fixed a problem with returning an incorrect result from a view
that selected a COALESCE()
expression from
the result of an outer join. (Bug#9938)
MySQL was adding a DEFAULT
clause to
ENUM
columns that included no explicit
DEFAULT
and were defined as NOT
NULL
. (This is supposed to happen only for columns
that are NULL
.) (Bug#6267)
Corrected inappropriate error messages that were displayed
when attempting to set the read-only
warning_count
and
error_count
system variables. (Bug#10339)
É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.