Author: paul
Date: 2006-01-21 21:31:59 +0100 (Sat, 21 Jan 2006)
New Revision: 974
Log:
r6532@frost: paul | 2006-01-21 13:19:25 -0600
Move a section.
Modified:
trunk/
trunk/refman-4.1/database-administration.xml
trunk/refman-5.0/database-administration.xml
trunk/refman-5.1/database-administration.xml
Property changes on: trunk
___________________________________________________________________
Name: svk:merge
- b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:6531
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:2396
+ b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:6532
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:2396
Modified: trunk/refman-4.1/database-administration.xml
===================================================================
--- trunk/refman-4.1/database-administration.xml 2006-01-21 20:31:46 UTC (rev 973)
+++ trunk/refman-4.1/database-administration.xml 2006-01-21 20:31:59 UTC (rev 974)
@@ -9244,6 +9244,156 @@
</refsection>
+ <refsection id="server-shutdown">
+
+ <title>&title-server-shutdown;</title>
+
+ <para>
+ The server shutdown process takes place as follows:
+ </para>
+
+ <orderedlist>
+
+ <listitem>
+ <para>
+ The shutdown process is initiated.
+ </para>
+
+ <para>
+ Server shutdown can be initiated several ways. For
+ example, a user with the <literal>SHUTDOWN</literal>
+ privilege can execute a <command>mysqladmin
+ shutdown</command> command. <command>mysqladmin</command>
+ can be used on any platform supported by MySQL. Other
+ operating system-specific shutdown initiation methods are
+ possible as well: The server shuts down on Unix when it
+ receives a <literal>SIGTERM</literal> signal. A server
+ running as a service on Windows shuts down when the
+ services manager tells it to. (On Windows, a user with
+ Administrator rights can also shut down the server using
+ <literal>NET STOP
+ <replaceable>service_name</replaceable></literal>, where
+ <replaceable>service_name</replaceable> is the name of the
+ MySQL service. By default, this is
+ <literal>MySQL</literal>.)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ The server creates a shutdown thread if necessary.
+ </para>
+
+ <para>
+ Depending on how shutdown was initiated, the server might
+ create a thread to handle the shutdown process. If
+ shutdown was requested by a client, a shutdown thread is
+ created. If shutdown is the result of receiving a
+ <literal>SIGTERM</literal> signal, the signal thread might
+ handle shutdown itself, or it might create a separate
+ thread to do so. If the server tries to create a shutdown
+ thread and cannot (for example, if memory is exhausted),
+ it issues a diagnostic message that appears in the error
+ log:
+ </para>
+
+<programlisting>
+Error: cannot create thread to kill server
+</programlisting>
+ </listitem>
+
+ <listitem>
+ <para>
+ The server stops accepting new connections.
+ </para>
+
+ <para>
+ To prevent new activity from being initiated during
+ shutdown, the server stops accepting new client
+ connections. It does this by closing the network
+ connections to which it normally listens for connections:
+ the TCP/IP port, the Unix socket file, the Windows named
+ pipe, and shared memory on Windows.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ The server terminates current activity.
+ </para>
+
+ <para>
+ For each thread that is associated with a client
+ connection, the connection to the client is broken and the
+ thread is marked as killed. Threads die when they notice
+ that they are so marked. Threads for idle connections die
+ quickly. Threads that currently are processing queries
+ check their state periodically and take longer to die. For
+ additional information about thread termination, see
+ <xref linkend="kill"/>, in particular for the instructions
+ about killed <literal>REPAIR TABLE</literal> or
+ <literal>OPTIMIZE TABLE</literal> operations on
+ <literal>MyISAM</literal> tables.
+ </para>
+
+ <para>
+ For threads that have an open transaction, the transaction
+ is rolled back. Note that if a thread is updating a
+ non-transactional table, an operation such as a
+ multiple-row <literal>UPDATE</literal> or
+ <literal>INSERT</literal> may leave the table partially
+ updated, because the operation can terminate before
+ completion.
+ </para>
+
+ <para>
+ If the server is a master replication server, threads
+ associated with currently connected slaves are treated
+ like other client threads. That is, each one is marked as
+ killed and exits when it next checks its state.
+ </para>
+
+ <para>
+ If the server is a slave replication server, the I/O and
+ SQL threads, if active, are stopped before client threads
+ are marked as killed. The SQL thread is allowed to finish
+ its current statement (to avoid causing replication
+ problems) then stops. If the SQL thread was in the middle
+ of a transaction at this point, the transaction is rolled
+ back.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Storage engines are shut down or closed.
+ </para>
+
+ <para>
+ At this stage, the table cache is flushed and all open
+ tables are closed.
+ </para>
+
+ <para>
+ Each storage engine performs any actions necessary for
+ tables that it manages. For example,
+ <literal>MyISAM</literal> flushes any pending index writes
+ for a table. <literal>InnoDB</literal> flushes its buffer
+ pool to disk, writes the current LSN to the tablespace,
+ and terminates its own internal threads.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ The server exits.
+ </para>
+ </listitem>
+
+ </orderedlist>
+
+ </refsection>
+
</refentry>
</section>
@@ -9381,194 +9531,6 @@
</section>
- <section id="server-shutdown">
-
- <title>&title-server-shutdown;</title>
-
- <para>
- The server shutdown process can be summarized like this:
- </para>
-
- <orderedlist>
-
- <listitem>
- <para>
- The shutdown process is initiated.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server creates a shutdown thread if necessary.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server stops accepting new connections.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server terminates current activity.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Storage engines are shut down or closed.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server exits.
- </para>
- </listitem>
-
- </orderedlist>
-
- <para>
- A more detailed description of the process follows:
- </para>
-
- <orderedlist>
-
- <listitem>
- <para>
- The shutdown process is initiated.
- </para>
-
- <para>
- Server shutdown can be initiated several ways. For example, a
- user with the <literal>SHUTDOWN</literal> privilege can
- execute a <command>mysqladmin shutdown</command> command.
- <command>mysqladmin</command> can be used on any platform
- supported by MySQL. Other operating system-specific shutdown
- initiation methods are possible as well: The server shuts down
- on Unix when it receives a <literal>SIGTERM</literal> signal.
- A server running as a service on Windows shuts down when the
- services manager tells it to. (On Windows, a user with
- Administrator rights can also shut down the server using
- <literal>NET STOP
- <replaceable>service_name</replaceable></literal>, where
- <replaceable>service_name</replaceable> is the name of the
- MySQL service. By default, this is <literal>MySQL</literal>.)
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server creates a shutdown thread if necessary.
- </para>
-
- <para>
- Depending on how shutdown was initiated, the server might
- create a thread to handle the shutdown process. If shutdown
- was requested by a client, a shutdown thread is created. If
- shutdown is the result of receiving a
- <literal>SIGTERM</literal> signal, the signal thread might
- handle shutdown itself, or it might create a separate thread
- to do so. If the server tries to create a shutdown thread and
- cannot (for example, if memory is exhausted), it issues a
- diagnostic message that appears in the error log:
- </para>
-
-<programlisting>
-Error: cannot create thread to kill server
-</programlisting>
- </listitem>
-
- <listitem>
- <para>
- The server stops accepting new connections.
- </para>
-
- <para>
- To prevent new activity from being initiated during shutdown,
- the server stops accepting new client connections. It does
- this by closing the network connections to which it normally
- listens for connections: the TCP/IP port, the Unix socket
- file, the Windows named pipe, and shared memory on Windows.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server terminates current activity.
- </para>
-
- <para>
- For each thread that is associated with a client connection,
- the connection to the client is broken and the thread is
- marked as killed. Threads die when they notice that they are
- so marked. Threads for idle connections die quickly. Threads
- that currently are processing queries check their state
- periodically and take longer to die. For additional
- information about thread termination, see
- <xref linkend="kill"/>, in particular for the instructions
- about killed <literal>REPAIR TABLE</literal> or
- <literal>OPTIMIZE TABLE</literal> operations on
- <literal>MyISAM</literal> tables.
- </para>
-
- <para>
- For threads that have an open transaction, the transaction is
- rolled back. Note that if a thread is updating a
- non-transactional table, an operation such as a multiple-row
- <literal>UPDATE</literal> or <literal>INSERT</literal> may
- leave the table partially updated, because the operation can
- terminate before completion.
- </para>
-
- <para>
- If the server is a master replication server, threads
- associated with currently connected slaves are treated like
- other client threads. That is, each one is marked as killed
- and exits when it next checks its state.
- </para>
-
- <para>
- If the server is a slave replication server, the I/O and SQL
- threads, if active, are stopped before client threads are
- marked as killed. The SQL thread is allowed to finish its
- current statement (to avoid causing replication problems) then
- stops. If the SQL thread was in the middle of a transaction at
- this point, the transaction is rolled back.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Storage engines are shut down or closed.
- </para>
-
- <para>
- At this stage, the table cache is flushed and all open tables
- are closed.
- </para>
-
- <para>
- Each storage engine performs any actions necessary for tables
- that it manages. For example, <literal>MyISAM</literal>
- flushes any pending index writes for a table.
- <literal>InnoDB</literal> flushes its buffer pool to disk,
- writes the current LSN to the tablespace, and terminates its
- own internal threads.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server exits.
- </para>
- </listitem>
-
- </orderedlist>
-
- </section>
-
<section id="security">
<title>&title-security;</title>
Modified: trunk/refman-5.0/database-administration.xml
===================================================================
--- trunk/refman-5.0/database-administration.xml 2006-01-21 20:31:46 UTC (rev 973)
+++ trunk/refman-5.0/database-administration.xml 2006-01-21 20:31:59 UTC (rev 974)
@@ -11285,6 +11285,152 @@
</refsection>
+ <refsection id="server-shutdown">
+
+ <title>&title-server-shutdown;</title>
+
+ <para>
+ The server shutdown process takes place as follows:
+ </para>
+
+ <orderedlist>
+
+ <listitem>
+ <para>
+ The shutdown process is initiated.
+ </para>
+
+ <para>
+ Server shutdown can be initiated several ways. For
+ example, a user with the <literal>SHUTDOWN</literal>
+ privilege can execute a <command>mysqladmin
+ shutdown</command> command. <command>mysqladmin</command>
+ can be used on any platform supported by MySQL. Other
+ operating system-specific shutdown initiation methods are
+ possible as well: The server shuts down on Unix when it
+ receives a <literal>SIGTERM</literal> signal. A server
+ running as a service on Windows shuts down when the
+ services manager tells it to.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ The server creates a shutdown thread if necessary.
+ </para>
+
+ <para>
+ Depending on how shutdown was initiated, the server might
+ create a thread to handle the shutdown process. If
+ shutdown was requested by a client, a shutdown thread is
+ created. If shutdown is the result of receiving a
+ <literal>SIGTERM</literal> signal, the signal thread might
+ handle shutdown itself, or it might create a separate
+ thread to do so. If the server tries to create a shutdown
+ thread and cannot (for example, if memory is exhausted),
+ it issues a diagnostic message that appears in the error
+ log:
+ </para>
+
+<programlisting>
+Error: Can't create thread to kill server
+</programlisting>
+ </listitem>
+
+ <listitem>
+ <para>
+ The server stops accepting new connections.
+ </para>
+
+ <para>
+ To prevent new activity from being initiated during
+ shutdown, the server stops accepting new client
+ connections. It does this by closing the network
+ connections to which it normally listens for connections:
+ the TCP/IP port, the Unix socket file, the Windows named
+ pipe, and shared memory on Windows.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ The server terminates current activity.
+ </para>
+
+ <para>
+ For each thread that is associated with a client
+ connection, the connection to the client is broken and the
+ thread is marked as killed. Threads die when they notice
+ that they are so marked. Threads for idle connections die
+ quickly. Threads that currently are processing queries
+ check their state periodically and take longer to die. For
+ additional information about thread termination, see
+ <xref linkend="kill"/>, in particular for the instructions
+ about killed <literal>REPAIR TABLE</literal> or
+ <literal>OPTIMIZE TABLE</literal> operations on
+ <literal>MyISAM</literal> tables.
+ </para>
+
+ <para>
+ For threads that have an open transaction, the transaction
+ is rolled back. Note that if a thread is updating a
+ non-transactional table, an operation such as a
+ multiple-row <literal>UPDATE</literal> or
+ <literal>INSERT</literal> may leave the table partially
+ updated, because the operation can terminate before
+ completion.
+ </para>
+
+ <para>
+ If the server is a master replication server, threads
+ associated with currently connected slaves are treated
+ like other client threads. That is, each one is marked as
+ killed and exits when it next checks its state.
+ </para>
+
+ <para>
+ If the server is a slave replication server, the I/O and
+ SQL threads, if active, are stopped before client threads
+ are marked as killed. The SQL thread is allowed to finish
+ its current statement (to avoid causing replication
+ problems) then stops. If the SQL thread was in the middle
+ of a transaction at this point, the transaction is rolled
+ back.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Storage engines are shut down or closed.
+ </para>
+
+ <para>
+ At this stage, the table cache is flushed and all open
+ tables are closed.
+ </para>
+
+ <para>
+ Each storage engine performs any actions necessary for
+ tables that it manages. For example,
+ <literal>MyISAM</literal> flushes any pending index writes
+ for a table. <literal>InnoDB</literal> flushes its buffer
+ pool to disk (starting from 5.0.5: unless
+ <literal>innodb_fast_shutdown</literal> is 2), writes the
+ current LSN to the tablespace, and terminates its own
+ internal threads.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ The server exits.
+ </para>
+ </listitem>
+
+ </orderedlist>
+
+ </refsection>
+
</refentry>
</section>
@@ -11411,191 +11557,6 @@
</section>
- <section id="server-shutdown">
-
- <title>&title-server-shutdown;</title>
-
- <para>
- The server shutdown process can be summarized as follows:
- </para>
-
- <orderedlist>
-
- <listitem>
- <para>
- The shutdown process is initiated
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server creates a shutdown thread if necessary
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server stops accepting new connections
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server terminates current activity
- </para>
- </listitem>
-
- <listitem>
- <para>
- Storage engines are shut down or closed
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server exits
- </para>
- </listitem>
-
- </orderedlist>
-
- <para>
- A more detailed description of the process follows:
- </para>
-
- <orderedlist>
-
- <listitem>
- <para>
- The shutdown process is initiated.
- </para>
-
- <para>
- Server shutdown can be initiated several ways. For example, a
- user with the <literal>SHUTDOWN</literal> privilege can
- execute a <command>mysqladmin shutdown</command> command.
- <command>mysqladmin</command> can be used on any platform
- supported by MySQL. Other operating system-specific shutdown
- initiation methods are possible as well: The server shuts down
- on Unix when it receives a <literal>SIGTERM</literal> signal.
- A server running as a service on Windows shuts down when the
- services manager tells it to.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server creates a shutdown thread if necessary.
- </para>
-
- <para>
- Depending on how shutdown was initiated, the server might
- create a thread to handle the shutdown process. If shutdown
- was requested by a client, a shutdown thread is created. If
- shutdown is the result of receiving a
- <literal>SIGTERM</literal> signal, the signal thread might
- handle shutdown itself, or it might create a separate thread
- to do so. If the server tries to create a shutdown thread and
- cannot (for example, if memory is exhausted), it issues a
- diagnostic message that appears in the error log:
- </para>
-
-<programlisting>
-Error: Can't create thread to kill server
-</programlisting>
- </listitem>
-
- <listitem>
- <para>
- The server stops accepting new connections.
- </para>
-
- <para>
- To prevent new activity from being initiated during shutdown,
- the server stops accepting new client connections. It does
- this by closing the network connections to which it normally
- listens for connections: the TCP/IP port, the Unix socket
- file, the Windows named pipe, and shared memory on Windows.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server terminates current activity.
- </para>
-
- <para>
- For each thread that is associated with a client connection,
- the connection to the client is broken and the thread is
- marked as killed. Threads die when they notice that they are
- so marked. Threads for idle connections die quickly. Threads
- that currently are processing queries check their state
- periodically and take longer to die. For additional
- information about thread termination, see
- <xref linkend="kill"/>, in particular for the instructions
- about killed <literal>REPAIR TABLE</literal> or
- <literal>OPTIMIZE TABLE</literal> operations on
- <literal>MyISAM</literal> tables.
- </para>
-
- <para>
- For threads that have an open transaction, the transaction is
- rolled back. Note that if a thread is updating a
- non-transactional table, an operation such as a multiple-row
- <literal>UPDATE</literal> or <literal>INSERT</literal> may
- leave the table partially updated, because the operation can
- terminate before completion.
- </para>
-
- <para>
- If the server is a master replication server, threads
- associated with currently connected slaves are treated like
- other client threads. That is, each one is marked as killed
- and exits when it next checks its state.
- </para>
-
- <para>
- If the server is a slave replication server, the I/O and SQL
- threads, if active, are stopped before client threads are
- marked as killed. The SQL thread is allowed to finish its
- current statement (to avoid causing replication problems) then
- stops. If the SQL thread was in the middle of a transaction at
- this point, the transaction is rolled back.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Storage engines are shut down or closed.
- </para>
-
- <para>
- At this stage, the table cache is flushed and all open tables
- are closed.
- </para>
-
- <para>
- Each storage engine performs any actions necessary for tables
- that it manages. For example, <literal>MyISAM</literal>
- flushes any pending index writes for a table.
- <literal>InnoDB</literal> flushes its buffer pool to disk
- (starting from 5.0.5: unless
- <literal>innodb_fast_shutdown</literal> is 2), writes the
- current LSN to the tablespace, and terminates its own internal
- threads.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server exits.
- </para>
- </listitem>
-
- </orderedlist>
-
- </section>
-
<section id="security">
<title>&title-security;</title>
Modified: trunk/refman-5.1/database-administration.xml
===================================================================
--- trunk/refman-5.1/database-administration.xml 2006-01-21 20:31:46 UTC (rev 973)
+++ trunk/refman-5.1/database-administration.xml 2006-01-21 20:31:59 UTC (rev 974)
@@ -11315,6 +11315,152 @@
</refsection>
+ <refsection id="server-shutdown">
+
+ <title>&title-server-shutdown;</title>
+
+ <para>
+ The server shutdown process takes place as follows:
+ </para>
+
+ <orderedlist>
+
+ <listitem>
+ <para>
+ The shutdown process is initiated.
+ </para>
+
+ <para>
+ Server shutdown can be initiated several ways. For
+ example, a user with the <literal>SHUTDOWN</literal>
+ privilege can execute a <command>mysqladmin
+ shutdown</command> command. <command>mysqladmin</command>
+ can be used on any platform supported by MySQL. Other
+ operating system-specific shutdown initiation methods are
+ possible as well: The server shuts down on Unix when it
+ receives a <literal>SIGTERM</literal> signal. A server
+ running as a service on Windows shuts down when the
+ services manager tells it to.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ The server creates a shutdown thread if necessary.
+ </para>
+
+ <para>
+ Depending on how shutdown was initiated, the server might
+ create a thread to handle the shutdown process. If
+ shutdown was requested by a client, a shutdown thread is
+ created. If shutdown is the result of receiving a
+ <literal>SIGTERM</literal> signal, the signal thread might
+ handle shutdown itself, or it might create a separate
+ thread to do so. If the server tries to create a shutdown
+ thread and cannot (for example, if memory is exhausted),
+ it issues a diagnostic message that appears in the error
+ log:
+ </para>
+
+<programlisting>
+Error: Can't create thread to kill server
+</programlisting>
+ </listitem>
+
+ <listitem>
+ <para>
+ The server stops accepting new connections.
+ </para>
+
+ <para>
+ To prevent new activity from being initiated during
+ shutdown, the server stops accepting new client
+ connections. It does this by closing the network
+ connections to which it normally listens for connections:
+ the TCP/IP port, the Unix socket file, the Windows named
+ pipe, and shared memory on Windows.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ The server terminates current activity.
+ </para>
+
+ <para>
+ For each thread that is associated with a client
+ connection, the connection to the client is broken and the
+ thread is marked as killed. Threads die when they notice
+ that they are so marked. Threads for idle connections die
+ quickly. Threads that currently are processing queries
+ check their state periodically and take longer to die. For
+ additional information about thread termination, see
+ <xref linkend="kill"/>, in particular for the instructions
+ about killed <literal>REPAIR TABLE</literal> or
+ <literal>OPTIMIZE TABLE</literal> operations on
+ <literal>MyISAM</literal> tables.
+ </para>
+
+ <para>
+ For threads that have an open transaction, the transaction
+ is rolled back. Note that if a thread is updating a
+ non-transactional table, an operation such as a
+ multiple-row <literal>UPDATE</literal> or
+ <literal>INSERT</literal> may leave the table partially
+ updated, because the operation can terminate before
+ completion.
+ </para>
+
+ <para>
+ If the server is a master replication server, threads
+ associated with currently connected slaves are treated
+ like other client threads. That is, each one is marked as
+ killed and exits when it next checks its state.
+ </para>
+
+ <para>
+ If the server is a slave replication server, the I/O and
+ SQL threads, if active, are stopped before client threads
+ are marked as killed. The SQL thread is allowed to finish
+ its current statement (to avoid causing replication
+ problems) then stops. If the SQL thread was in the middle
+ of a transaction at this point, the transaction is rolled
+ back.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Storage engines are shut down or closed.
+ </para>
+
+ <para>
+ At this stage, the table cache is flushed and all open
+ tables are closed.
+ </para>
+
+ <para>
+ Each storage engine performs any actions necessary for
+ tables that it manages. For example,
+ <literal>MyISAM</literal> flushes any pending index writes
+ for a table. <literal>InnoDB</literal> flushes its buffer
+ pool to disk, unless
+ <literal>innodb_fast_shutdown</literal> is 2, writes the
+ current LSN to the tablespace, and terminates its own
+ internal threads.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ The server exits.
+ </para>
+ </listitem>
+
+ </orderedlist>
+
+ </refsection>
+
</refentry>
</section>
@@ -11441,190 +11587,6 @@
</section>
- <section id="server-shutdown">
-
- <title>&title-server-shutdown;</title>
-
- <para>
- The server shutdown process can be summarized as follows:
- </para>
-
- <orderedlist>
-
- <listitem>
- <para>
- The shutdown process is initiated
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server creates a shutdown thread if necessary
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server stops accepting new connections
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server terminates current activity
- </para>
- </listitem>
-
- <listitem>
- <para>
- Storage engines are shut down or closed
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server exits
- </para>
- </listitem>
-
- </orderedlist>
-
- <para>
- A more detailed description of the process follows:
- </para>
-
- <orderedlist>
-
- <listitem>
- <para>
- The shutdown process is initiated.
- </para>
-
- <para>
- Server shutdown can be initiated several ways. For example, a
- user with the <literal>SHUTDOWN</literal> privilege can
- execute a <command>mysqladmin shutdown</command> command.
- <command>mysqladmin</command> can be used on any platform
- supported by MySQL. Other operating system-specific shutdown
- initiation methods are possible as well: The server shuts down
- on Unix when it receives a <literal>SIGTERM</literal> signal.
- A server running as a service on Windows shuts down when the
- services manager tells it to.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server creates a shutdown thread if necessary.
- </para>
-
- <para>
- Depending on how shutdown was initiated, the server might
- create a thread to handle the shutdown process. If shutdown
- was requested by a client, a shutdown thread is created. If
- shutdown is the result of receiving a
- <literal>SIGTERM</literal> signal, the signal thread might
- handle shutdown itself, or it might create a separate thread
- to do so. If the server tries to create a shutdown thread and
- cannot (for example, if memory is exhausted), it issues a
- diagnostic message that appears in the error log:
- </para>
-
-<programlisting>
-Error: Can't create thread to kill server
-</programlisting>
- </listitem>
-
- <listitem>
- <para>
- The server stops accepting new connections.
- </para>
-
- <para>
- To prevent new activity from being initiated during shutdown,
- the server stops accepting new client connections. It does
- this by closing the network connections to which it normally
- listens for connections: the TCP/IP port, the Unix socket
- file, the Windows named pipe, and shared memory on Windows.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server terminates current activity.
- </para>
-
- <para>
- For each thread that is associated with a client connection,
- the connection to the client is broken and the thread is
- marked as killed. Threads die when they notice that they are
- so marked. Threads for idle connections die quickly. Threads
- that currently are processing queries check their state
- periodically and take longer to die. For additional
- information about thread termination, see
- <xref linkend="kill"/>, in particular for the instructions
- about killed <literal>REPAIR TABLE</literal> or
- <literal>OPTIMIZE TABLE</literal> operations on
- <literal>MyISAM</literal> tables.
- </para>
-
- <para>
- For threads that have an open transaction, the transaction is
- rolled back. Note that if a thread is updating a
- non-transactional table, an operation such as a multiple-row
- <literal>UPDATE</literal> or <literal>INSERT</literal> may
- leave the table partially updated, because the operation can
- terminate before completion.
- </para>
-
- <para>
- If the server is a master replication server, threads
- associated with currently connected slaves are treated like
- other client threads. That is, each one is marked as killed
- and exits when it next checks its state.
- </para>
-
- <para>
- If the server is a slave replication server, the I/O and SQL
- threads, if active, are stopped before client threads are
- marked as killed. The SQL thread is allowed to finish its
- current statement (to avoid causing replication problems) then
- stops. If the SQL thread was in the middle of a transaction at
- this point, the transaction is rolled back.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Storage engines are shut down or closed.
- </para>
-
- <para>
- At this stage, the table cache is flushed and all open tables
- are closed.
- </para>
-
- <para>
- Each storage engine performs any actions necessary for tables
- that it manages. For example, <literal>MyISAM</literal>
- flushes any pending index writes for a table.
- <literal>InnoDB</literal> flushes its buffer pool to disk
- unless <literal>innodb_fast_shutdown</literal> is 2), writes
- the current LSN to the tablespace, and terminates its own
- internal threads.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The server exits.
- </para>
- </listitem>
-
- </orderedlist>
-
- </section>
-
<section id="security">
<title>&title-security;</title>
| Thread |
|---|
| • svn commit - mysqldoc@docsrva: r974 - in trunk: . refman-4.1 refman-5.0 refman-5.1 | paul | 21 Jan |