2010.08.20

MySQL

MySQL Community Server 5.1.50がリリースされました

オリジナル版:http://dev.mysql.com/doc/refman/5.1/en/news-5-1-50.html


最も普及しているオープンソースデータベース管理システムの新バージョンMySQL Community Server 5.1.50がリリースされました。MySQL 5.1.50は、プロダクションシステムでの使用をお勧めします。

MySQL 5.1の新機能の概要については、以下を参照してください。

http://dev.mysql.com/doc/refman/5.1/en/mysql-nutshell.html


新たなサーバにMySQL 5.1.50をインストール、または以前のMySQLリリースからMySQL 5.1.50にアップグレードする際の情報については、以下を参照してください。

http://dev.mysql.com/doc/refman/5.1/en/installing.html


下記のダウンロードページから、MySQLサーバのソースコード及び多数のプラットフォーム用バイナリが入手可能です

http://dev.mysql.com/downloads/


現時点ですべてのミラーサイトが最新であるとは限らないことに注意してください。
あるミラーサイトで本バージョンを見つけることができない場合は、後日再確認を行うか、別のダウンロード・サイトを選択してください。


フィードバック、バグレポート、バグ修正、パッチ等の情報をお待ちしておりますので、以下のページをご利用ください。

http://forge.mysql.com/wiki/Contributing


MySQL 5.1に関するオープンな問題の情報については、以下のエラッタリストを参照してください。

 http://dev.mysql.com/doc/refman/5.1/en/open-bugs.html


以下のセクションは、MySQL5.1の前リリース以降のMySQLソースコードの変更を記載しています。これはオンラインでも閲覧可能です:

http://dev.mysql.com/doc/refman/5.1/en/news-5-1-48.html


以下は、追加または変更された機能です。

    InnoDB Notes:

* InnoDB Plugin has been upgraded to version 1.0.11. This
version is considered of General Availability (GA) quality.
In this release, the InnoDB Plugin is included in source and
binary distributions, except RHEL3, RHEL4, SuSE 9 (x86,
x86_64, ia64), generic Linux RPM packages, and any builds
produced with the icc compiler. It also does not work for
FreeBSD 6 and HP-UX or for Linux on generic ia64.

Bugs fixed:

* Important Change: Replication: The LOAD DATA INFILE statement
is now considered unsafe for statement-based replication. When
using statement-based logging mode, the statement now produces
a warning; when using mixed-format logging, the statement is
made using the row-based format.
(Bug#34283: http://bugs.mysql.com/bug.php?id=34283)

* Partitioning: UPDATE and INSERT statements affecting
partitioned tables performed poorly when using row-based
replication.
(Bug#52517: http://bugs.mysql.com/bug.php?id=52517)

* Partitioning: INSERT ON DUPLICATE KEY UPDATE statements
performed poorly on tables having many partitions. This was
because the handler function for reading a row from a specific
index was not optimized in the partitioning handler.
(Bug#52455: http://bugs.mysql.com/bug.php?id=52455)

* The server could crash on shutdown, if started with
--innodb-use-system-malloc=0.
(Bug#55581: http://bugs.mysql.com/bug.php?id=55581)

* GROUP BY operations used max_sort_length inconsistently.
(Bug#55188: http://bugs.mysql.com/bug.php?id=55188)

* Building MySQL on Solaris 8 x86 failed when using Sun Studio
due to gcc inline assembler code.
(Bug#55061: http://bugs.mysql.com/bug.php?id=55061)

* In debug builds, an assertion could be raised when the server
tried to send an OK packet to the client after having failed
to detect errors during processing of the WHERE condition of
an UPDATE statement.
(Bug#54734: http://bugs.mysql.com/bug.php?id=54734)

* The database server could crash when renaming a table that had
active transactions. (This issue only affected the database
server when built for debugging.)
(Bug#54453: http://bugs.mysql.com/bug.php?id=54453)

* The server could crash during the recovery phase of startup,
if it previously crashed while inserting BLOB or other large
columns that use off-page storage into an InnoDB table created
with ROW_FORMAT=REDUNDANT or ROW_FORMAT=COMPACT.
(Bug#54408: http://bugs.mysql.com/bug.php?id=54408)

* For an InnoDB table created with ROW_FORMAT=COMPRESSED or
ROW_FORMAT=DYNAMIC, a query using the READ UNCOMMITTED
isolation level could cause the server to stop with an
assertion error, if BLOB or other large columns that use
off-page storage were being inserted at the same time.
(Bug#54358: http://bugs.mysql.com/bug.php?id=54358)

* A client could supply data in chunks to a prepared statement
parameter other than of type TEXT or BLOB using the
mysql_stmt_send_long_data() C API function (or
COM_STMT_SEND_LONG_DATA command). This led to a crash because
other data types are not valid for long data.
(Bug#54041: http://bugs.mysql.com/bug.php?id=54041)

* mysql_secure_installation did not properly identify local
accounts and could incorrectly remove nonlocal root accounts.
(Bug#54004: http://bugs.mysql.com/bug.php?id=54004)

* Transactions could be incorrectly committed during recovery,
rather than rolled back, if the server crashed and was
restarted after performing ALTER TABLE...ADD PRIMARY KEY on an
InnoDB table, or some other operation that involves copying
the entire table.
(Bug#53756: http://bugs.mysql.com/bug.php?id=53756)

* Portability problems in SHOW STATUS could lead to incorrect
results on some platforms.
(Bug#53493: http://bugs.mysql.com/bug.php?id=53493)

* Builds of MySQL generated a large number of warnings.
(Bug#53445: http://bugs.mysql.com/bug.php?id=53445)

* With lower_case_table_names set to a nonzero value, searches
for table or database names in INFORMATION_SCHEMA tables could
produce incorrect results.
(Bug#53095: http://bugs.mysql.com/bug.php?id=53095)

* The ABI check for MySQL failed to compile with gcc 4.5.
(Bug#52514: http://bugs.mysql.com/bug.php?id=52514)

* mysql_secure_installation sometimes failed to locate the mysql
client. (Bug#52274: http://bugs.mysql.com/bug.php?id=52274)

* Reading a ucs2 data file with LOAD DATA INFILE was subject to
three problems. 1) Incorrect parsing of the file as ucs2 data,
resulting in incorrect length of the parsed string. This is
fixed by truncating the invalid trailing bytes (incomplete
multibyte characters) when reading from the file. 2) Reads
from a proper ucs2 file did not recognize newline characters.
This is fixed by first checking whether a byte is a newline
(or any other special character) before reading it as a part
of a multibyte character. 3) When using user variables to hold
column data, the character set of the user variable was set
incorrectly to the database charset. This is fixed by setting
it to the character set specified in the LOAD DATA INFILE
statement, if any.
(Bug#51876: http://bugs.mysql.com/bug.php?id=51876)

* Searches in INFORMATION_SCHEMA tables for rows matching a
nonexistent database produced an error instead of an empty
query result.
(Bug#49542: http://bugs.mysql.com/bug.php?id=49542)

* On FreeBSD, memory mapping for MERGE tables could fail if
underlying tables were empty.
(Bug#47139: http://bugs.mysql.com/bug.php?id=47139)

* The my_like_range_xxx() functions returned badly formed
maximum strings for Asian character sets, which caused
problems for storage engines.
(Bug#45012: http://bugs.mysql.com/bug.php?id=45012)

* A debugging assertion could be raised after a write failure to
a closed socket.
(Bug#42496: http://bugs.mysql.com/bug.php?id=42496)

* An assertion failure occurred within yaSSL for very long keys.
(Bug#29784: http://bugs.mysql.com/bug.php?id=29784)
See also Bug#53463: http://bugs.mysql.com/bug.php?id=53463.