Author: paul
Date: 2006-01-24 22:13:18 +0100 (Tue, 24 Jan 2006)
New Revision: 1024
Log:
r6651@frost: paul | 2006-01-24 15:12:32 -0600
General revisions.
Modified:
trunk/
trunk/refman-4.1/apis.xml
trunk/refman-4.1/charset.xml
trunk/refman-4.1/connector-net.xml
trunk/refman-4.1/database-administration.xml
trunk/refman-4.1/installing.xml
trunk/refman-4.1/replication.xml
trunk/refman-4.1/sql-syntax.xml
trunk/refman-5.0/apis.xml
trunk/refman-5.0/charset.xml
trunk/refman-5.0/connector-net.xml
trunk/refman-5.0/database-administration.xml
trunk/refman-5.0/installing.xml
trunk/refman-5.0/replication.xml
trunk/refman-5.0/sql-syntax.xml
trunk/refman-5.1/apis.xml
trunk/refman-5.1/charset.xml
trunk/refman-5.1/connector-net.xml
trunk/refman-5.1/database-administration.xml
trunk/refman-5.1/installing.xml
trunk/refman-5.1/replication.xml
trunk/refman-5.1/sql-syntax.xml
Property changes on: trunk
___________________________________________________________________
Name: svk:merge
- b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:6648
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:2497
+ b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:6651
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:2497
Modified: trunk/refman-4.1/apis.xml
===================================================================
--- trunk/refman-4.1/apis.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-4.1/apis.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -5505,7 +5505,7 @@
<row>
<entry><literal>MYSQL_SHARED_MEMORY_BASE_NAME</literal></entry>
<entry><literal>char*</literal></entry>
- <entry>Named of shared memory object for communication to server. Should be
+ <entry>Named of shared-memory object for communication to server. Should be
same as the option
<option>--shared-memory-base-name</option> used for
the <command>mysqld</command> server you want to
@@ -5615,7 +5615,7 @@
</row>
<row>
<entry><literal>shared-memory-base-name=<replaceable>name</replaceable></literal></entry>
- <entry>Shared memory name to use to connect to server (default is "MYSQL").
+ <entry>Shared-memory name to use to connect to server (default is "MYSQL").
Added in MySQL 4.1.</entry>
</row>
<row>
Modified: trunk/refman-4.1/charset.xml
===================================================================
--- trunk/refman-4.1/charset.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-4.1/charset.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -1478,9 +1478,9 @@
binary collation of the column's character set. Every character
set has a binary collation. For example, the binary collation
for the <literal>latin1</literal> character set is
- <literal>latin1_bin</literal>, so if the the table default
- character set is <literal>latin1</literal>, these two column
- definitions are equivalent:
+ <literal>latin1_bin</literal>, so if the table default character
+ set is <literal>latin1</literal>, these two column definitions
+ are equivalent:
</para>
<programlisting>
Modified: trunk/refman-4.1/connector-net.xml
===================================================================
--- trunk/refman-4.1/connector-net.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-4.1/connector-net.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -2291,7 +2291,7 @@
<literal>Port</literal>: The port MySQL is using to listen
for connections. Default is <literal>3306</literal>.
Specify <literal>-1</literal> for this value to use a
- named pipe connection.
+ named-pipe connection.
</para>
</listitem>
Modified: trunk/refman-4.1/database-administration.xml
===================================================================
--- trunk/refman-4.1/database-administration.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-4.1/database-administration.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -789,7 +789,7 @@
on Windows NT, 2000, XP, and 2003 systems, and can be used
only with the <command>mysqld-nt</command> and
<command>mysqld-max-nt</command> servers that support
- named pipe connections.
+ named-pipe connections.
</para>
</listitem>
@@ -11171,9 +11171,9 @@
Privilege columns indicate which privileges are granted by a
table row; that is, what operations can be performed. The
server combines the information in the various grant tables
- to form a complete description of a user's privileges. The
- rules used to do this are described in
- <xref linkend="request-access"/>.
+ to form a complete description of a user's privileges.
+ <xref linkend="request-access"/>, describes the rules that
+ are rules used to do this.
</para>
</listitem>
@@ -18143,8 +18143,8 @@
</para>
<para>
- An even better test would be to check any table whose
- last-modified time is more recent than that of the
+ An even better test would be to check any table that has a
+ last-modified time more recent than that of the
<filename>.pid</filename> file.
</para>
@@ -18985,9 +18985,8 @@
<para>
You can change the character set with the
<option>--character-set-server</option> option when you start
- the server
- (<option>--default-character-set</option> before MySQL 4.1.3).
- The character sets available depend on the
+ the server (<option>--default-character-set</option> before
+ MySQL 4.1.3). The character sets available depend on the
<option>--with-charset=<replaceable>charset</replaceable></option>
and <option>--with-extra-charsets=
<replaceable>list-of-charsets</replaceable> | complex | all |
@@ -19011,9 +19010,9 @@
If you change the character set when running MySQL, that may
also change the sort order. Consequently, you must run
<command>myisamchk -r -q
- --set-collation=<replaceable>charset</replaceable></command>
- on all tables, or your indexes may not be ordered correctly.
-(Use <option>--set-character-set</option> before MySQL 4.1.1.)
+ --set-collation=<replaceable>charset</replaceable></command> on
+ all tables, or your indexes may not be ordered correctly. (Use
+ <option>--set-character-set</option> before MySQL 4.1.1.)
</para>
<para>
@@ -20513,8 +20512,8 @@
<para>
For example, a slave running with only
<literal>binlog-do-db=sales</literal> does not write to the
- binary log any statement whose default database is different
- from <literal>sales</literal> (in other words,
+ binary log any statement for which the default database is
+ different from <literal>sales</literal> (in other words,
<literal>binlog-do-db</literal> can sometimes mean <quote>ignore
other databases</quote>).
</para>
@@ -20532,9 +20531,9 @@
</para>
<para>
- A client with the <literal>SUPER</literal> privilege can disable
- binary logging of its own statements by using a <literal>SET
- SQL_LOG_BIN=0</literal> statement. See
+ A client that has the <literal>SUPER</literal> privilege can
+ disable binary logging of its own statements by using a
+ <literal>SET SQL_LOG_BIN=0</literal> statement. See
<xref linkend="set-option"/>.
</para>
@@ -20602,11 +20601,11 @@
<para>
If you are using the update log or binary log, concurrent
- inserts are converted to normal inserts for
- <literal>CREATE ... SELECT</literal> or <literal>INSERT ...
- SELECT</literal> statement. This is done to ensure that you can re-create an
+ inserts are converted to normal inserts for <literal>CREATE ...
+ SELECT</literal> or <literal>INSERT ... SELECT</literal>
+ statement. This is done to ensure that you can re-create an
exact copy of your tables by applying the log during a backup
-operation.
+ operation.
</para>
<para>
@@ -20895,7 +20894,7 @@
In some cases, you might want to run multiple
<command>mysqld</command> servers on the same machine. You might
want to test a new MySQL release while leaving your existing
- production setup undisturbed. Or you may want to give different
+ production setup undisturbed. Or you might want to give different
users access to different <command>mysqld</command> servers that
they manage themselves. (For example, you might be an Internet
Service Provider that wants to provide independent MySQL
@@ -20935,7 +20934,7 @@
<option>--socket</option> controls the Unix socket file path
on Unix and the name of the named pipe on Windows. On Windows,
it is necessary to specify distinct pipe names only for those
- servers that support named pipe connections.
+ servers that support named-pipe connections.
</para>
</listitem>
@@ -21015,8 +21014,8 @@
</itemizedlist>
<para>
- Log file options are described in
- <xref linkend="log-file-maintenance"/>.
+ <xref linkend="log-file-maintenance"/>, discusses the log file
+ options further.
</para>
<para>
@@ -21042,15 +21041,15 @@
</itemizedlist>
<para>
- Having different temporary directories is also recommended, to
- make it easier to determine which MySQL server created any given
+ Having different temporary directories is also recommended to make
+ it easier to determine which MySQL server created any given
temporary file.
</para>
<para>
- Generally, each server should also use a different data directory,
- which is specified using the <option>--datadir=path</option>
- option.
+ With very limited exceptions, each server should use a different
+ data directory, which is specified using the
+ <option>--datadir=<replaceable>path</replaceable></option> option.
</para>
<para>
@@ -21105,12 +21104,13 @@
<para>
If you have multiple MySQL installations in different locations,
- normally you can specify the base installation directory for each
- server with the <option>--basedir=path</option> option to cause
- each server to use a different data directory, log files, and PID
- file. (The defaults for all these values are determined relative
- to the base directory). In that case, the only other options you
- need to specify are the <option>--socket</option> and
+ you can specify the base installation directory for each server
+ with the
+ <option>--basedir=<replaceable>path</replaceable></option> option
+ to cause each server to use a different data directory, log files,
+ and PID file. (The defaults for all these values are determined
+ relative to the base directory). In that case, the only other
+ options you need to specify are the <option>--socket</option> and
<option>--port</option> options. For example, suppose that you
install different versions of MySQL using tarfile binary
distributions. These install in different locations, so you can
@@ -21131,7 +21131,9 @@
specifying appropriate command-line options. However, if you need
to run multiple servers on a more permanent basis, it is more
convenient to use option files to specify for each server those
- option values that must be unique to it.
+ option values that must be unique to it. The
+ <option>--defaults-file</option> option is useful for this
+ purpose.
</para>
<section id="multiple-windows-servers">
@@ -21175,15 +21177,11 @@
make sure that before you start the servers, each data
directory exists and has its own copy of the
<literal>mysql</literal> database that contains the grant
- tables.)
+ tables.) Then create two option files. For example, create one
+ file named <filename>C:\my-opts1.cnf</filename> that looks
+ like this:
</para>
- <para>
- Then create two option files. For example, create one file
- named <filename>C:\my-opts1.cnf</filename> that looks like
- this:
- </para>
-
<programlisting>
[mysqld]
datadir = C:/mydata1
@@ -21212,13 +21210,13 @@
<para>
On NT, each server starts in the foreground (no new prompt
- appears until the server exits later); you will need to issue
- those two commands in separate console windows.
+ appears until the server exits later), so you will need to
+ issue those two commands in separate console windows.
</para>
<para>
- To shut down the servers, you must connect to the appropriate
- port number:
+ To shut down the servers, you must connect to each using the
+ appropriate port number:
</para>
<programlisting>
@@ -21229,11 +21227,11 @@
<para>
Servers configured as just described allow clients to connect
over TCP/IP. If your version of Windows supports named pipes
- and you also want to allow named pipe connections, use the
+ and you also want to allow named-pipe connections, use the
<command>mysqld-nt</command> or
<command>mysqld-max-nt</command> servers and specify options
that enable the named pipe and specify its name. Each server
- that supports named pipe connections must use a unique pipe
+ that supports named-pipe connections must use a unique pipe
name. For example, the <filename>C:\my-opts1.cnf</filename>
file might be written like this:
</para>
@@ -21259,6 +21257,14 @@
by the second server.
</para>
+ <para>
+ A similar procedure applies for servers that you want to
+ support shared-memory connections. Enable such connections
+ with the <option>--shared-memory</option> option and specify a
+ unique shared-memory name for each server with the
+ <option>--shared-memory-base-name</option> option.
+ </para>
+
</section>
<section id="multiple-windows-services">
@@ -21266,7 +21272,7 @@
<title>&title-multiple-windows-services;</title>
<para>
- On NT-based systems, a MySQL server can be run as a Windows
+ On NT-based systems, a MySQL server can run as a Windows
service. The procedures for installing, controlling, and
removing a single MySQL service are described in
<xref linkend="windows-start-service"/>.
@@ -21533,7 +21539,7 @@
<replaceable>file_name</replaceable> must be different from the
default TCP/IP port number and Unix socket file pathname, and
the <option>--prefix</option> value should specify an
- installation directory different than the one under which the
+ installation directory different from the one under which the
existing MySQL installation is located.
</para>
@@ -21564,10 +21570,11 @@
</para>
<para>
- However, it is not necessary to compile a new MySQL server
- merely to start it with a different Unix socket file and TCP/IP
- port number. It is also possible to specify those values at
- runtime. One way to do so is by using command-line options:
+ You don't have to compile a new MySQL server just to start with
+ a different Unix socket file and TCP/IP port number. It is also
+ possible to use the same server binary and start each invocation
+ of it with different parameter values at runtime. One way to do
+ so is by using command-line options:
</para>
<programlisting>
@@ -21658,10 +21665,9 @@
<title>&title-multiple-server-clients;</title>
<para>
- When you want to connect with a client program to a MySQL server
- that is listening to different network interfaces than those
- compiled into your client, you can use one of the following
- methods:
+ To connect with a client program to a MySQL server that is
+ listening to different network interfaces than those compiled
+ into your client, you can use one of the following methods:
</para>
<itemizedlist>
@@ -21694,9 +21700,9 @@
<option>--port</option> options. For the other types of
connections, you may need to specify a
<option>--socket</option> option to specify a Unix socket
- file or named pipe name, or a
+ file or Windows named-pipe name, or a
<option>--shared-memory-base-name</option> option to specify
- the shared memory name. Shared memory connections are
+ the shared-memory name. Shared-memory connections are
supported only on Windows.
</para>
</listitem>
@@ -21807,18 +21813,19 @@
<para>
From version 4.0.1 on, MySQL Server features a query cache. When
in use, the query cache stores the text of a
- <literal>SELECT</literal> query together with the corresponding
- result that was sent to the client. If an identical query is
- received later, the server retrieves the results from the query
- cache rather than parsing and executing the query again.
+ <literal>SELECT</literal> statement together with the
+ corresponding result that was sent to the client. If an identical
+ statement is received later, the server retrieves the results from
+ the query cache rather than parsing and executing the statement
+ again.
</para>
<para>
The query cache is extremely useful in an environment where you
have tables that do not change very often and for which the server
receives many identical queries. This is a typical situation for
- many Web servers that generate a dynamic pages based on database
- content.
+ many Web servers that generate many dynamic pages based on
+ database content.
</para>
<para>
@@ -21877,10 +21884,10 @@
To disable the query cache at server startup, set the
<literal>query_cache_size</literal> system variable to 0. By
disabling the query cache code, there is no noticeable overhead.
- Query caching capabilities can be excluded from the server
- altogether by using the <option>--without-query-cache</option>
- option to <command>configure</command> when compiling MySQL. See
- also <xref linkend="query-cache-configuration"/>.
+ If you build MySQL from source, query cache capabilities can be
+ excluded from the server entirely by invoking
+ <command>configure</command> with the
+ <option>--without-query-cache</option> option.
</para>
<section id="query-cache-how">
@@ -21894,8 +21901,9 @@
</para>
<para>
- Queries are compared before parsing, so the following two
- queries are regarded as different by the query cache:
+ Incoming queries are compared to those in the query cache before
+ parsing, so the following two queries are regarded as different
+ by the query cache:
</para>
<programlisting>
@@ -21913,10 +21921,10 @@
</para>
<para>
- Before a query is fetched from the query cache, MySQL checks
- that the user has <literal>SELECT</literal> privilege for all
- the involved databases and tables. If this is not the case, the
- cached result is not used.
+ Before a query result is fetched from the query cache, MySQL
+ checks that the user has <literal>SELECT</literal> privilege for
+ all the involved databases and tables. If this is not the case,
+ the cached result is not used.
</para>
<para>
@@ -21927,15 +21935,14 @@
</para>
<para>
- If a table changes, then all cached queries that use the table
- become invalid and are removed from the cache. This includes
- queries that use <literal>MERGE</literal> tables that map to the
- changed table. A table can be changed by many types of
- statements, such as <literal>INSERT</literal>,
- <literal>UPDATE</literal>, <literal>DELETE</literal>,
- <literal>TRUNCATE</literal>, <literal>ALTER TABLE</literal>,
- <literal>DROP TABLE</literal>, or <literal>DROP
- DATABASE</literal>.
+ If a table changes, all cached queries that use the table become
+ invalid and are removed from the cache. This includes queries
+ that use <literal>MERGE</literal> tables that map to the changed
+ table. A table can be changed by many types of statements, such
+ as <literal>INSERT</literal>, <literal>UPDATE</literal>,
+ <literal>DELETE</literal>, <literal>TRUNCATE</literal>,
+ <literal>ALTER TABLE</literal>, <literal>DROP TABLE</literal>,
+ or <literal>DROP DATABASE</literal>.
</para>
<para>
@@ -21966,8 +21973,8 @@
</para>
<para>
- A query cannot be cached if it contains any of the following
- functions:
+ A query cannot be cached if it contains any of the functions
+ shown in the following table.
</para>
<informaltable>
@@ -22035,8 +22042,8 @@
<listitem>
<para>
- It refers to the tables in the <literal>mysql</literal>
- system database.
+ It refers to tables in the <literal>mysql</literal> system
+ database.
</para>
</listitem>
@@ -22063,8 +22070,8 @@
<listitem>
<para>
It was issued as a prepared statement, even if no
- placeholders were employed. For example, the query used
- here:
+ placeholders were employed. For example, the query used here
+ is not cached:
</para>
<programlisting>
@@ -22074,8 +22081,7 @@
</programlisting>
<para>
- is not cached. See
- <xref linkend="c-api-prepared-statements"/>.
+ See <xref linkend="c-api-prepared-statements"/>.
</para>
</listitem>
@@ -22187,16 +22193,16 @@
<para>
To set the size of the query cache, set the
<literal>query_cache_size</literal> system variable. Setting it
- to 0 disables the query cache. The default cache size is 0; that
- is, the query cache is disabled.
+ to 0 disables the query cache. The default size is 0, so the
+ query cache is disabled by default.
</para>
<para>
- When setting <literal>query_cache_size</literal> to a non-zero
- value keep in mind that the query cache needs a minimum size of
+ When you set <literal>query_cache_size</literal> to a non-zero
+ value, keep in mind that the query cache needs a minimum size of
about 40KB to allocate its structures. (The exact size depends
- on architecture.) If you set the value too small, you will get a
- warning, like in this example:
+ on system architecture.) If you set the value too small, you'll
+ get a warning, as in this example:
</para>
<programlisting>
@@ -22254,13 +22260,14 @@
</itemizedlist>
<para>
- Setting the <literal>GLOBAL</literal> value of
- <literal>query_cache_type</literal> determines query cache
+ Setting the <literal>GLOBAL</literal>
+ <literal>query_cache_type</literal> value determines query cache
behavior for all clients that connect after the change is made.
Individual clients can control cache behavior for their own
- connection by setting the <literal>SESSION</literal> value of
- <literal>query_cache_type</literal>. For example, a client can
- disable use of the query cache for its own queries like this:
+ connection by setting the <literal>SESSION</literal>
+ <literal>query_cache_type</literal> value. For example, a client
+ can disable use of the query cache for its own queries like
+ this:
</para>
<programlisting>
@@ -22269,18 +22276,18 @@
<para>
To control the maximum size of individual query results that can
- be cached, set the <literal>query_cache_limit</literal>
+ be cached, set the <literal>query_cache_limit</literal> system
variable. The default value is 1MB.
</para>
<para>
- The result of a query (the data sent to the client) is stored in
- the query cache during result retrieval. Therefore the data
- usually is not handled in one big chunk. The query cache
- allocates blocks for storing this data on demand, so when one
- block is filled, a new block is allocated. Because memory
- allocation operation is costly (timewise), the query cache
- allocates blocks with a minimum size given by the
+ When a query that is to be cached, its result (the data sent to
+ the client) is stored in the query cache during result
+ retrieval. Therefore the data usually is not handled in one big
+ chunk. The query cache allocates blocks for storing this data on
+ demand, so when one block is filled, a new block is allocated.
+ Because memory allocation operation is costly (timewise), the
+ query cache allocates blocks with a minimum size given by the
<literal>query_cache_min_res_unit</literal> system variable.
When a query is executed, the last result block is trimmed to
the actual data size so that unused memory is freed. Depending
@@ -22404,8 +22411,8 @@
</para>
<para>
- The total number of <literal>SELECT</literal> queries is equal
- to:
+ The total number of <literal>SELECT</literal> queries is given
+ by this formula:
</para>
<programlisting>
@@ -22415,13 +22422,14 @@
</programlisting>
<para>
- The <literal>Com_select</literal> value is equal to:
+ The <literal>Com_select</literal> value is given by this
+ formula:
</para>
<programlisting>
Qcache_inserts
+ Qcache_not_cached
-+ queries with errors found during columns/rights check
++ queries with errors found during the column-privileges check
</programlisting>
<para>
@@ -22436,8 +22444,8 @@
Every cached query requires a minimum of two blocks (one for the
query text and one or more for the query results). Also, every
table that is used by a query requires one block. However, if
- two or more queries use the same table, only one block needs to
- be allocated.
+ two or more queries use the same table, only one table block
+ needs to be allocated.
</para>
<para>
Modified: trunk/refman-4.1/installing.xml
===================================================================
--- trunk/refman-4.1/installing.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-4.1/installing.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -4533,7 +4533,7 @@
<listitem>
<para>
- Named pipe connections are allowed only by the
+ Named-pipe connections are allowed only by the
<command>mysqld-nt</command> or
<command>mysqld-max-nt</command> servers, and only if the
server is run on a version of Windows that supports named
@@ -4544,7 +4544,7 @@
<listitem>
<para>
These servers can be run on Windows 98 or Me, but only if
- TCP/IP is installed; named pipe connections cannot be used.
+ TCP/IP is installed; named-pipe connections cannot be used.
</para>
</listitem>
@@ -4590,7 +4590,7 @@
<para>
On NT-based systems such as Windows NT, 2000, XP, or 2003,
clients have two options. They can use TCP/IP, or they can use a
- named pipe if the server supports named pipe connections. For
+ named pipe if the server supports named-pipe connections. For
MySQL to work with TCP/IP on Windows NT 4, you must install
service pack 3 (or newer).
</para>
@@ -5113,7 +5113,7 @@
</para>
<para>
- You can force a MySQL client to use a named pipe connection
+ You can force a MySQL client to use a named-pipe connection
rather than TCP/IP by specifying the <option>--pipe</option>
option or by specifying <literal>.</literal> (period) as the
host name. Use the <option>--socket</option> option to specify
@@ -5563,7 +5563,7 @@
<para>
MySQL uses a blocking read for each connection, which has
- the following implications if named pipe connections are
+ the following implications if named-pipe connections are
enabled:
</para>
Modified: trunk/refman-4.1/replication.xml
===================================================================
--- trunk/refman-4.1/replication.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-4.1/replication.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -1716,9 +1716,9 @@
You must <emphasis role="bold">always</emphasis> use the
same <emphasis role="bold">global</emphasis> character set
and collation (<option>--character-set-server</option>,
- <option>--collation-server</option>) on the master and
- the slave. Otherwise, you may get duplicate-key errors on
- the slave, because a key that is regarded as unique in the
+ <option>--collation-server</option>) on the master and the
+ slave. Otherwise, you may get duplicate-key errors on the
+ slave, because a key that is regarded as unique in the
master's character set may not be unique in the slave's
character set.
</para>
@@ -1726,16 +1726,16 @@
<listitem>
<para>
- If the master is older than MySQL 4.1.3, the
- character set of the session should never be made
- different from its global value (in other words, do not
- use <literal>SET NAMES</literal>, <literal>SET CHARACTER
- SET</literal>, and so on) because this character set
- change is not known to the slave. If both the master and
- the slave are 4.1.3 or newer, the session can freely set
- local values for character set variables (such as
- <literal>NAMES</literal>, <literal>CHARACTER
- SET</literal>, <literal>COLLATION_CLIENT</literal>, and
+ If the master is older than MySQL 4.1.3, the character set
+ of the session should never be made different from its
+ global value (in other words, do not use <literal>SET
+ NAMES</literal>, <literal>SET CHARACTER SET</literal>, and
+ so on) because this character set change is not known to
+ the slave. If both the master and the slave are 4.1.3 or
+ newer, the session can freely set local values for
+ character set variables (such as <literal>NAMES</literal>,
+ <literal>CHARACTER SET</literal>,
+ <literal>COLLATION_CLIENT</literal>, and
<literal>COLLATION_SERVER</literal>) as these settings are
written to the binary log and so known to the slave.
However, the session is prevented from changing the
@@ -3853,11 +3853,11 @@
</para>
<para>
- To determine how many slaves you can get before the added
- benefits begin to level out, and how much you can improve
- performance of your site, you need to know your query patterns,
- and to determine empirically by benchmarking the relationship
- between the throughput for reads (reads per second, or
+ To determine how many slaves you can get before the added benefits
+ begin to level out, and how much you can improve performance of
+ your site, you need to know your query patterns, and to determine
+ empirically by benchmarking the relationship between the
+ throughput for reads (reads per second, or
<literal>max_reads</literal>) and for writes
(<literal>max_writes</literal>) on a typical master and a typical
slave. The example here shows a rather simplified calculation of
Modified: trunk/refman-4.1/sql-syntax.xml
===================================================================
--- trunk/refman-4.1/sql-syntax.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-4.1/sql-syntax.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -10562,7 +10562,8 @@
<literal>SUPER</literal> privileges were added in MySQL 4.0.2.
To use these privileges when upgrading from an earlier version
of MySQL that does not have them, you must first upgrade the
- grant tables. See <xref linkend="mysql-fix-privilege-tables"/>.
+ grant tables. See
+ <xref linkend="mysql-fix-privilege-tables"/>.
</para>
<para>
@@ -10682,9 +10683,9 @@
</para>
<para>
- To accommodate granting rights to users from
- arbitrary hosts, MySQL supports specifying the
- <replaceable>user</replaceable> value in the form
+ To accommodate granting rights to users from arbitrary hosts,
+ MySQL supports specifying the <replaceable>user</replaceable>
+ value in the form
<literal><replaceable>user_name</replaceable>@<replaceable>host_name</replaceable></literal>.
If a <replaceable>user_name</replaceable> or
<replaceable>host_name</replaceable> value is legal as an
Modified: trunk/refman-5.0/apis.xml
===================================================================
--- trunk/refman-5.0/apis.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.0/apis.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -5553,7 +5553,7 @@
<row>
<entry><literal>MYSQL_SHARED_MEMORY_BASE_NAME</literal></entry>
<entry><literal>char*</literal></entry>
- <entry>Named of shared memory object for communication to server. Should be
+ <entry>Named of shared-memory object for communication to server. Should be
same as the option
<option>--shared-memory-base-name</option> used for
the <command>mysqld</command> server you want to
@@ -5662,7 +5662,7 @@
</row>
<row>
<entry><literal>shared-memory-base-name=<replaceable>name</replaceable></literal></entry>
- <entry>Shared memory name to use to connect to server (default is "MYSQL").</entry>
+ <entry>Shared-memory name to use to connect to server (default is "MYSQL").</entry>
</row>
<row>
<entry><literal>socket</literal></entry>
Modified: trunk/refman-5.0/charset.xml
===================================================================
--- trunk/refman-5.0/charset.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.0/charset.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -1470,9 +1470,9 @@
binary collation of the column's character set. Every character
set has a binary collation. For example, the binary collation
for the <literal>latin1</literal> character set is
- <literal>latin1_bin</literal>, so if the the table default
- character set is <literal>latin1</literal>, these two column
- definitions are equivalent:
+ <literal>latin1_bin</literal>, so if the table default character
+ set is <literal>latin1</literal>, these two column definitions
+ are equivalent:
</para>
<programlisting>
@@ -2005,7 +2005,7 @@
<para>
<literal>INFORMATION_SCHEMA</literal> has several tables that
- contain information information similar to that displayed by the
+ contain information similar to that displayed by the
<literal>SHOW</literal> statements. For example, the
<literal>CHARACTER_SETS</literal> and
<literal>COLLATIONS</literal> tables contain the information
Modified: trunk/refman-5.0/connector-net.xml
===================================================================
--- trunk/refman-5.0/connector-net.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.0/connector-net.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -2291,7 +2291,7 @@
<literal>Port</literal>: The port MySQL is using to listen
for connections. Default is <literal>3306</literal>.
Specify <literal>-1</literal> for this value to use a
- named pipe connection.
+ named-pipe connection.
</para>
</listitem>
Modified: trunk/refman-5.0/database-administration.xml
===================================================================
--- trunk/refman-5.0/database-administration.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.0/database-administration.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -795,7 +795,7 @@
on Windows NT, 2000, XP, and 2003 systems, and can be used
only with the <command>mysqld-nt</command> and
<command>mysqld-max-nt</command> servers that support
- named pipe connections.
+ named-pipe connections.
</para>
</listitem>
@@ -13291,9 +13291,9 @@
Privilege columns indicate which privileges are granted by a
table row; that is, what operations can be performed. The
server combines the information in the various grant tables
- to form a complete description of a user's privileges. The
- rules used to do this are described in
- <xref linkend="request-access"/>.
+ to form a complete description of a user's privileges.
+ <xref linkend="request-access"/>, describes the rules that
+ are rules used to do this.
</para>
</listitem>
@@ -20384,8 +20384,8 @@
</para>
<para>
- An even better test would be to check any table whose
- last-modified time is more recent than that of the
+ An even better test would be to check any table that has a
+ last-modified time more recent than that of the
<filename>.pid</filename> file.
</para>
@@ -21245,8 +21245,8 @@
If you change the character set when running MySQL, that may
also change the sort order. Consequently, you must run
<command>myisamchk -r -q
- --set-collation=<replaceable>charset</replaceable></command>
- on all tables, or your indexes may not be ordered correctly.
+ --set-collation=<replaceable>charset</replaceable></command> on
+ all tables, or your indexes may not be ordered correctly.
</para>
<para>
@@ -22576,8 +22576,8 @@
<para>
For example, a slave running with only
<literal>binlog-do-db=sales</literal> does not write to the
- binary log any statement whose default database is different
- from <literal>sales</literal> (in other words,
+ binary log any statement for which the default database is
+ different from <literal>sales</literal> (in other words,
<literal>binlog-do-db</literal> can sometimes mean <quote>ignore
other databases</quote>).
</para>
@@ -22595,9 +22595,9 @@
</para>
<para>
- A client with the <literal>SUPER</literal> privilege can disable
- binary logging of its own statements by using a <literal>SET
- SQL_LOG_BIN=0</literal> statement. See
+ A client that has the <literal>SUPER</literal> privilege can
+ disable binary logging of its own statements by using a
+ <literal>SET SQL_LOG_BIN=0</literal> statement. See
<xref linkend="set-option"/>.
</para>
@@ -22664,12 +22664,12 @@
</para>
<para>
- If you are using the binary log, concurrent
- inserts are converted to normal inserts for
- <literal>CREATE ... SELECT</literal> or <literal>INSERT ...
- SELECT</literal> statement. This is done to ensure that you can re-create an
+ If you are using the binary log, concurrent inserts are
+ converted to normal inserts for <literal>CREATE ...
+ SELECT</literal> or <literal>INSERT ... SELECT</literal>
+ statement. This is done to ensure that you can re-create an
exact copy of your tables by applying the log during a backup
-operation.
+ operation.
</para>
<para>
@@ -22893,10 +22893,9 @@
<listitem>
<para>
- If binary
- logging (<option>--log-bin</option>) is used, the server closes
-the current log file
- and opens a new log file with the next sequence number.
+ If binary logging (<option>--log-bin</option>) is used, the
+ server closes the current log file and opens a new log file
+ with the next sequence number.
</para>
</listitem>
@@ -22953,7 +22952,7 @@
In some cases, you might want to run multiple
<command>mysqld</command> servers on the same machine. You might
want to test a new MySQL release while leaving your existing
- production setup undisturbed. Or you may want to give different
+ production setup undisturbed. Or you might want to give different
users access to different <command>mysqld</command> servers that
they manage themselves. (For example, you might be an Internet
Service Provider that wants to provide independent MySQL
@@ -22992,8 +22991,8 @@
<para>
<option>--socket</option> controls the Unix socket file path
on Unix and the name of the named pipe on Windows. On Windows,
- it's necessary to specify distinct pipe names only for those
- servers that support named pipe connections.
+ it is necessary to specify distinct pipe names only for those
+ servers that support named-pipe connections.
</para>
</listitem>
@@ -23004,8 +23003,10 @@
<para>
This option currently is used only on Windows. It designates
- the shared memory name used by a Windows server to allow
- clients to connect via shared memory.
+ the shared-memory name used by a Windows server to allow
+ clients to connect via shared memory. It is necessary to
+ specify distinct shared-memory names only for those servers
+ that support shared-memory connections.
</para>
</listitem>
@@ -23066,14 +23067,14 @@
</itemizedlist>
<para>
- Log file options are described in
- <xref linkend="log-file-maintenance"/>.
+ <xref linkend="log-file-maintenance"/>, discusses the log file
+ options further.
</para>
<para>
- For better performance performance, you can specify the following
- options differently for each server, in order to spread the load
- between physical disks:
+ For better performance, you can specify the following options
+ differently for each server, to spread the load between physical
+ disks:
</para>
<itemizedlist>
@@ -23093,15 +23094,15 @@
</itemizedlist>
<para>
- Having different temporary directories is also recommended, to
- make it easier to determine which MySQL server created any given
+ Having different temporary directories is also recommended to make
+ it easier to determine which MySQL server created any given
temporary file.
</para>
<para>
- Generally, each server should also use a different data directory,
- which is specified using the <option>--datadir=path</option>
- option.
+ With very limited exceptions, each server should use a different
+ data directory, which is specified using the
+ <option>--datadir=<replaceable>path</replaceable></option> option.
</para>
<para>
@@ -23136,7 +23137,7 @@
<listitem>
<para>
- Another risk with NFS is that you has to come up with a way to
+ Another risk with NFS is that you must come up with a way to
make sure that two or more servers do not interfere with each
other. Usually NFS file locking is handled by the
<literal>lockd</literal> daemon, but at the moment there is no
@@ -23156,12 +23157,13 @@
<para>
If you have multiple MySQL installations in different locations,
- normally you can specify the base installation directory for each
- server with the <option>--basedir=path</option> option to cause
- each server to use a different data directory, log files, and PID
- file. (The defaults for all these values are determined relative
- to the base directory). In that case, the only other options you
- need to specify are the <option>--socket</option> and
+ you can specify the base installation directory for each server
+ with the
+ <option>--basedir=<replaceable>path</replaceable></option> option
+ to cause each server to use a different data directory, log files,
+ and PID file. (The defaults for all these values are determined
+ relative to the base directory). In that case, the only other
+ options you need to specify are the <option>--socket</option> and
<option>--port</option> options. For example, suppose that you
install different versions of MySQL using <filename>tar</filename>
file binary distributions. These install in different locations,
@@ -23180,7 +23182,9 @@
specifying appropriate command-line options. However, if you need
to run multiple servers on a more permanent basis, it is more
convenient to use option files to specify for each server those
- option values that must be unique to it.
+ option values that must be unique to it. The
+ <option>--defaults-file</option> option is useful for this
+ purpose.
</para>
<section id="multiple-windows-servers">
@@ -23224,15 +23228,11 @@
make sure that before you start the servers, each data
directory exists and has its own copy of the
<literal>mysql</literal> database that contains the grant
- tables.)
+ tables.) Then create two option files. For example, create one
+ file named <filename>C:\my-opts1.cnf</filename> that looks
+ like this:
</para>
- <para>
- Then create two option files. For example, create one file
- named <filename>C:\my-opts1.cnf</filename> that looks like
- this:
- </para>
-
<programlisting>
[mysqld]
datadir = C:/mydata1
@@ -23261,13 +23261,13 @@
<para>
On NT, each server starts in the foreground (no new prompt
- appears until the server exits later); you'll need to issue
+ appears until the server exits later), so you'll need to issue
those two commands in separate console windows.
</para>
<para>
- To shut down the servers, you must connect to the appropriate
- port number:
+ To shut down the servers, you must connect to each using the
+ appropriate port number:
</para>
<programlisting>
@@ -23278,11 +23278,11 @@
<para>
Servers configured as just described allow clients to connect
over TCP/IP. If your version of Windows supports named pipes
- and you also want to allow named pipe connections, use the
+ and you also want to allow named-pipe connections, use the
<command>mysqld-nt</command> or
<command>mysqld-max-nt</command> servers and specify options
that enable the named pipe and specify its name. Each server
- that supports named pipe connections must use a unique pipe
+ that supports named-pipe connections must use a unique pipe
name. For example, the <filename>C:\my-opts1.cnf</filename>
file might be written like this:
</para>
@@ -23308,6 +23308,14 @@
by the second server.
</para>
+ <para>
+ A similar procedure applies for servers that you want to
+ support shared-memory connections. Enable such connections
+ with the <option>--shared-memory</option> option and specify a
+ unique shared-memory name for each server with the
+ <option>--shared-memory-base-name</option> option.
+ </para>
+
</section>
<section id="multiple-windows-services">
@@ -23315,7 +23323,7 @@
<title>&title-multiple-windows-services;</title>
<para>
- On NT-based systems, a MySQL server can be run as a Windows
+ On NT-based systems, a MySQL server can run as a Windows
service. The procedures for installing, controlling, and
removing a single MySQL service are described in
<xref linkend="windows-start-service"/>.
@@ -23509,7 +23517,8 @@
<programlisting>
[mysqld]
-basedir = C:/mysql-¤t-version; port = 3308
+basedir = C:/mysql-¤t-version;
+port = 3308
enable-named-pipe
socket = mypipe2
</programlisting>
@@ -23585,7 +23594,7 @@
<replaceable>file_name</replaceable> must be different from the
default TCP/IP port number and Unix socket file pathname, and
the <option>--prefix</option> value should specify an
- installation directory different than the one under which the
+ installation directory different from the one under which the
existing MySQL installation is located.
</para>
@@ -23619,8 +23628,9 @@
<para>
You don't have to compile a new MySQL server just to start with
a different Unix socket file and TCP/IP port number. It is also
- possible to specify those values at runtime. One way to do so is
- by using command-line options:
+ possible to use the same server binary and start each invocation
+ of it with different parameter values at runtime. One way to do
+ so is by using command-line options:
</para>
<programlisting>
@@ -23673,7 +23683,7 @@
testing. The nice thing about this method is that the
environment variable settings apply to any client programs that
you invoke from the same shell. Thus, connections for those
- clients are automatically directed to the second server!
+ clients are automatically directed to the second server.
</para>
<para>
@@ -23711,10 +23721,9 @@
<title>&title-multiple-server-clients;</title>
<para>
- When you want to connect with a client program to a MySQL server
- that is listening to different network interfaces than those
- compiled into your client, you can use one of the following
- methods:
+ To connect with a client program to a MySQL server that is
+ listening to different network interfaces than those compiled
+ into your client, you can use one of the following methods:
</para>
<itemizedlist>
@@ -23747,9 +23756,9 @@
<option>--port</option> options. For the other types of
connections, you may need to specify a
<option>--socket</option> option to specify a Unix socket
- file or named pipe name, or a
+ file or Windows named-pipe name, or a
<option>--shared-memory-base-name</option> option to specify
- the shared memory name. Shared memory connections are
+ the shared-memory name. Shared-memory connections are
supported only on Windows.
</para>
</listitem>
@@ -23859,17 +23868,17 @@
<para>
The query cache stores the text of a <literal>SELECT</literal>
- query together with the corresponding result that was sent to the
- client. If an identical query is received later, the server
- retrieves the results from the query cache rather than parsing and
- executing the query again.
+ statement together with the corresponding result that was sent to
+ the client. If an identical statement is received later, the
+ server retrieves the results from the query cache rather than
+ parsing and executing the statement again.
</para>
<para>
The query cache is extremely useful in an environment where you
have tables that don't change very often and for which the server
- receives a lot of identical queries. This is a typical situation
- for many Web servers that generate a lot of dynamic pages based on
+ receives many identical queries. This is a typical situation for
+ many Web servers that generate many dynamic pages based on
database content.
</para>
@@ -23929,9 +23938,10 @@
To disable the query cache at server startup, set the
<literal>query_cache_size</literal> system variable to 0. By
disabling the query cache code, there is no noticeable overhead.
- Query cache capabilities can be excluded from the server entirely
- by using the <option>--without-query-cache</option> option to
- <command>configure</command> when compiling MySQL.
+ If you build MySQL from source, query cache capabilities can be
+ excluded from the server entirely by invoking
+ <command>configure</command> with the
+ <option>--without-query-cache</option> option.
</para>
<section id="query-cache-how">
@@ -23945,8 +23955,9 @@
</para>
<para>
- Queries are compared before parsing, so the following two
- queries are regarded as different by the query cache:
+ Incoming queries are compared to those in the query cache before
+ parsing, so the following two queries are regarded as different
+ by the query cache:
</para>
<programlisting>
@@ -23964,9 +23975,9 @@
</para>
<para>
- Before a query is fetched from the query cache, MySQL checks
- that the user has <literal>SELECT</literal> privilege for all
- databases and tables involved. If this is not the case, the
+ Before a query result is fetched from the query cache, MySQL
+ checks that the user has <literal>SELECT</literal> privilege for
+ all databases and tables involved. If this is not the case, the
cached result is not used.
</para>
@@ -23978,15 +23989,14 @@
</para>
<para>
- If a table changes, then all cached queries using that table
- become invalid and are removed from the cache. This includes
- queries that use <literal>MERGE</literal> tables that map to the
- changed table. A table can be changed by many types of
- statements, such as <literal>INSERT</literal>,
- <literal>UPDATE</literal>, <literal>DELETE</literal>,
- <literal>TRUNCATE</literal>, <literal>ALTER TABLE</literal>,
- <literal>DROP TABLE</literal>, or <literal>DROP
- DATABASE</literal>.
+ If a table changes, all cached queries using that table become
+ invalid and are removed from the cache. This includes queries
+ that use <literal>MERGE</literal> tables that map to the changed
+ table. A table can be changed by many types of statements, such
+ as <literal>INSERT</literal>, <literal>UPDATE</literal>,
+ <literal>DELETE</literal>, <literal>TRUNCATE</literal>,
+ <literal>ALTER TABLE</literal>, <literal>DROP TABLE</literal>,
+ or <literal>DROP DATABASE</literal>.
</para>
<para>
@@ -24026,8 +24036,8 @@
</para>
<para>
- A query cannot be cached if it contains any of the following
- functions:
+ A query cannot be cached if it contains any of the functions
+ shown in the following table.
</para>
<informaltable>
@@ -24098,8 +24108,8 @@
</remark>
<para>
- It refers to the tables in the <literal>mysql</literal>
- system database.
+ It refers to tables in the <literal>mysql</literal> system
+ database.
</para>
</listitem>
@@ -24126,8 +24136,8 @@
<listitem>
<para>
It was issued as a prepared statement, even if no
- placeholders were employed. For example, the query used
- here:
+ placeholders were employed. For example, the query used here
+ is not cached:
</para>
<programlisting>
@@ -24137,8 +24147,7 @@
</programlisting>
<para>
- is not cached. See
- <xref linkend="c-api-prepared-statements"/>.
+ See <xref linkend="c-api-prepared-statements"/>.
</para>
</listitem>
@@ -24255,16 +24264,16 @@
<para>
To set the size of the query cache, set the
<literal>query_cache_size</literal> system variable. Setting it
- to 0 disables the query cache. The default cache size is 0; that
- is, the query cache is disabled.
+ to 0 disables the query cache. The default size is 0, so the
+ query cache is disabled by default.
</para>
<para>
- When setting <literal>query_cache_size</literal> to a non-zero
- value keep in mind that the query cache needs a minimum size of
+ When you set <literal>query_cache_size</literal> to a non-zero
+ value, keep in mind that the query cache needs a minimum size of
about 40KB to allocate its structures. (The exact size depends
- on architecture.) If you set the value too small, you'll get a
- warning, like in this example:
+ on system architecture.) If you set the value too small, you'll
+ get a warning, as in this example:
</para>
<programlisting>
@@ -24322,13 +24331,14 @@
</itemizedlist>
<para>
- Setting the <literal>GLOBAL</literal> value of
- <literal>query_cache_type</literal> determines query cache
+ Setting the <literal>GLOBAL</literal>
+ <literal>query_cache_type</literal> value determines query cache
behavior for all clients that connect after the change is made.
Individual clients can control cache behavior for their own
- connection by setting the <literal>SESSION</literal> value of
- <literal>query_cache_type</literal>. For example, a client can
- disable use of the query cache for its own queries like this:
+ connection by setting the <literal>SESSION</literal>
+ <literal>query_cache_type</literal> value. For example, a client
+ can disable use of the query cache for its own queries like
+ this:
</para>
<programlisting>
@@ -24337,18 +24347,18 @@
<para>
To control the maximum size of individual query results that can
- be cached, set the <literal>query_cache_limit</literal>
+ be cached, set the <literal>query_cache_limit</literal> system
variable. The default value is 1MB.
</para>
<para>
- The result of a query (the data sent to the client) is stored in
- the query cache during result retrieval. Therefore the data
- usually is not handled in one big chunk. The query cache
- allocates blocks for storing this data on demand, so when one
- block is filled, a new block is allocated. Because memory
- allocation operation is costly (timewise), the query cache
- allocates blocks with a minimum size given by the
+ When a query that is to be cached, its result (the data sent to
+ the client) is stored in the query cache during result
+ retrieval. Therefore the data usually is not handled in one big
+ chunk. The query cache allocates blocks for storing this data on
+ demand, so when one block is filled, a new block is allocated.
+ Because memory allocation operation is costly (timewise), the
+ query cache allocates blocks with a minimum size given by the
<literal>query_cache_min_res_unit</literal> system variable.
When a query is executed, the last result block is trimmed to
the actual data size so that unused memory is freed. Depending
@@ -24467,8 +24477,8 @@
</para>
<para>
- The total number of <literal>SELECT</literal> queries is equal
- to:
+ The total number of <literal>SELECT</literal> queries is given
+ by this formula:
</para>
<programlisting>
@@ -24478,13 +24488,14 @@
</programlisting>
<para>
- The <literal>Com_select</literal> value is equal to:
+ The <literal>Com_select</literal> value is given by this
+ formula:
</para>
<programlisting>
Qcache_inserts
+ Qcache_not_cached
-+ queries with errors found during columns/rights check
++ queries with errors found during the column-privileges check
</programlisting>
<para>
@@ -24499,8 +24510,8 @@
Every cached query requires a minimum of two blocks (one for the
query text and one or more for the query results). Also, every
table that is used by a query requires one block. However, if
- two or more queries use the same table, only one block needs to
- be allocated.
+ two or more queries use the same table, only one table block
+ needs to be allocated.
</para>
<para>
Modified: trunk/refman-5.0/installing.xml
===================================================================
--- trunk/refman-5.0/installing.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.0/installing.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -4471,7 +4471,7 @@
<listitem>
<para>
- Named pipe connections are allowed only by the
+ Named-pipe connections are allowed only by the
<command>mysqld-nt</command> or
<command>mysqld-max-nt</command> servers, and only if the
server is run on a version of Windows that supports named
@@ -4482,7 +4482,7 @@
<listitem>
<para>
These servers can be run on Windows 98 or Me, but only if
- TCP/IP is installed; named pipe connections cannot be used.
+ TCP/IP is installed; named-pipe connections cannot be used.
</para>
</listitem>
@@ -4540,7 +4540,7 @@
<para>
On NT-based systems such as Windows NT, 2000, XP, or 2003,
clients have two options. They can use TCP/IP, or they can use a
- named pipe if the server supports named pipe connections. To get
+ named pipe if the server supports named-pipe connections. For
MySQL to work with TCP/IP on Windows NT 4, you must install
service pack 3 (or newer).
</para>
@@ -5114,7 +5114,7 @@
</para>
<para>
- You can force a MySQL client to use a named pipe connection
+ You can force a MySQL client to use a named-pipe connection
rather than TCP/IP by specifying the <option>--pipe</option> or
<option>--protocol=PIPE</option> option, or by specifying
<literal>.</literal> (period) as the host name. Use the
@@ -5518,7 +5518,7 @@
<para>
MySQL uses a blocking read for each connection, which has
- the following implications if named pipe connections are
+ the following implications if named-pipe connections are
enabled:
</para>
Modified: trunk/refman-5.0/replication.xml
===================================================================
--- trunk/refman-5.0/replication.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.0/replication.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -1659,9 +1659,9 @@
You must <emphasis role="bold">always</emphasis> use the
same <emphasis role="bold">global</emphasis> character set
and collation (<option>--character-set-server</option>,
- <option>--collation-server</option>) on the master and
- the slave. Otherwise, you may get duplicate-key errors on
- the slave, because a key that is regarded as unique in the
+ <option>--collation-server</option>) on the master and the
+ slave. Otherwise, you may get duplicate-key errors on the
+ slave, because a key that is regarded as unique in the
master's character set may not be unique in the slave's
character set.
</para>
@@ -1669,16 +1669,16 @@
<listitem>
<para>
- If the master is older than MySQL 4.1.3, the
- character set of the session should never be made
- different from its global value (in other words, do not
- use <literal>SET NAMES</literal>, <literal>SET CHARACTER
- SET</literal>, and so on) because this character set
- change is not known to the slave. If both the master and
- the slave are 4.1.3 or newer, the session can freely set
- local values for character set variables (such as
- <literal>NAMES</literal>, <literal>CHARACTER
- SET</literal>, <literal>COLLATION_CLIENT</literal>, and
+ If the master is older than MySQL 4.1.3, the character set
+ of the session should never be made different from its
+ global value (in other words, do not use <literal>SET
+ NAMES</literal>, <literal>SET CHARACTER SET</literal>, and
+ so on) because this character set change is not known to
+ the slave. If both the master and the slave are 4.1.3 or
+ newer, the session can freely set local values for
+ character set variables (such as <literal>NAMES</literal>,
+ <literal>CHARACTER SET</literal>,
+ <literal>COLLATION_CLIENT</literal>, and
<literal>COLLATION_SERVER</literal>) as these settings are
written to the binary log and so known to the slave.
However, the session is prevented from changing the
@@ -3746,11 +3746,11 @@
</para>
<para>
- To determine how many slaves you can get before the added
- benefits begin to level out, and how much you can improve
- performance of your site, you need to know your query patterns,
- and to determine empirically by benchmarking the relationship
- between the throughput for reads (reads per second, or
+ To determine how many slaves you can get before the added benefits
+ begin to level out, and how much you can improve performance of
+ your site, you need to know your query patterns, and to determine
+ empirically by benchmarking the relationship between the
+ throughput for reads (reads per second, or
<literal>max_reads</literal>) and for writes
(<literal>max_writes</literal>) on a typical master and a typical
slave. The example here shows a rather simplified calculation of
Modified: trunk/refman-5.0/sql-syntax.xml
===================================================================
--- trunk/refman-5.0/sql-syntax.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.0/sql-syntax.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -11834,9 +11834,9 @@
</para>
<para>
- To accommodate granting rights to users from
- arbitrary hosts, MySQL supports specifying the
- <replaceable>user</replaceable> value in the form
+ To accommodate granting rights to users from arbitrary hosts,
+ MySQL supports specifying the <replaceable>user</replaceable>
+ value in the form
<literal><replaceable>user_name</replaceable>@<replaceable>host_name</replaceable></literal>.
If a <replaceable>user_name</replaceable> or
<replaceable>host_name</replaceable> value is legal as an
@@ -17845,8 +17845,8 @@
<listitem>
<para>
If the thread is waiting for free disk space in a write
- call, the write is aborted with a <quote>disk full</quote> error
- message.
+ call, the write is aborted with a <quote>disk full</quote>
+ error message.
</para>
</listitem>
Modified: trunk/refman-5.1/apis.xml
===================================================================
--- trunk/refman-5.1/apis.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.1/apis.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -4606,7 +4606,7 @@
<para>
This is a synonym for the
- <literal>mysql_server_init()</literal> function. See
+ <literal>mysql_server_init()</literal> function. See
<xref linkend="mysql-server-init"/>.
</para>
@@ -5549,7 +5549,7 @@
<row>
<entry><literal>MYSQL_SHARED_MEMORY_BASE_NAME</literal></entry>
<entry><literal>char*</literal></entry>
- <entry>Named of shared memory object for communication to server. Should be
+ <entry>Named of shared-memory object for communication to server. Should be
same as the option
<option>--shared-memory-base-name</option> used for
the <command>mysqld</command> server you want to
@@ -5658,7 +5658,7 @@
</row>
<row>
<entry><literal>shared-memory-base-name=<replaceable>name</replaceable></literal></entry>
- <entry>Shared memory name to use to connect to server (default is "MYSQL").</entry>
+ <entry>Shared-memory name to use to connect to server (default is "MYSQL").</entry>
</row>
<row>
<entry><literal>socket</literal></entry>
Modified: trunk/refman-5.1/charset.xml
===================================================================
--- trunk/refman-5.1/charset.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.1/charset.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -1470,9 +1470,9 @@
binary collation of the column's character set. Every character
set has a binary collation. For example, the binary collation
for the <literal>latin1</literal> character set is
- <literal>latin1_bin</literal>, so if the the table default
- character set is <literal>latin1</literal>, these two column
- definitions are equivalent:
+ <literal>latin1_bin</literal>, so if the table default character
+ set is <literal>latin1</literal>, these two column definitions
+ are equivalent:
</para>
<programlisting>
@@ -1997,7 +1997,7 @@
<para>
<literal>INFORMATION_SCHEMA</literal> has several tables that
- contain information information similar to that displayed by the
+ contain information similar to that displayed by the
<literal>SHOW</literal> statements. For example, the
<literal>CHARACTER_SETS</literal> and
<literal>COLLATIONS</literal> tables contain the information
Modified: trunk/refman-5.1/connector-net.xml
===================================================================
--- trunk/refman-5.1/connector-net.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.1/connector-net.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -2291,7 +2291,7 @@
<literal>Port</literal>: The port MySQL is using to listen
for connections. Default is <literal>3306</literal>.
Specify <literal>-1</literal> for this value to use a
- named pipe connection.
+ named-pipe connection.
</para>
</listitem>
Modified: trunk/refman-5.1/database-administration.xml
===================================================================
--- trunk/refman-5.1/database-administration.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.1/database-administration.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -821,7 +821,7 @@
on Windows NT, 2000, XP, and 2003 systems, and can be used
only with the <command>mysqld-nt</command> and
<command>mysqld-max-nt</command> servers that support
- named pipe connections.
+ named-pipe connections.
</para>
</listitem>
@@ -13317,9 +13317,9 @@
Privilege columns indicate which privileges are granted by a
table row; that is, what operations can be performed. The
server combines the information in the various grant tables
- to form a complete description of a user's privileges. The
- rules used to do this are described in
- <xref linkend="request-access"/>.
+ to form a complete description of a user's privileges.
+ <xref linkend="request-access"/>, describes the rules that
+ are rules used to do this.
</para>
</listitem>
@@ -20397,8 +20397,8 @@
</para>
<para>
- An even better test would be to check any table whose
- last-modified time is more recent than that of the
+ An even better test would be to check any table that has a
+ last-modified time more recent than that of the
<filename>.pid</filename> file.
</para>
@@ -21258,8 +21258,8 @@
If you change the character set when running MySQL, that may
also change the sort order. Consequently, you must run
<command>myisamchk -r -q
- --set-collation=<replaceable>charset</replaceable></command>
- on all tables, or your indexes may not be ordered correctly.
+ --set-collation=<replaceable>charset</replaceable></command> on
+ all tables, or your indexes may not be ordered correctly.
</para>
<para>
@@ -22589,8 +22589,8 @@
<para>
For example, a slave running with only
<literal>binlog-do-db=sales</literal> does not write to the
- binary log any statement whose default database is different
- from <literal>sales</literal> (in other words,
+ binary log any statement for which the default database is
+ different from <literal>sales</literal> (in other words,
<literal>binlog-do-db</literal> can sometimes mean <quote>ignore
other databases</quote>).
</para>
@@ -22608,9 +22608,9 @@
</para>
<para>
- A client with the <literal>SUPER</literal> privilege can disable
- binary logging of its own statements by using a <literal>SET
- SQL_LOG_BIN=0</literal> statement. See
+ A client that has the <literal>SUPER</literal> privilege can
+ disable binary logging of its own statements by using a
+ <literal>SET SQL_LOG_BIN=0</literal> statement. See
<xref linkend="set-option"/>.
</para>
@@ -22677,12 +22677,12 @@
</para>
<para>
- If you are using the binary log, concurrent
- inserts are converted to normal inserts for
- <literal>CREATE ... SELECT</literal> or <literal>INSERT ...
- SELECT</literal> statement. This is done to ensure that you can re-create an
+ If you are using the binary log, concurrent inserts are
+ converted to normal inserts for <literal>CREATE ...
+ SELECT</literal> or <literal>INSERT ... SELECT</literal>
+ statement. This is done to ensure that you can re-create an
exact copy of your tables by applying the log during a backup
-operation.
+ operation.
</para>
<para>
@@ -22906,10 +22906,9 @@
<listitem>
<para>
- If binary
- logging (<option>--log-bin</option>) is used, the server closes
-the current log file
- and opens a new log file with the next sequence number.
+ If binary logging (<option>--log-bin</option>) is used, the
+ server closes the current log file and opens a new log file
+ with the next sequence number.
</para>
</listitem>
@@ -22966,7 +22965,7 @@
In some cases, you might want to run multiple
<command>mysqld</command> servers on the same machine. You might
want to test a new MySQL release while leaving your existing
- production setup undisturbed. Or you may want to give different
+ production setup undisturbed. Or you might want to give different
users access to different <command>mysqld</command> servers that
they manage themselves. (For example, you might be an Internet
Service Provider that wants to provide independent MySQL
@@ -23005,8 +23004,8 @@
<para>
<option>--socket</option> controls the Unix socket file path
on Unix and the name of the named pipe on Windows. On Windows,
- it's necessary to specify distinct pipe names only for those
- servers that support named pipe connections.
+ it is necessary to specify distinct pipe names only for those
+ servers that support named-pipe connections.
</para>
</listitem>
@@ -23017,8 +23016,10 @@
<para>
This option currently is used only on Windows. It designates
- the shared memory name used by a Windows server to allow
- clients to connect via shared memory.
+ the shared-memory name used by a Windows server to allow
+ clients to connect via shared memory. It is necessary to
+ specify distinct shared-memory names only for those servers
+ that support shared-memory connections.
</para>
</listitem>
@@ -23079,14 +23080,14 @@
</itemizedlist>
<para>
- Log file options are described in
- <xref linkend="log-file-maintenance"/>.
+ <xref linkend="log-file-maintenance"/>, discusses the log file
+ options further.
</para>
<para>
- For better performance performance, you can specify the following
- options differently for each server, in order to spread the load
- between physical disks:
+ For better performance, you can specify the following options
+ differently for each server, to spread the load between physical
+ disks:
</para>
<itemizedlist>
@@ -23106,15 +23107,15 @@
</itemizedlist>
<para>
- Having different temporary directories is also recommended, to
- make it easier to determine which MySQL server created any given
+ Having different temporary directories is also recommended to make
+ it easier to determine which MySQL server created any given
temporary file.
</para>
<para>
- Generally, each server should also use a different data directory,
- which is specified using the <option>--datadir=path</option>
- option.
+ With very limited exceptions, each server should use a different
+ data directory, which is specified using the
+ <option>--datadir=<replaceable>path</replaceable></option> option.
</para>
<para>
@@ -23149,7 +23150,7 @@
<listitem>
<para>
- Another risk with NFS is that you has to come up with a way to
+ Another risk with NFS is that you must come up with a way to
make sure that two or more servers do not interfere with each
other. Usually NFS file locking is handled by the
<literal>lockd</literal> daemon, but at the moment there is no
@@ -23169,12 +23170,13 @@
<para>
If you have multiple MySQL installations in different locations,
- normally you can specify the base installation directory for each
- server with the <option>--basedir=path</option> option to cause
- each server to use a different data directory, log files, and PID
- file. (The defaults for all these values are determined relative
- to the base directory). In that case, the only other options you
- need to specify are the <option>--socket</option> and
+ you can specify the base installation directory for each server
+ with the
+ <option>--basedir=<replaceable>path</replaceable></option> option
+ to cause each server to use a different data directory, log files,
+ and PID file. (The defaults for all these values are determined
+ relative to the base directory). In that case, the only other
+ options you need to specify are the <option>--socket</option> and
<option>--port</option> options. For example, suppose that you
install different versions of MySQL using <filename>tar</filename>
file binary distributions. These install in different locations,
@@ -23193,7 +23195,9 @@
specifying appropriate command-line options. However, if you need
to run multiple servers on a more permanent basis, it is more
convenient to use option files to specify for each server those
- option values that must be unique to it.
+ option values that must be unique to it. The
+ <option>--defaults-file</option> option is useful for this
+ purpose.
</para>
<section id="multiple-windows-servers">
@@ -23237,15 +23241,11 @@
make sure that before you start the servers, each data
directory exists and has its own copy of the
<literal>mysql</literal> database that contains the grant
- tables.)
+ tables.) Then create two option files. For example, create one
+ file named <filename>C:\my-opts1.cnf</filename> that looks
+ like this:
</para>
- <para>
- Then create two option files. For example, create one file
- named <filename>C:\my-opts1.cnf</filename> that looks like
- this:
- </para>
-
<programlisting>
[mysqld]
datadir = C:/mydata1
@@ -23274,13 +23274,13 @@
<para>
On NT, each server starts in the foreground (no new prompt
- appears until the server exits later); you'll need to issue
+ appears until the server exits later), so you'll need to issue
those two commands in separate console windows.
</para>
<para>
- To shut down the servers, you must connect to the appropriate
- port number:
+ To shut down the servers, you must connect to each using the
+ appropriate port number:
</para>
<programlisting>
@@ -23291,11 +23291,11 @@
<para>
Servers configured as just described allow clients to connect
over TCP/IP. If your version of Windows supports named pipes
- and you also want to allow named pipe connections, use the
+ and you also want to allow named-pipe connections, use the
<command>mysqld-nt</command> or
<command>mysqld-max-nt</command> servers and specify options
that enable the named pipe and specify its name. Each server
- that supports named pipe connections must use a unique pipe
+ that supports named-pipe connections must use a unique pipe
name. For example, the <filename>C:\my-opts1.cnf</filename>
file might be written like this:
</para>
@@ -23321,6 +23321,14 @@
by the second server.
</para>
+ <para>
+ A similar procedure applies for servers that you want to
+ support shared-memory connections. Enable such connections
+ with the <option>--shared-memory</option> option and specify a
+ unique shared-memory name for each server with the
+ <option>--shared-memory-base-name</option> option.
+ </para>
+
</section>
<section id="multiple-windows-services">
@@ -23328,7 +23336,7 @@
<title>&title-multiple-windows-services;</title>
<para>
- On NT-based systems, a MySQL server can be run as a Windows
+ On NT-based systems, a MySQL server can run as a Windows
service. The procedures for installing, controlling, and
removing a single MySQL service are described in
<xref linkend="windows-start-service"/>.
@@ -23522,7 +23530,8 @@
<programlisting>
[mysqld]
-basedir = C:/mysql-¤t-version; port = 3308
+basedir = C:/mysql-¤t-version;
+port = 3308
enable-named-pipe
socket = mypipe2
</programlisting>
@@ -23598,7 +23607,7 @@
<replaceable>file_name</replaceable> must be different from the
default TCP/IP port number and Unix socket file pathname, and
the <option>--prefix</option> value should specify an
- installation directory different than the one under which the
+ installation directory different from the one under which the
existing MySQL installation is located.
</para>
@@ -23632,8 +23641,9 @@
<para>
You don't have to compile a new MySQL server just to start with
a different Unix socket file and TCP/IP port number. It is also
- possible to specify those values at runtime. One way to do so is
- by using command-line options:
+ possible to use the same server binary and start each invocation
+ of it with different parameter values at runtime. One way to do
+ so is by using command-line options:
</para>
<programlisting>
@@ -23686,7 +23696,7 @@
testing. The nice thing about this method is that the
environment variable settings apply to any client programs that
you invoke from the same shell. Thus, connections for those
- clients are automatically directed to the second server!
+ clients are automatically directed to the second server.
</para>
<para>
@@ -23724,10 +23734,9 @@
<title>&title-multiple-server-clients;</title>
<para>
- When you want to connect with a client program to a MySQL server
- that is listening to different network interfaces than those
- compiled into your client, you can use one of the following
- methods:
+ To connect with a client program to a MySQL server that is
+ listening to different network interfaces than those compiled
+ into your client, you can use one of the following methods:
</para>
<itemizedlist>
@@ -23760,9 +23769,9 @@
<option>--port</option> options. For the other types of
connections, you may need to specify a
<option>--socket</option> option to specify a Unix socket
- file or named pipe name, or a
+ file or Windows named-pipe name, or a
<option>--shared-memory-base-name</option> option to specify
- the shared memory name. Shared memory connections are
+ the shared-memory name. Shared-memory connections are
supported only on Windows.
</para>
</listitem>
@@ -23872,17 +23881,17 @@
<para>
The query cache stores the text of a <literal>SELECT</literal>
- query together with the corresponding result that was sent to the
- client. If an identical query is received later, the server
- retrieves the results from the query cache rather than parsing and
- executing the query again.
+ statement together with the corresponding result that was sent to
+ the client. If an identical statement is received later, the
+ server retrieves the results from the query cache rather than
+ parsing and executing the statement again.
</para>
<para>
The query cache is extremely useful in an environment where you
have tables that don't change very often and for which the server
- receives a lot of identical queries. This is a typical situation
- for many Web servers that generate a lot of dynamic pages based on
+ receives many identical queries. This is a typical situation for
+ many Web servers that generate many dynamic pages based on
database content.
</para>
@@ -23942,9 +23951,10 @@
To disable the query cache at server startup, set the
<literal>query_cache_size</literal> system variable to 0. By
disabling the query cache code, there is no noticeable overhead.
- Query cache capabilities can be excluded from the server entirely
- by using the <option>--without-query-cache</option> option to
- <command>configure</command> when compiling MySQL.
+ If you build MySQL from source, query cache capabilities can be
+ excluded from the server entirely by invoking
+ <command>configure</command> with the
+ <option>--without-query-cache</option> option.
</para>
<section id="query-cache-how">
@@ -23958,8 +23968,9 @@
</para>
<para>
- Queries are compared before parsing, so the following two
- queries are regarded as different by the query cache:
+ Incoming queries are compared to those in the query cache before
+ parsing, so the following two queries are regarded as different
+ by the query cache:
</para>
<programlisting>
@@ -23977,9 +23988,9 @@
</para>
<para>
- Before a query is fetched from the query cache, MySQL checks
- that the user has <literal>SELECT</literal> privilege for all
- databases and tables involved. If this is not the case, the
+ Before a query result is fetched from the query cache, MySQL
+ checks that the user has <literal>SELECT</literal> privilege for
+ all databases and tables involved. If this is not the case, the
cached result is not used.
</para>
@@ -23991,15 +24002,14 @@
</para>
<para>
- If a table changes, then all cached queries using that table
- become invalid and are removed from the cache. This includes
- queries that use <literal>MERGE</literal> tables that map to the
- changed table. A table can be changed by many types of
- statements, such as <literal>INSERT</literal>,
- <literal>UPDATE</literal>, <literal>DELETE</literal>,
- <literal>TRUNCATE</literal>, <literal>ALTER TABLE</literal>,
- <literal>DROP TABLE</literal>, or <literal>DROP
- DATABASE</literal>.
+ If a table changes, all cached queries using that table become
+ invalid and are removed from the cache. This includes queries
+ that use <literal>MERGE</literal> tables that map to the changed
+ table. A table can be changed by many types of statements, such
+ as <literal>INSERT</literal>, <literal>UPDATE</literal>,
+ <literal>DELETE</literal>, <literal>TRUNCATE</literal>,
+ <literal>ALTER TABLE</literal>, <literal>DROP TABLE</literal>,
+ or <literal>DROP DATABASE</literal>.
</para>
<para>
@@ -24029,8 +24039,8 @@
</para>
<para>
- A query cannot be cached if it contains any of the following
- functions:
+ A query cannot be cached if it contains any of the functions
+ shown in the following table.
</para>
<informaltable>
@@ -24101,8 +24111,8 @@
</remark>
<para>
- It refers to the tables in the <literal>mysql</literal>
- system database.
+ It refers to tables in the <literal>mysql</literal> system
+ database.
</para>
</listitem>
@@ -24129,8 +24139,8 @@
<listitem>
<para>
It was issued as a prepared statement, even if no
- placeholders were employed. For example, the query used
- here:
+ placeholders were employed. For example, the query used here
+ is not cached:
</para>
<programlisting>
@@ -24140,8 +24150,7 @@
</programlisting>
<para>
- is not cached. See
- <xref linkend="c-api-prepared-statements"/>.
+ See <xref linkend="c-api-prepared-statements"/>.
</para>
</listitem>
@@ -24258,16 +24267,16 @@
<para>
To set the size of the query cache, set the
<literal>query_cache_size</literal> system variable. Setting it
- to 0 disables the query cache. The default cache size is 0; that
- is, the query cache is disabled.
+ to 0 disables the query cache. The default size is 0, so the
+ query cache is disabled by default.
</para>
<para>
- When setting <literal>query_cache_size</literal> to a non-zero
- value keep in mind that the query cache needs a minimum size of
+ When you set <literal>query_cache_size</literal> to a non-zero
+ value, keep in mind that the query cache needs a minimum size of
about 40KB to allocate its structures. (The exact size depends
- on architecture.) If you set the value too small, you'll get a
- warning, like in this example:
+ on system architecture.) If you set the value too small, you'll
+ get a warning, as in this example:
</para>
<programlisting>
@@ -24325,13 +24334,14 @@
</itemizedlist>
<para>
- Setting the <literal>GLOBAL</literal> value of
- <literal>query_cache_type</literal> determines query cache
+ Setting the <literal>GLOBAL</literal>
+ <literal>query_cache_type</literal> value determines query cache
behavior for all clients that connect after the change is made.
Individual clients can control cache behavior for their own
- connection by setting the <literal>SESSION</literal> value of
- <literal>query_cache_type</literal>. For example, a client can
- disable use of the query cache for its own queries like this:
+ connection by setting the <literal>SESSION</literal>
+ <literal>query_cache_type</literal> value. For example, a client
+ can disable use of the query cache for its own queries like
+ this:
</para>
<programlisting>
@@ -24340,18 +24350,18 @@
<para>
To control the maximum size of individual query results that can
- be cached, set the <literal>query_cache_limit</literal>
+ be cached, set the <literal>query_cache_limit</literal> system
variable. The default value is 1MB.
</para>
<para>
- The result of a query (the data sent to the client) is stored in
- the query cache during result retrieval. Therefore the data
- usually is not handled in one big chunk. The query cache
- allocates blocks for storing this data on demand, so when one
- block is filled, a new block is allocated. Because memory
- allocation operation is costly (timewise), the query cache
- allocates blocks with a minimum size given by the
+ When a query that is to be cached, its result (the data sent to
+ the client) is stored in the query cache during result
+ retrieval. Therefore the data usually is not handled in one big
+ chunk. The query cache allocates blocks for storing this data on
+ demand, so when one block is filled, a new block is allocated.
+ Because memory allocation operation is costly (timewise), the
+ query cache allocates blocks with a minimum size given by the
<literal>query_cache_min_res_unit</literal> system variable.
When a query is executed, the last result block is trimmed to
the actual data size so that unused memory is freed. Depending
@@ -24470,8 +24480,8 @@
</para>
<para>
- The total number of <literal>SELECT</literal> queries is equal
- to:
+ The total number of <literal>SELECT</literal> queries is given
+ by this formula:
</para>
<programlisting>
@@ -24481,13 +24491,14 @@
</programlisting>
<para>
- The <literal>Com_select</literal> value is equal to:
+ The <literal>Com_select</literal> value is given by this
+ formula:
</para>
<programlisting>
Qcache_inserts
+ Qcache_not_cached
-+ queries with errors found during columns/rights check
++ queries with errors found during the column-privileges check
</programlisting>
<para>
@@ -24502,8 +24513,8 @@
Every cached query requires a minimum of two blocks (one for the
query text and one or more for the query results). Also, every
table that is used by a query requires one block. However, if
- two or more queries use the same table, only one block needs to
- be allocated.
+ two or more queries use the same table, only one table block
+ needs to be allocated.
</para>
<para>
Modified: trunk/refman-5.1/installing.xml
===================================================================
--- trunk/refman-5.1/installing.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.1/installing.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -4468,7 +4468,7 @@
<listitem>
<para>
- Named pipe connections are allowed only by the
+ Named-pipe connections are allowed only by the
<command>mysqld-nt</command> or
<command>mysqld-max-nt</command> servers, and only if the
server is run on a version of Windows that supports named
@@ -4479,7 +4479,7 @@
<listitem>
<para>
These servers can be run on Windows 98 or Me, but only if
- TCP/IP is installed; named pipe connections cannot be used.
+ TCP/IP is installed; named-pipe connections cannot be used.
</para>
</listitem>
@@ -4537,7 +4537,7 @@
<para>
On NT-based systems such as Windows NT, 2000, XP, or 2003,
clients have two options. They can use TCP/IP, or they can use a
- named pipe if the server supports named pipe connections. To get
+ named pipe if the server supports named-pipe connections. For
MySQL to work with TCP/IP on Windows NT 4, you must install
service pack 3 (or newer).
</para>
@@ -5107,7 +5107,7 @@
</para>
<para>
- You can force a MySQL client to use a named pipe connection
+ You can force a MySQL client to use a named-pipe connection
rather than TCP/IP by specifying the <option>--pipe</option> or
<option>--protocol=PIPE</option> option, or by specifying
<literal>.</literal> (period) as the host name. Use the
@@ -5511,7 +5511,7 @@
<para>
MySQL uses a blocking read for each connection, which has
- the following implications if named pipe connections are
+ the following implications if named-pipe connections are
enabled:
</para>
Modified: trunk/refman-5.1/replication.xml
===================================================================
--- trunk/refman-5.1/replication.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.1/replication.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -1841,9 +1841,9 @@
You must <emphasis role="bold">always</emphasis> use the
same <emphasis role="bold">global</emphasis> character set
and collation (<option>--character-set-server</option>,
- <option>--collation-server</option>) on the master and
- the slave. Otherwise, you may get duplicate-key errors on
- the slave, because a key that is regarded as unique in the
+ <option>--collation-server</option>) on the master and the
+ slave. Otherwise, you may get duplicate-key errors on the
+ slave, because a key that is regarded as unique in the
master's character set may not be unique in the slave's
character set.
</para>
@@ -1851,16 +1851,16 @@
<listitem>
<para>
- If the master is older than MySQL 4.1.3, the
- character set of the session should never be made
- different from its global value (in other words, do not
- use <literal>SET NAMES</literal>, <literal>SET CHARACTER
- SET</literal>, and so on) because this character set
- change is not known to the slave. If both the master and
- the slave are 4.1.3 or newer, the session can freely set
- local values for character set variables (such as
- <literal>NAMES</literal>, <literal>CHARACTER
- SET</literal>, <literal>COLLATION_CLIENT</literal>, and
+ If the master is older than MySQL 4.1.3, the character set
+ of the session should never be made different from its
+ global value (in other words, do not use <literal>SET
+ NAMES</literal>, <literal>SET CHARACTER SET</literal>, and
+ so on) because this character set change is not known to
+ the slave. If both the master and the slave are 4.1.3 or
+ newer, the session can freely set local values for
+ character set variables (such as <literal>NAMES</literal>,
+ <literal>CHARACTER SET</literal>,
+ <literal>COLLATION_CLIENT</literal>, and
<literal>COLLATION_SERVER</literal>) as these settings are
written to the binary log and so known to the slave.
However, the session is prevented from changing the
@@ -3903,11 +3903,11 @@
</para>
<para>
- To determine how many slaves you can get before the added
- benefits begin to level out, and how much you can improve
- performance of your site, you need to know your query patterns,
- and to determine empirically by benchmarking the relationship
- between the throughput for reads (reads per second, or
+ To determine how many slaves you can get before the added benefits
+ begin to level out, and how much you can improve performance of
+ your site, you need to know your query patterns, and to determine
+ empirically by benchmarking the relationship between the
+ throughput for reads (reads per second, or
<literal>max_reads</literal>) and for writes
(<literal>max_writes</literal>) on a typical master and a typical
slave. The example here shows a rather simplified calculation of
Modified: trunk/refman-5.1/sql-syntax.xml
===================================================================
--- trunk/refman-5.1/sql-syntax.xml 2006-01-24 21:13:00 UTC (rev 1023)
+++ trunk/refman-5.1/sql-syntax.xml 2006-01-24 21:13:18 UTC (rev 1024)
@@ -12324,9 +12324,9 @@
</para>
<para>
- To accommodate granting rights to users from
- arbitrary hosts, MySQL supports specifying the
- <replaceable>user</replaceable> value in the form
+ To accommodate granting rights to users from arbitrary hosts,
+ MySQL supports specifying the <replaceable>user</replaceable>
+ value in the form
<literal><replaceable>user_name</replaceable>@<replaceable>host_name</replaceable></literal>.
If a <replaceable>user_name</replaceable> or
<replaceable>host_name</replaceable> value is legal as an
| Thread |
|---|
| • svn commit - mysqldoc@docsrva: r1024 - in trunk: . refman-4.1 refman-5.0 refman-5.1 | paul | 24 Jan |