diff options
author | unknown <serg@infomag.ape.relarn.ru> | 2000-08-22 12:33:46 +0400 |
---|---|---|
committer | unknown <serg@infomag.ape.relarn.ru> | 2000-08-22 12:33:46 +0400 |
commit | 69bb38752c8ce269ae6083ec125606125239b446 (patch) | |
tree | 91aa0d4dd34e45615cb1312de6fa0eacf4bd43ff /Docs | |
parent | 35adc31916da6d6c6086b74cc364645d4fd3a400 (diff) | |
parent | afbecb2979cb4be37d7bcf293ddfd2dae16171fe (diff) | |
download | mariadb-git-69bb38752c8ce269ae6083ec125606125239b446.tar.gz |
Merge
configure.in:
Merged
Docs/manual.texi:
Merged
Diffstat (limited to 'Docs')
-rw-r--r-- | Docs/manual.texi | 85 |
1 files changed, 45 insertions, 40 deletions
diff --git a/Docs/manual.texi b/Docs/manual.texi index 78105e5e972..b661d78605a 100644 --- a/Docs/manual.texi +++ b/Docs/manual.texi @@ -275,7 +275,7 @@ Is there anything special to do when upgrading/downgrading MySQL? How standards-compatible is MySQL? * Extensions to ANSI:: @strong{MySQL} extensions to ANSI SQL92 -* Ansi mode:: Runnning @strong{MySQL} in ANSI mode +* Ansi mode:: Running @strong{MySQL} in ANSI mode * Differences from ANSI:: @strong{MySQL} differences compared to ANSI SQL92 * Missing functions:: Functionality missing from @strong{MySQL} * Standards:: What standards does @strong{MySQL} follow? @@ -323,7 +323,7 @@ MySQL language reference * DROP DATABASE:: @code{DROP DATABASE} syntax * CREATE TABLE:: @code{CREATE TABLE} syntax * ALTER TABLE:: @code{ALTER TABLE} syntax -* RENAME TABLE:: +* RENAME TABLE:: @code{RENAME TABLE} syntax * DROP TABLE:: @code{DROP TABLE} syntax * OPTIMIZE TABLE:: @code{OPTIMIZE TABLE} syntax * CHECK TABLE:: @code{CHECK TABLE} syntax @@ -337,7 +337,7 @@ MySQL language reference * LOAD DATA:: @code{LOAD DATA INFILE} syntax * UPDATE:: @code{UPDATE} syntax * USE:: @code{USE} syntax -* FLUSH:: @code{Flush} syntax (clearing caches) +* FLUSH:: @code{FLUSH} syntax (clearing caches) * KILL:: @code{KILL} syntax * SHOW:: @code{SHOW} syntax (Get information about tables, columns, ...) * EXPLAIN:: @code{EXPLAIN} syntax (Get information about a @code{SELECT}) @@ -609,7 +609,7 @@ Using @code{MySQL} with some common programs Problems and common errors -* What is crashing:: How to determinate what is causing problems +* What is crashing:: How to determine what is causing problems * Crashing:: What to do if @strong{MySQL} keeps crashing * Link errors:: Problems when linking with the @strong{MySQL} client library * Common errors:: Some common errors when using @strong{MySQL} @@ -648,7 +648,7 @@ Some common errors when using MySQL Solving some common problems with MySQL -* Log Replication:: Database replication with update log +* Log Replication:: Database replication with update log * Backup:: Database backups * Update log:: The update log * Multiple servers:: Running multiple @strong{MySQL} servers on the same machine @@ -754,8 +754,8 @@ MySQL internals MySQL change history -* News-3.23.x:: Changes in release 3.23.x (Released as beta) -* News-3.22.x:: Changes in release 3.22.x (Recommended version) +* News-3.23.x:: Changes in release 3.23.x (Recommended; beta) +* News-3.22.x:: Changes in release 3.22.x (Still supported) * News-3.21.x:: Changes in release 3.21.x * News-3.20.x:: Changes in release 3.20.x * News-3.19.x:: Changes in release 3.19.x @@ -11645,7 +11645,7 @@ to restart @code{mysqld} with @code{--skip-grant-tables} to be able to run * DROP DATABASE:: @code{DROP DATABASE} syntax * CREATE TABLE:: @code{CREATE TABLE} syntax * ALTER TABLE:: @code{ALTER TABLE} syntax -* RENAME TABLE:: +* RENAME TABLE:: @code{RENAME TABLE} syntax * DROP TABLE:: @code{DROP TABLE} syntax * OPTIMIZE TABLE:: @code{OPTIMIZE TABLE} syntax * CHECK TABLE:: @code{CHECK TABLE} syntax @@ -15983,14 +15983,14 @@ mysql> select COUNT(*) from student; @findex COUNT(DISTINCT) @findex DISTINCT @item COUNT(DISTINCT expr,[expr...]) -Returns a count of the number of different not @code{NULL} values. +Returns a count of the number of different non-@code{NULL} values. @example mysql> select COUNT(DISTINCT results) from student; @end example -In @strong{MySQL} you can get the number of distinct expressions -combinations that doesn't contain NULL by giving a list of expressions. +In @strong{MySQL} you can get the number of distinct expression +combinations that don't contain NULL by giving a list of expressions. In ANSI SQL you would have to do a concatenation of all expressions inside @code{CODE(DISTINCT ..)}. @@ -16792,23 +16792,23 @@ See also @xref{ALTER TABLE problems, , @code{ALTER TABLE} problems}. @section @code{RENAME TABLE} syntax @example -RENAME TABLE tbl_name as new_table_name[, tbl_name2 as new_table_name2,...] +RENAME TABLE tbl_name TO new_table_name[, tbl_name2 TO new_table_name2,...] @end example -The rename is done atomic, which means that if no other thread can +The rename is done atomically, which means that if no other thread can access any of the tables while the rename is running. This makes it possible to replace a table with an empty one: @example CREATE TABLE new_table (...); -RENAME TABLE old_table TO backup_table, new_table as old_table; +RENAME TABLE old_table TO backup_table, new_table TO old_table; @end example The rename is done from left to right, which means that if you want to swap two tables names, you have to do: @example -RENAME TABLE old_table TO backup_table, new_table as old_table, backup_table as old_table; +RENAME TABLE old_table TO backup_table, new_table TO old_table, backup_table TO old_table; @end example Is long as two databases are on the same disk you can also do a rename @@ -16818,9 +16818,10 @@ from a database to another: RENAME TABLE current_database.table_name TO other_database.table_name; @end example -When you execute @code{RENAME}, you can't have any locked tables or active -transactions. You must also have the @code{ALTER TABLE} privilege on both -the old and the new table. +When you execute @code{RENAME}, you can't have any locked tables or +active transactions. You must also have the @code{ALTER TABLE} +privilege on the original table and @code{CREATE} and @code{INSERT} +privilege on the new table. If @strong{MySQL} encounters any errors in a multiple table rename, it will do a reverse rename for all renamed tables to get everything back @@ -18222,7 +18223,9 @@ file name, @strong{MySQL} will close and reopen the update log file. @item @code{PRIVILEGES} @tab Reloads the privileges from the grant tables in the @code{mysql} database. -@item @code{TABLES} @tab Closes all open tables. +@item @code{TABLES} @tab Closes all open tables and force all tables in use to be closed. + +@item @code{TABLES table_name [,table_name...]} @tab Flush only the given tables @item @code{TABLES WITH READ LOCK} @tab Closes all open tables and locks all tables for all databases with a read until one executes @code{UNLOCK TABLES}. @@ -28348,7 +28351,7 @@ FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\\' @chapter Problems and common errors @menu -* What is crashing:: How to determinate what is causing problems +* What is crashing:: How to determine what is causing problems * Crashing:: What to do if @strong{MySQL} keeps crashing * Link errors:: Problems when linking with the @strong{MySQL} client library * Common errors:: Some common errors when using @strong{MySQL} @@ -28373,7 +28376,7 @@ FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\\' @end menu @node What is crashing, Crashing, Problems, Problems -@section How to determinate what is causing problems +@section How to determine what is causing problems When you run into problems, the first thing you should do is to find out which program / piece of equipment is causing problems. @@ -29617,14 +29620,14 @@ SELECT id AS "Customer identity" FROM table_name; Note that you ANSI SQL doesn't allow you to refer to an alias in a @code{WHERE} clause. This is because when the @code{WHERE} code is -executed the column value may not yet be determinated. For example the +executed the column value may not yet be determined. For example the following query is @strong{illegal}: @example SELECT id,COUNT(*) AS cnt FROM table_name WHERE cnt > 0 GROUP BY id; @end example -The @code{WHERE} statement is executed to determinate which rows should +The @code{WHERE} statement is executed to determine which rows should be included in the @code{GROUP BY} part while @code{HAVING} is used to decide which rows from the result set should be used. @@ -35345,30 +35348,28 @@ find on the this means that the version has not yet been released! @menu -* News-3.23.x:: Changes in release 3.23.x (Released as beta) -* News-3.22.x:: Changes in release 3.22.x (Recommended version) +* News-3.23.x:: Changes in release 3.23.x (Recommended; beta) +* News-3.22.x:: Changes in release 3.22.x (Still supported) * News-3.21.x:: Changes in release 3.21.x * News-3.20.x:: Changes in release 3.20.x * News-3.19.x:: Changes in release 3.19.x @end menu @node News-3.23.x, News-3.22.x, News, News -@appendixsec Changes in release 3.23.x (Released as beta) +@appendixsec Changes in release 3.23.x (Recommended; beta) -The major difference between release 3.23 and releases 3.22 and 3.21 is that -3.23 contains a new ISAM library (MyISAM), which is more tuned for SQL -than the old ISAM was. - -The 3.23 release is under development, and things will be added at a -fast pace to it. For the moment we recommend this version only for -users that desperately need a new feature that is found only in this -release (like big file support and machine-independent tables). (Note -that all new functionality in @strong{MySQL} 3.23 is extensively tested, but as -this release involves much new code, it's difficult to test everything). +The 3.23 release has several major new features that are not +present in the 3.22 or 3.21 releases. We have added two new +table types: MyISAM, a new ISAM library which is tuned for SQL +and supports large files; and BerkeleyDB which uses the Berkeley +DB library from Sleepycat Software to implement transaction-safe +tables. The 3.23 release also includes support for database +replication between a master and many slaves. We are not adding any more new features that are likely to break any -old code in @strong{MySQL} 3.23 so this version should stabilise pretty soon -and will soon be declared beta, gamma and release. +old code in @strong{MySQL} 3.23, so we recommend that you use this +version. The replication and BerkeleyDB code is still under development, +though, so 3.23 is not released as a stable version yet. @menu * News-3.23.23:: Changes in release 3.23.23 @@ -35401,6 +35402,12 @@ and will soon be declared beta, gamma and release. @appendixsubsec Changes in release 3.23.23 @itemize @bullet @item +Changed behavior of @code{--enable-thread-safe-client} so +that both non-threaded (@code{-lmysqlclient}) and threaded +(@code{-lmysqlclient_r}) libraries are built. Users who linked +against a threaded @code{-lmysqlclient} will need to link against +@code{libmysqlclient_r} now. +@item Added atomic @code{RENAME} command. @item Don't count entries with @code{NULL} in @code{COUNT(DISTINCT ..)}. @@ -39538,8 +39545,6 @@ Fail safe replication. @item Optimize, test and document transactions safe tables @item -@code{RENAME table to table, table to table [,...]} -@item Allow users to change startup options. @item Subqueries. @code{select id from t where grp in (select grp from g where u > 100)} |