📄 manual_news.html
字号:
<li><strong>MySQL</strong> now always reports the conflicting key values when a duplicate
key entry occurs. (Before this was only reported for <code>INSERT</code>). </li>
<li>New syntax: <code>INSERT INTO tbl_name SET col_name=value,col_name=value,...</code> </li>
<li>Most errors in the <tt>`.err'</tt> log are now prefixed with a time stamp. </li>
<li>Added option <code>MYSQL_INIT_COMMAND</code> to <code>mysql_options()</code> to make a
query on connect or reconnect. </li>
<li>Added option <code>MYSQL_READ_DEFAULT_FILE</code> and <code>MYSQL_READ_DEFAULT_GROUP</code>
to <code>mysql_options()</code> to read the following parameters from the <strong>MySQL</strong>
option files: <code>port</code>, <code>socket</code>, <code>compress</code>, <code>password</code>,
<code>pipe</code>, <code>timeout</code>, <code>user</code>, <code>init-command</code>, <code>host</code>
and <code>database</code>. </li>
<li>Added <code>maybe_null</code> to the UDF structure. </li>
<li>Added option <code>IGNORE</code> to <code>INSERT</code> statemants with many rows. </li>
<li>Fixed some problems with sorting of the koi8 character sets; Users of koi8 <strong>MUST</strong>
run <code>isamchk -rq</code> on each table that has an index on a <code>CHAR</code> or <code>VARCHAR</code>
column. </li>
<li>New script <code>mysql_setpermission</code>, by Luuk de Boer, allows one to easily
create new users with permissions for specific databases. </li>
<li>Allow use of hexadecimal strings (0x...) when specifying a constant string (like in the
column separators with <code>LOAD DATA INFILE</code>). </li>
<li>Ported to OS/2 (thanks to Antony T. Curtis <a href="mailto:antony.curtis@olcs.net">antony.curtis@olcs.net</a>).
</li>
<li>Added more variables to <code>SHOW STATUS</code> and changed format of output to be like
<code>SHOW VARIABLES</code>. </li>
<li>Added <code>extended-status</code> command to <code>mysqladmin</code> which will show
the new status variables. </li>
</ul>
<h3><a href="manual_toc.html#News-3.22.9" name="News-3.22.9">D.2.20 Changes in release
3.22.9</a></h3>
<ul>
<li><code>SET SQL_LOG_UPDATE=0</code> caused a lockup of the server. </li>
<li>New SQL command: <code>FLUSH [ TABLES | HOSTS | LOGS | PRIVILEGES ] [, ...]</code> </li>
<li>New SQL command: <code>KILL</code> <code>thread_id</code>. </li>
<li>Added casts and changed include files to make <strong>MySQL</strong> easier to compile
on AIX and DEC OSF1 4.x </li>
<li>Fixed conversion problem when using <code>ALTER TABLE</code> from a <code>INT</code> to
a short <code>CHAR()</code> column. </li>
<li>Added <code>SELECT HIGH_PRIORITY</code>; This will get a lock for the <code>SELECT</code>
even if there is a thread waiting for another <code>SELECT</code> to get a <code>WRITE
LOCK</code>. </li>
<li>Moved wild_compare to string class to be able to use <code>LIKE</code> on <code>BLOB</code>/<code>TEXT</code>
columns with <code>\0</code>. </li>
<li>Added <code>ESCAPE</code> option to <code>LIKE</code>. </li>
<li>Added a lot more output to <code>mysqladmin debug</code>. </li>
<li>You can now start <code>mysqld</code> on Win32 with the <code>--flush</code> option.
This will flush all tables to disk after each update. This makes things much safer on
NT/Win98 but also <strong>MUCH</strong> slower. </li>
</ul>
<h3><a href="manual_toc.html#News-3.22.8" name="News-3.22.8">D.2.21 Changes in release
3.22.8</a></h3>
<ul>
<li>Czech character sets should now work much better. You must also install <a
href="ftp://www.mysql.com/pub/mysql/Downloads/Patches/czech-3.22.8-patch">ftp://www.mysql.com/pub/mysql/Downloads/Patches/czech-3.22.8-patch</a>.
This patch should also be installed if you are using a character set with uses <code>my_strcoll()</code>!
The patch should always be safe to install (for any system), but as this patch changes
ISAM internals it's not yet in the default distribution. </li>
<li><code>DATE_ADD()</code> and <code>DATE_SUB()</code> didn't work with group functions. </li>
<li><code>mysql</code> will now also try to reconnect on <code>USE DATABASE</code> commands.
</li>
<li>Fix problem with <code>ORDER BY</code> and <code>LEFT JOIN</code> and <code>const</code>
tables. </li>
<li>Fixed problem with <code>ORDER BY</code> if the first <code>ORDER BY</code> column was a
key and the rest of the <code>ORDER BY</code> columns wasn't part of the key. </li>
<li>Fixed a big problem with <code>OPTIMIZE TABLE</code>. </li>
<li><strong>MySQL</strong> clients on NT will now by default first try to connect with named
pipes and after this with TCP/IP. </li>
<li>Fixed a problem with <code>DROP TABLE</code> and <code>mysqladmin shutdown</code> on
Win32 (a fatal bug from 3.22.6). </li>
<li>Fixed problems with <code>TIME columns</code> and negative strings. </li>
<li>Added an extra thread signal loop on shutdown to avoid some error messages from the
client. </li>
<li><strong>MySQL</strong> now uses the next available number as extension for the update
log file. </li>
<li>Added patches for UNIXWARE 7. </li>
</ul>
<h3><a href="manual_toc.html#News-3.22.7" name="News-3.22.7">D.2.22 Changes in release
3.22.7</a></h3>
<ul>
<li>Added <code>LIMIT</code> clause for the <code>DELETE</code> statement. </li>
<li>You can now use the <code>/*! ... */</code> syntax to hide <strong>MySQL</strong>-specific
keywords when you write portable code. <strong>MySQL</strong> will parse the code inside
the comments as if the surrounding <code>/*!</code> and <code>*/</code> comment characters
didn't exist. </li>
<li><code>OPTIMIZE TABLE tbl_name</code> can now be used to reclaim disk space after many
deletes. Currently, this uses <code>ALTER TABLE</code> to re-generate the table, but in
the future it will use an integrated <code>isamchk</code> for more speed. </li>
<li>Upgraded <code>libtool</code> to get the configure more portable. </li>
<li>Fixed slow <code>UPDATE</code> and <code>DELETE</code> operations when using <code>DATETIME</code>
or <code>DATE</code> keys. </li>
<li>Changed optimizer to make it better at deciding when to do a full join and when using
keys. </li>
<li>You can now use <code>mysqladmin proc</code> to display information about your own
threads. Only users with the <strong>Process_priv</strong> privilege can get information
about all threads. </li>
<li>Added handling of formats <code>YYMMDD</code>, <code>YYYYMMDD</code>, <code>YYMMDDHHMMSS</code>
for numbers when using <code>DATETIME</code> and <code>TIMESTAMP</code> types. (Formerly
these formats only worked with strings.) </li>
<li>Added connect option <code>CLIENT_IGNORE_SPACE</code> to allow use of spaces after
function names and before <samp>`('</samp> (Powerbuilder requires this). This will make
all function names reserved words. </li>
<li>Added the <code>--log-long-format</code> option to <code>mysqld</code> to enable
timestamps and INSERT_ID's in the update log. </li>
<li>Added <code>--where</code> option to <code>mysqldump</code> (patch by Jim Faucette). </li>
<li>The lexical analyzer now uses ``perfect hashing'' for faster parsing of SQL statements. </li>
</ul>
<h3><a href="manual_toc.html#News-3.22.6" name="News-3.22.6">D.2.23 Changes in release
3.22.6</a></h3>
<ul>
<li>Faster <code>mysqldump</code>. </li>
<li>For the <code>LOAD DATA INFILE</code> statement, you can now use the new <code>LOCAL</code>
keyword to read the file from the client. <code>mysqlimport</code> will automatically use <code>LOCAL</code>
when importing with the TCP/IP protocol. </li>
<li>Fixed small optimize problem when updating keys. </li>
<li>Changed makefiles to support shared libraries. </li>
<li><strong>MySQL</strong>-NT can now use named pipes, which means that you can now use <strong>MySQL</strong>-NT
without having to install TCP/IP. </li>
</ul>
<h3><a href="manual_toc.html#News-3.22.5" name="News-3.22.5">D.2.24 Changes in release
3.22.5</a></h3>
<ul>
<li>All table lock handing is changed to avoid some very subtle deadlocks when using <code>DROP
TABLE</code>, <code>ALTER TABLE</code>, <code>DELETE FROM TABLE</code> and <code>mysqladmin
flush-tables</code> under heavy usage. Changed locking code to get better handling of
locks of different types. </li>
<li>Updated <code>DBI</code> to 1.00 and <code>DBD</code> to 1.2.0. </li>
<li>Added a check that the error message file contains error messages suitable for the
current version of <code>mysqld</code>. (To avoid errors if you accidentally try to use an
old error message file.) </li>
<li>All count structures in the client (<code>affected_rows()</code>, <code>insert_id()</code>,...)
are now of type <code>BIGINT</code> to allow 64-bit values to be used. This required a
minor change in the <strong>MySQL</strong> protocol which should affect only old clients
when using tables with <code>AUTO_INCREMENT</code> values > 24M. </li>
<li>The return type of <code>mysql_fetch_lengths()</code> has changed from <code>uint *</code>
to <code>ulong *</code>. This may give a warning for old clients but should work on most
machines. </li>
<li>Change <code>mysys</code> and <code>dbug</code> libraries to allocate all thread
variables in one struct. This makes it easier to make a threaded <tt>`libmysql.dll'</tt>
library. </li>
<li>Use the result from <code>gethostname()</code> (instead of <code>uname()</code>) when
constructing <tt>`.pid'</tt> file names. </li>
<li>New better compressed server/client protocol. </li>
<li><code>COUNT()</code>, <code>STD()</code> and <code>AVG()</code> are extended to handle
more than 4G rows. </li>
<li>You can now store values in the range <code>-838:59:59</code> <= x <= <code>838:59:59</code>
in a <code>TIME</code> column. </li>
<li><strong>WARNING: INCOMPATIBLE CHANGE!!</strong> If you set a <code>TIME</code> column to
too short a value, <strong>MySQL</strong> now assumes the value is given as: <code>[[[D
]HH:]MM:]SS</code> instead of <code>HH[:MM[:SS]]</code>. </li>
<li><code>TIME_TO_SEC()</code> and <code>SEC_TO_TIME()</code> can now handle negative times
and hours up to 32767. </li>
<li>Added new option <code>SET OPTION SQL_LOG_UPDATE={0|1}</code> to allow users with the <strong>process</strong>
privilege to bypass the update log. (Modified patch from Sergey A Mukhin <a
href="mailto:violet@rosnet.net">violet@rosnet.net</a>.) </li>
<li>Fixed fatal bug in <code>LPAD()</code>. </li>
<li>Initialize line buffer in <tt>`mysql.cc'</tt> to make <code>BLOB</code> reading from
pipes safer. </li>
<li>Added <code>-O max_connect_errors=#</code> option to <code>mysqld</code>. Connect errors
are now reset for each correct connection. </li>
<li>Increased the default value of <code>max_allowed_packet</code> to <code>1M</code> in <code>mysqld</code>.
</li>
<li>Added <code>--low-priority-updates</code> option to <code>mysqld</code>, to give
table-modifying operations (<code>INSERT</code>, <code>REPLACE</code>, <code>UPDATE</code>,
<code>DELETE</code>) lower priority than retrievals. You can now use <code>{INSERT |
REPLACE | UPDATE | DELETE} LOW_PRIORITY ...</code> You can also use <code>SET OPTION
SQL_LOW_PRIORITY_UPDATES={0|1}</code> to change the priority for one thread. One side
effect is that <code>LOW_PRIORITY</code> is now a reserved word. :( </li>
<li>Add support for <code>INSERT INTO table ... VALUES(...),(...),(...)</code>, to allow
inserting multiple rows with a single statement. </li>
<li><code>INSERT INTO tbl_name</code> is now also cached when used with <code>LOCK TABLES</code>.
(Previously only <code>INSERT ... SELECT</code> and <code>LOAD DATA INFILE</code> were
cached.) </li>
<li>Allow <code>GROUP BY</code> functions with <code>HAVING</code>: <pre>mysql> SELECT col FROM table GROUP BY col HAVING COUNT(*)>0;
</pre>
</li>
<li><code>mysqld</code> will now ignore trailing <samp>`;'</samp> characters in queries.
This is to make it easier to migrate from some other SQL servers that require the trailing
<samp>`;'</samp>. </li>
<li>Fix for corrupted fixed-format output generated by <code>SELECT INTO OUTFILE</code>. </li>
<li><strong>WARNING: INCOMPATIBLE CHANGE!!</strong> Added Oracle <code>GREATEST()</code> and
<code>LEAST()</code> functions. You must now use these instead of the <code>MAX()</code>
and <code>MIN()</code> functions to get the largest/smallest value from a list of values.
These can now handle <code>REAL</code>, <code>BIGINT</code> and string (<code>CHAR</code>
or <code>VARCHAR</code>) values. </li>
<li><strong>WARNING: INCOMPATIBLE CHANGE!!</strong> <code>DAYOFWEEK()</code> had offset 0
for Sunday. Changed the offset to 1. </li>
<li>Give an error for queries that mix <code>GROUP BY</code> columns and fields when there
is no <code>GROUP BY</code> specification. </li>
<li>Added <code>--vertical</code> option to <code>mysql</code>, for printing results in
vertical mode. </li>
<li>Index-only optimization; some queries are now resolved using only indexes. Until <strong>MySQL</strong>
4.0, this works only for numeric columns. See section <a
href="manual_Performance.html#MySQL_indexes">10.4 MySQL index use</a>. </li>
<li>Lots of new benchmarks. </li>
<li>A new C API chapter and lots of other improvements in the manual. </li>
</ul>
<h3><a href="manual_toc.html#News-3.22.4" name="News-3.22.4">D.2.25 Changes in release
3.22.4</a></h3>
<ul>
<li>Added <code>--tmpdir</code> option to <code>mysqld</code>, for specifying the location
of the temporary file directory. </li>
<li><strong>MySQL</strong> now automatically changes a query from an ODBC client: <pre>SELECT ... FROM table WHERE auto_increment_column IS NULL
</pre>
<p>to: </p>
<pre>SELECT ... FROM table WHERE auto_increment_column == LAST_INSERT_ID()
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -