The official way to pronounce @strong{MySQL} is ``My Ess Que Ell'' (not
The official way to pronounce @strong{MySQL} is ``My Ess Que Ell'' (not
MY-SEQUEL). But we try to avoid correcting people who say MY-SEQUEL.
MY-SEQUEL). But we try to avoid correcting people who say MY-SEQUEL.
...
@@ -11384,7 +11384,7 @@ UPDATE tbl_name SET row_flag=1 WHERE id=ID and row_flag <> 1;
...
@@ -11384,7 +11384,7 @@ UPDATE tbl_name SET row_flag=1 WHERE id=ID and row_flag <> 1;
@chapter The MySQL Access Privilege System
@chapter The MySQL Access Privilege System
@cindex system, security
@cindex system, security
@cindex access privileges
@cindex access privileges
@cindex privleges, access
@cindex privileges, access
@cindex security system
@cindex security system
@cindex ACLs
@cindex ACLs
...
@@ -13734,7 +13734,7 @@ in ANSI mode. @xref{ANSI mode}.
...
@@ -13734,7 +13734,7 @@ in ANSI mode. @xref{ANSI mode}.
Note that in addition to the above, you can't have ASCII(0) or ASCII(255) or
Note that in addition to the above, you can't have ASCII(0) or ASCII(255) or
the quoting character in an identifier.
the quoting character in an identifier.
Note that if the identifer is a restricted word or contains special characters
Note that if the identifier is a restricted word or contains special characters
you must always quote it with @code{`} when you use it:
you must always quote it with @code{`} when you use it:
@example
@example
...
@@ -14844,7 +14844,7 @@ rules:
...
@@ -14844,7 +14844,7 @@ rules:
Year values in the range @code{00-69} are converted to @code{2000-2069}.
Year values in the range @code{00-69} are converted to @code{2000-2069}.
@item
@item
Year year values in the range @code{70-99} are converted to @code{1970-1999}.
Year values in the range @code{70-99} are converted to @code{1970-1999}.
@end itemize
@end itemize
@end itemize
@end itemize
...
@@ -17392,7 +17392,7 @@ a date or datetime column. (See example)
...
@@ -17392,7 +17392,7 @@ a date or datetime column. (See example)
@code{date} is a @code{DATETIME} or @code{DATE} value specifying the starting
@code{date} is a @code{DATETIME} or @code{DATE} value specifying the starting
date. @code{expr} is an expression specifying the interval value to be added
date. @code{expr} is an expression specifying the interval value to be added
or substracted from the starting date. @code{expr} is a string; it may start
or subtracted from the starting date. @code{expr} is a string; it may start
with a @samp{-} for negative intervals. @code{type} is a keyword indicating
with a @samp{-} for negative intervals. @code{type} is a keyword indicating
how the expression should be interpreted.
how the expression should be interpreted.
...
@@ -17979,11 +17979,11 @@ Blocks until the slave reaches the specified position in the master log during
...
@@ -17979,11 +17979,11 @@ Blocks until the slave reaches the specified position in the master log during
replication. If master information is not initialized, returns NULL. If the
replication. If master information is not initialized, returns NULL. If the
slave is not running, will block and wait until it is started and goes to or
slave is not running, will block and wait until it is started and goes to or
past
past
the specified postion. If the slave is already past the specified postion,
the specified position. If the slave is already past the specified postion,
returns immediately. The return value is the number of log events it had to
returns immediately. The return value is the number of log events it had to
wait to get to the specified position, or NULL in case of error. Useful for
wait to get to the specified position, or NULL in case of error. Useful for
control of master-slave synchronization, but was originally written to
control of master-slave synchronization, but was originally written to
facilate replication testing.
facilitate replication testing.
@end table
@end table
@findex GROUP BY functions
@findex GROUP BY functions
...
@@ -18072,7 +18072,7 @@ it returns NULL!
...
@@ -18072,7 +18072,7 @@ it returns NULL!
@itemx STDDEV(expr)
@itemx STDDEV(expr)
Returns the standard deviation of @code{expr}. This is an extension to
Returns the standard deviation of @code{expr}. This is an extension to
ANSI SQL. The @code{STDDEV()} form of this function is provided for Oracle
ANSI SQL. The @code{STDDEV()} form of this function is provided for Oracle
compatability.
compatibility.
@findex BIT_OR()
@findex BIT_OR()
@item BIT_OR(expr)
@item BIT_OR(expr)
...
@@ -18342,7 +18342,7 @@ work properly if the auto_increment column only has positive
...
@@ -18342,7 +18342,7 @@ work properly if the auto_increment column only has positive
values. Inserting a negative number is regarded as inserting a very large
values. Inserting a negative number is regarded as inserting a very large
positive number. This is done to avoid precision problems when
positive number. This is done to avoid precision problems when
numbers 'wrap' over from positive to negative and also to ensure that one
numbers 'wrap' over from positive to negative and also to ensure that one
doesn't accidently get an auto_increment column that contains 0.
doesn't accidentally get an auto_increment column that contains 0.
@cindex ODBC compatibility
@cindex ODBC compatibility
@cindex compatibility, with ODBC
@cindex compatibility, with ODBC
...
@@ -20698,7 +20698,7 @@ the @code{mysql} database.
...
@@ -20698,7 +20698,7 @@ the @code{mysql} database.
@item @code{[TABLE | TABLES] table_name [,table_name...]} @tab Flushes only the given tables.
@item @code{[TABLE | TABLES] table_name [,table_name...]} @tab Flushes 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}. This is very convinient way to get backups if you have a file system, like Veritas,that can take snapshots in time.
@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}. This is very convenient way to get backups if you have a file system, like Veritas,that can take snapshots in time.
@item @code{STATUS} @tab Resets most status variables to zero.
@item @code{STATUS} @tab Resets most status variables to zero.
@end multitable
@end multitable
...
@@ -21016,7 +21016,7 @@ If this is high, it suggests that the server is doing a lot of full index scans,
...
@@ -21016,7 +21016,7 @@ If this is high, it suggests that the server is doing a lot of full index scans,
@item @code{Handler_read_key} @tab Number of requests to read a row based on a key. If this
@item @code{Handler_read_key} @tab Number of requests to read a row based on a key. If this
is high, it is a good indication that your queries and tables are properly indexed.
is high, it is a good indication that your queries and tables are properly indexed.
@item @code{Handler_read_next} @tab Number of requests to read next row in key order. This
@item @code{Handler_read_next} @tab Number of requests to read next row in key order. This
will be incremented if you are querying an index column with a range contraint. This also
will be incremented if you are querying an index column with a range constraint. This also
will be incremented if you are doing an index scan.
will be incremented if you are doing an index scan.
@item @code{Handler_read_rnd} @tab Number of requests to read a row based on a fixed position.
@item @code{Handler_read_rnd} @tab Number of requests to read a row based on a fixed position.
This will be high if you are doing a lot of queries that require sorting of the result.
This will be high if you are doing a lot of queries that require sorting of the result.
...
@@ -22906,7 +22906,7 @@ type it should use for the table. @strong{MySQL} will always create a
...
@@ -22906,7 +22906,7 @@ type it should use for the table. @strong{MySQL} will always create a
the table type, the index and data will be stored in other files.
the table type, the index and data will be stored in other files.
The default table type in @strong{MySQL} is @code{MyISAM}. If you are
The default table type in @strong{MySQL} is @code{MyISAM}. If you are
trying to use a table type that is not incompiled or activated,
trying to use a table type that is not compiled-in or activated,
@strong{MySQL} will instead create a table of type @code{MyISAM}.
@strong{MySQL} will instead create a table of type @code{MyISAM}.
You can convert tables between different types with the @code{ALTER
You can convert tables between different types with the @code{ALTER
...
@@ -22939,7 +22939,7 @@ Advantages of not transaction-safe tables (NTST):
...
@@ -22939,7 +22939,7 @@ Advantages of not transaction-safe tables (NTST):
@itemize @bullet
@itemize @bullet
@item
@item
Much faster as there is no transcation overhead.
Much faster as there is no transaction overhead.
@item
@item
Will use less disk space as there is no overhead of transactions.
Will use less disk space as there is no overhead of transactions.
@item
@item
...
@@ -23209,7 +23209,7 @@ This format is used if the table contains any @code{VARCHAR}, @code{BLOB},
...
@@ -23209,7 +23209,7 @@ This format is used if the table contains any @code{VARCHAR}, @code{BLOB},
or @code{TEXT} columns or if the table was created with
or @code{TEXT} columns or if the table was created with
@code{ROW_FORMAT=dynamic}.
@code{ROW_FORMAT=dynamic}.
This format is a litte more complex because each row has to have a header
This format is a little more complex because each row has to have a header
that says how long it is. One record can also end up at more than one
that says how long it is. One record can also end up at more than one
location when it is made longer at an update.
location when it is made longer at an update.
...
@@ -23577,7 +23577,7 @@ Here are some things you should consider when you use @code{HEAP} tables:
...
@@ -23577,7 +23577,7 @@ Here are some things you should consider when you use @code{HEAP} tables:
@itemize @bullet
@itemize @bullet
@item
@item
You should always use specify @code{MAX_ROWS} in the @code{CREATE} statement
You should always use specify @code{MAX_ROWS} in the @code{CREATE} statement
to ensure that you accidently do not use all memory.
to ensure that you accidentally do not use all memory.
@item
@item
Indexes will only be used with @code{=} and @code{<=>} (but are VERY fast).
Indexes will only be used with @code{=} and @code{<=>} (but are VERY fast).
@item
@item
...
@@ -24843,7 +24843,7 @@ The reason is that we haven't yet had time to come up with an efficient
...
@@ -24843,7 +24843,7 @@ The reason is that we haven't yet had time to come up with an efficient
way to handle this in the general case. (The @code{AND} handling is,
way to handle this in the general case. (The @code{AND} handling is,
in comparison, now completely general and works very well).
in comparison, now completely general and works very well).
For the moment you can solve this very efficently by using a
For the moment you can solve this very efficiently by using a
@code{TEMPORARY} table. This type of optimization is also very good if
@code{TEMPORARY} table. This type of optimization is also very good if
you are using very complicated queries where the SQL server does the
you are using very complicated queries where the SQL server does the
optimizations in the wrong order.
optimizations in the wrong order.
...
@@ -25701,7 +25701,7 @@ mysql> SELECT 1 IS NULL, 1 IS NOT NULL;
...
@@ -25701,7 +25701,7 @@ mysql> SELECT 1 IS NULL, 1 IS NOT NULL;
@end example
@end example
In @strong{MySQL}, 0 or @code{NULL} means false and anything else means true.
In @strong{MySQL}, 0 or @code{NULL} means false and anything else means true.
The default trueth value from a boolean operation is 1.
The default truth value from a boolean operation is 1.
This special treatment of @code{NULL} is why, in the previous section, it
This special treatment of @code{NULL} is why, in the previous section, it
was necessary to determine which animals are no longer alive using
was necessary to determine which animals are no longer alive using
...
@@ -27000,7 +27000,7 @@ The next section explains the master/slave setup process in more detail.
...
@@ -27000,7 +27000,7 @@ The next section explains the master/slave setup process in more detail.
Below is a quick description of how to set up complete replication on
Below is a quick description of how to set up complete replication on
your current @strong{MySQL} server. It assumes you want to replicate all
your current @strong{MySQL} server. It assumes you want to replicate all
your databases and have not configured replication before. You will need
your databases and have not configured replication before. You will need
to shutdown your master server briefly to complete the steops outlined
to shutdown your master server briefly to complete the steps outlined
@item d @tab Enable output from DBUG_<N> macros for for the current state. May be followed by a list of keywords which selects output only for the DBUG macros with that keyword. An empty list of keywords implies output for all macros.
@item d @tab Enable output from DBUG_<N> macros for the current state. May be followed by a list of keywords which selects output only for the DBUG macros with that keyword. An empty list of keywords implies output for all macros.
@item D @tab Delay after each debugger output line. The argument is the number of tenths of seconds to delay, subject to machine capabilities. That is, @code{-#D,20} is delay two seconds.
@item D @tab Delay after each debugger output line. The argument is the number of tenths of seconds to delay, subject to machine capabilities. That is, @code{-#D,20} is delay two seconds.
@item f @tab Limit debugging and/or tracing, and profiling to the list of named functions. Note that a null list will disable all functions. The appropriate "d" or "t" flags must still be given, this flag only limits their actions if they are enabled.
@item f @tab Limit debugging and/or tracing, and profiling to the list of named functions. Note that a null list will disable all functions. The appropriate "d" or "t" flags must still be given, this flag only limits their actions if they are enabled.
@item F @tab Identify the source file name for each line of debug or trace output.
@item F @tab Identify the source file name for each line of debug or trace output.
...
@@ -48591,7 +48591,7 @@ Fewer lock conflicts when accessing different rows in many threads.
...
@@ -48591,7 +48591,7 @@ Fewer lock conflicts when accessing different rows in many threads.
@item
@item
Less changes for rollbacks.
Less changes for rollbacks.
@item
@item
Makes it possbile to lock a single row a long time.
Makes it possible to lock a single row a long time.