summaryrefslogtreecommitdiff
path: root/Docs
diff options
context:
space:
mode:
authorunknown <serg@infomag.ape.relarn.ru>2000-08-22 12:33:46 +0400
committerunknown <serg@infomag.ape.relarn.ru>2000-08-22 12:33:46 +0400
commit69bb38752c8ce269ae6083ec125606125239b446 (patch)
tree91aa0d4dd34e45615cb1312de6fa0eacf4bd43ff /Docs
parent35adc31916da6d6c6086b74cc364645d4fd3a400 (diff)
parentafbecb2979cb4be37d7bcf293ddfd2dae16171fe (diff)
downloadmariadb-git-69bb38752c8ce269ae6083ec125606125239b446.tar.gz
Merge
configure.in: Merged Docs/manual.texi: Merged
Diffstat (limited to 'Docs')
-rw-r--r--Docs/manual.texi85
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)}