Author: paul
Date: 2006-09-19 23:25:09 +0200 (Tue, 19 Sep 2006)
New Revision: 3396
Log:
r13819@polar: paul | 2006-09-19 14:46:31 -0500
Instance Manager: Incorporate a bunch of information provided by Alik.
Modified:
trunk/refman-5.0/database-administration.xml
trunk/refman-5.1/database-administration.xml
Property changes on: trunk
___________________________________________________________________
Name: svk:merge
- 4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/mysqldoc/trunk:13817
b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:14218
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:10300
+ 4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/mysqldoc/trunk:13819
b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:14218
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:10300
Modified: trunk/refman-5.0/database-administration.xml
===================================================================
--- trunk/refman-5.0/database-administration.xml 2006-09-19 16:53:13 UTC (rev 3395)
+++ trunk/refman-5.0/database-administration.xml 2006-09-19 21:25:09 UTC (rev 3396)
Changed blocks: 17, Lines Added: 109, Lines Deleted: 38; 11323 bytes
@@ -13060,8 +13060,8 @@
<listitem>
<para>
A nonguarded instance is not monitored by Instance
- Manager. If the instance crashes, Instance Manager
- will not know this and does not restart it.
+ Manager. If the instance crashes after being started,
+ Instance Manager does not restart it.
</para>
</listitem>
@@ -13162,10 +13162,11 @@
<para>
If the <option>--angel-pid-file</option> option is not
- given but <option>--pid-file</option> is, the default
- angel PID file becomes the same as the PID file except
- that any PID file extension is replaced with an extension
- of <filename>.angel.pid</filename>.
+ given, the default angel PID file has the same name as the
+ PID file except that any PID file extension is replaced
+ with an extension of <filename>.angel.pid</filename>. (For
+ example, <filename>mysqlmanager.pid</filename> becomes
+ <filename>mysqlmanager.angel.pid</filename>.)
</para>
<para>
@@ -13209,8 +13210,12 @@
</para>
<para>
- On Unix, the pathname of the MySQL Server binary, if no
- path was provided in the instance section. Example:
+ The pathname of the MySQL Server binary. This pathname is
+ used for all server instance sections in the configuration
+ file for which no <option>mysqld-path</option> option is
+ present. The default value of this option is the
+ compiled-in pathname, which depends on how the MySQL
+ distribution was configured. Example:
<option>--default-mysqld-path=/usr/sbin/mysqld</option>
</para>
</listitem>
@@ -13285,9 +13290,31 @@
</para>
<para>
- The path to the Instance Manager log file. This is used
- with the <command>--run-as-service</command> option.
+ The path to the Instance Manager log file. This option has
+ no effect unless the <command>--run-as-service</command>
+ option is also given. If the filename specified for the
+ option is a relative name, the log file is created under
+ the directory from which Instance Manager is started. To
+ ensure that the file is created in a specific directory,
+ specify it as a full pathname.
</para>
+
+ <para>
+ If <option>--run-as-service</option> is given without
+ <option>--log</option>, the log file is
+ <filename>mysqlmanager.log</filename> in the data
+ directory.
+ </para>
+
+ <para>
+ If <option>--run-as-service</option> is not given, log
+ messages go to the standard output. To capture log output,
+ you can redirect Instance Manager output to a file:
+ </para>
+
+<programlisting>
+mysqlmanager > im.log
+</programlisting>
</listitem>
<listitem>
@@ -13308,14 +13335,12 @@
<para>
The interval in seconds for monitoring server instances.
The default value is 20 seconds. Instance Manager tries to
- connect to each monitored instance using the non-existing
- <literal>MySQL_Instance_Manager</literal> user account to
- check whether it is alive/not hanging. If the result of
- the connection attempt indicates that the instance is
- unavailable, Instance Manager performs several attempts to
- restart the instance. The <literal>nonguarded</literal>
- option in the appropriate instance section disables this
- behavior for a particular instance.
+ connect to each monitored (guarded) instance using the
+ non-existing <literal>MySQL_Instance_Manager</literal>
+ user account to check whether it is alive/not hanging. If
+ the result of the connection attempt indicates that the
+ instance is unavailable, Instance Manager performs several
+ attempts to restart the instance.
</para>
<para>
@@ -13329,6 +13354,22 @@
Access denied for user 'MySQL_Instance_M'@'localhost' (using password: YES)
</programlisting>
</para>
+
+ <para>
+ The <literal>nonguarded</literal> option in the
+ appropriate server instance section disables monitoring
+ for a particular instance. If the instance dies after
+ being started, Instance Manager will not restart it.
+ Instance Manager tries to connect to a nonguarded instance
+ only when you request the instance's status (for example,
+ with the <literal>SHOW INSTANCES</literal> status.
+ </para>
+
+ <para>
+ See
+ <xref linkend="instance-manager-security-monitoring"/>,
+ for more information.
+ </para>
</listitem>
<listitem>
@@ -13394,8 +13435,11 @@
</para>
<para>
- The process ID file to use. The default file is named
- <filename>mysqlmanager.pid</filename>.
+ The process ID file to use. On Windows, the default file
+ is <filename>mysqlmanager.pid</filename> in the directory
+ where Instance Manager is installed. On Unix, the default
+ is <filename>mysqlmanager.pid</filename> in the data
+ directory.
</para>
</listitem>
@@ -13506,7 +13550,8 @@
<para>
On Unix, the socket file to use for incoming connections.
The default file is named
- <filename>/tmp/mysqlmanager.sock</filename>.
+ <filename>/tmp/mysqlmanager.sock</filename>. This option
+ has no meaning on Windows.
</para>
</listitem>
@@ -13548,10 +13593,14 @@
<para>
On Unix, the username of the system account to use for
- starting and running <command>mysqlmanager</command>. It
- is recommended that you run
- <command>mysqlmanager</command> from the same account used
- to run the <command>mysqld</command> server.
+ starting and running <command>mysqlmanager</command>. This
+ option generates a warning and has no effect unless you
+ start <command>mysqlmanager</command> as
+ <literal>root</literal> (so that it can change its
+ effective user ID), or as the named user. It is
+ recommended that you configure
+ <command>mysqlmanager</command> to run using the same
+ account used to run the <command>mysqld</command> server.
(<quote>User</quote> in this context refers to a system
login account, not a MySQL user listed in the grant
tables.)
@@ -13856,8 +13905,8 @@
<listitem>
<para>
- Instance Manager starts all server instances and monitors
- them.
+ Instance Manager starts the guarded server instances and
+ monitors them.
</para>
</listitem>
@@ -13913,6 +13962,12 @@
</programlisting>
<para>
+ Password encryption is the same as that used by MySQL Server.
+ It is a one-way operation; no means are provided for
+ decrypting encrypted passwords.
+ </para>
+
+ <para>
Instance Manager accounts differ somewhat from MySQL Server
accounts:
</para>
@@ -13993,8 +14048,8 @@
<title>MySQL Server Instance Status Monitoring</title>
<para>
- To monitor the status of a server instance, the MySQL Instance
- Manager attempts to connect to the MySQL server instance at
+ To monitor the status of each guarded server instance, the
+ MySQL Instance Manager attempts to connect to the instance at
regular intervals using the
<literal>MySQL_Instance_Manager@localhost</literal> user
account with a password of
@@ -14012,6 +14067,21 @@
<xref linkend="query-log"/>).
</para>
+ <para>
+ Instance Manager also attempts a connection to nonguarded
+ server instances when you use the <literal>SHOW
+ INSTANCES</literal> or <literal>SHOW INSTANCE
STATUS</literal>
+ command. This is the only status monitoring done for
+ nonguarded instances.
+ </para>
+
+ <para>
+ Instance Manager knows if a server instance fails at startup
+ because it receives a status from the attempt. For an instance
+ that starts but later crashes, Instance Manager receives a
+ signal because it is the parent process of the instance.
+ </para>
+
</refsection>
<refsection id="instance-manager-security">
@@ -14070,9 +14140,11 @@
<para>
Instance Manager maintains information about instance
configuration in an internal (in-memory) cache. Initially,
- this information comes from the configuration file, but
- some commands change the configuration of an instance. The
- configuration file must be accessible and not malformed.
+ this information comes from the configuration file if it
+ exists, but some commands change the configuration of an
+ instance. Commands that modify the configuration file fail
+ if the file does not exist or is not accessible to
+ Instance Manager.
</para>
</listitem>
@@ -14103,7 +14175,9 @@
</para>
<para>
- This command attempts to start an instance.
+ This command attempts to start an offline instance. The
+ command is asynchronous; it does not wait for the instance
+ to start.
</para>
<programlisting>
@@ -14119,7 +14193,8 @@
</para>
<para>
- This command attempts to stop an instance.
+ This command attempts to stop an instance. The command is
+ synchronous; it waits for the instance to stop.
</para>
<programlisting>
@@ -14272,10 +14347,6 @@
section to change or add instance options. The option is
added to the section is it is not already present.
Otherwise, the new setting replaces the existing one.
- Instance Manager assumes that the configuration file is
- located at <filename>/etc/my.cnf</filename>. You should
- check that the file exists and has appropriate
- permissions.
</para>
<programlisting>
Modified: trunk/refman-5.1/database-administration.xml
===================================================================
--- trunk/refman-5.1/database-administration.xml 2006-09-19 16:53:13 UTC (rev 3395)
+++ trunk/refman-5.1/database-administration.xml 2006-09-19 21:25:09 UTC (rev 3396)
Changed blocks: 22, Lines Added: 155, Lines Deleted: 53; 15985 bytes
@@ -12840,8 +12840,8 @@
<listitem>
<para>
A nonguarded instance is not monitored by Instance
- Manager. If the instance crashes, Instance Manager
- will not know this and does not restart it.
+ Manager. If the instance crashes after being started,
+ Instance Manager does not restart it.
</para>
</listitem>
@@ -12966,10 +12966,11 @@
<para>
If the <option>--angel-pid-file</option> option is not
- given but <option>--pid-file</option> is, the default
- angel PID file becomes the same as the PID file except
- that any PID file extension is replaced with an extension
- of <filename>.angel.pid</filename>.
+ given, the default angel PID file has the same name as the
+ PID file except that any PID file extension is replaced
+ with an extension of <filename>.angel.pid</filename>. (For
+ example, <filename>mysqlmanager.pid</filename> becomes
+ <filename>mysqlmanager.angel.pid</filename>.)
</para>
<para>
@@ -13079,8 +13080,12 @@
</para>
<para>
- On Unix, the pathname of the MySQL Server binary, if no
- path was provided in the instance section. Example:
+ The pathname of the MySQL Server binary. This pathname is
+ used for all server instance sections in the configuration
+ file for which no <option>mysqld-path</option> option is
+ present. The default value of this option is the
+ compiled-in pathname, which depends on how the MySQL
+ distribution was configured. Example:
<option>--default-mysqld-path=/usr/sbin/mysqld</option>
</para>
</listitem>
@@ -13219,9 +13224,31 @@
</para>
<para>
- The path to the Instance Manager log file. This is used
- with the <command>--run-as-service</command> option.
+ The path to the Instance Manager log file. This option has
+ no effect unless the <command>--run-as-service</command>
+ option is also given. If the filename specified for the
+ option is a relative name, the log file is created under
+ the directory from which Instance Manager is started. To
+ ensure that the file is created in a specific directory,
+ specify it as a full pathname.
</para>
+
+ <para>
+ If <option>--run-as-service</option> is given without
+ <option>--log</option>, the log file is
+ <filename>mysqlmanager.log</filename> in the data
+ directory.
+ </para>
+
+ <para>
+ If <option>--run-as-service</option> is not given, log
+ messages go to the standard output. To capture log output,
+ you can redirect Instance Manager output to a file:
+ </para>
+
+<programlisting>
+mysqlmanager > im.log
+</programlisting>
</listitem>
<listitem>
@@ -13242,14 +13269,12 @@
<para>
The interval in seconds for monitoring server instances.
The default value is 20 seconds. Instance Manager tries to
- connect to each monitored instance using the non-existing
- <literal>MySQL_Instance_Manager</literal> user account to
- check whether it is alive/not hanging. If the result of
- the connection attempt indicates that the instance is
- unavailable, Instance Manager performs several attempts to
- restart the instance. The <literal>nonguarded</literal>
- option in the appropriate instance section disables this
- behavior for a particular instance.
+ connect to each monitored (guarded) instance using the
+ non-existing <literal>MySQL_Instance_Manager</literal>
+ user account to check whether it is alive/not hanging. If
+ the result of the connection attempt indicates that the
+ instance is unavailable, Instance Manager performs several
+ attempts to restart the instance.
</para>
<para>
@@ -13263,6 +13288,22 @@
Access denied for user 'MySQL_Instance_M'@'localhost' (using password: YES)
</programlisting>
</para>
+
+ <para>
+ The <literal>nonguarded</literal> option in the
+ appropriate server instance section disables monitoring
+ for a particular instance. If the instance dies after
+ being started, Instance Manager will not restart it.
+ Instance Manager tries to connect to a nonguarded instance
+ only when you request the instance's status (for example,
+ with the <literal>SHOW INSTANCES</literal> status.
+ </para>
+
+ <para>
+ See
+ <xref linkend="instance-manager-security-monitoring"/>,
+ for more information.
+ </para>
</listitem>
<listitem>
@@ -13351,8 +13392,11 @@
</para>
<para>
- The process ID file to use. The default file is named
- <filename>mysqlmanager.pid</filename>.
+ The process ID file to use. On Windows, the default file
+ is <filename>mysqlmanager.pid</filename> in the directory
+ where Instance Manager is installed. On Unix, the default
+ is <filename>mysqlmanager.pid</filename> in the data
+ directory.
</para>
</listitem>
@@ -13490,7 +13534,8 @@
<para>
On Unix, the socket file to use for incoming connections.
The default file is named
- <filename>/tmp/mysqlmanager.sock</filename>.
+ <filename>/tmp/mysqlmanager.sock</filename>. This option
+ has no meaning on Windows.
</para>
</listitem>
@@ -13531,10 +13576,14 @@
<para>
On Unix, the username of the system account to use for
- starting and running <command>mysqlmanager</command>. It
- is recommended that you run
- <command>mysqlmanager</command> from the same account used
- to run the <command>mysqld</command> server.
+ starting and running <command>mysqlmanager</command>. This
+ option generates a warning and has no effect unless you
+ start <command>mysqlmanager</command> as
+ <literal>root</literal> (so that it can change its
+ effective user ID), or as the named user. It is
+ recommended that you configure
+ <command>mysqlmanager</command> to run using the same
+ account used to run the <command>mysqld</command> server.
(<quote>User</quote> in this context refers to a system
login account, not a MySQL user listed in the grant
tables.)
@@ -13845,8 +13894,8 @@
<listitem>
<para>
- Instance Manager starts all server instances and monitors
- them.
+ Instance Manager starts the guarded server instances and
+ monitors them.
</para>
</listitem>
@@ -13902,6 +13951,12 @@
</programlisting>
<para>
+ Password encryption is the same as that used by MySQL Server.
+ It is a one-way operation; no means are provided for
+ decrypting encrypted passwords.
+ </para>
+
+ <para>
Instance Manager accounts differ somewhat from MySQL Server
accounts:
</para>
@@ -14008,12 +14063,14 @@
to operate directly on the password file. (These options make
Instance Manager scriptable for account-management purposes.)
For these operations on the password file to succeed, the file
- must exist and it must be accessible by Instance Manager. If
- there is no password file yet, create it as an empty file and
- ensure that its ownership and access modes allow it to be read
- and written by Instance Manager. The default password file is
- used unless you specify a <option>--password-file</option>
- option.
+ must exist and it must be accessible by Instance Manager. (The
+ exception is <option>--clean-password-file</option>, which
+ creates the file if it does not exist. Alternatively, if there
+ is no password file yet, manually create it as an empty file
+ and ensure that its ownership and access modes allow it to be
+ read and written by Instance Manager.) The default password
+ file is used unless you specify a
+ <option>--password-file</option> option.
</para>
<para>
@@ -14123,7 +14180,12 @@
<para>
This command empties the password file, which has the
- effect of dropping all users listed in it.
+ effect of dropping all users listed in it. The option
+ creates the password file if it does not exist, so it can
+ be used to initialize a new password file to be used for
+ other account-management operations. Take care not to use
+ this option to reinitialize a file containing accounts
+ that you do not want to drop.
</para>
</listitem>
@@ -14136,8 +14198,8 @@
<title>MySQL Server Instance Status Monitoring</title>
<para>
- To monitor the status of a server instance, the MySQL Instance
- Manager attempts to connect to the MySQL server instance at
+ To monitor the status of each guarded server instance, the
+ MySQL Instance Manager attempts to connect to the instance at
regular intervals using the
<literal>MySQL_Instance_Manager@localhost</literal> user
account with a password of
@@ -14156,6 +14218,21 @@
</para>
<para>
+ Instance Manager also attempts a connection to nonguarded
+ server instances when you use the <literal>SHOW
+ INSTANCES</literal> or <literal>SHOW INSTANCE
STATUS</literal>
+ command. This is the only status monitoring done for
+ nonguarded instances.
+ </para>
+
+ <para>
+ Instance Manager knows if a server instance fails at startup
+ because it receives a status from the attempt. For an instance
+ that starts but later crashes, Instance Manager receives a
+ signal because it is the parent process of the instance.
+ </para>
+
+ <para>
Beginning with MySQL 5.1.12, Instance Manager tracks instance
states so that it can determine which commands are allowed for
each instance. For example, commands that modify an instance's
@@ -14301,16 +14378,23 @@
<para>
Instance Manager maintains information about instance
configuration in an internal (in-memory) cache. Initially,
- this information comes from the configuration file, but
- some commands change the configuration of an instance. As
- of MySQL 5.1.12, these commands change both the in-memory
- cache and the server instance section recorded in the
- configuration file to maintain consistency between them.
- For this to occur, the instance must be offline and the
- configuration file must be accessible and not malformed.
- If the configuration file cannot be updated, the command
- fails and the cache remains unchanged.
+ this information comes from the configuration file if it
+ exists, but some commands change the configuration of an
+ instance. Commands that modify the configuration file fail
+ if the file does not exist or is not accessible to
+ Instance Manager.
</para>
+
+ <para>
+ As of MySQL 5.1.12, configuration-changing commands modify
+ both the in-memory cache and the server instance section
+ recorded in the configuration file to maintain consistency
+ between them. For this to occur, the instance must be
+ offline and the configuration file must be accessible and
+ not malformed. If the configuration file cannot be
+ updated, the command fails and the cache remains
+ unchanged.
+ </para>
</listitem>
<listitem>
@@ -14436,7 +14520,9 @@
</para>
<para>
- This command attempts to start an instance.
+ This command attempts to start an offline instance. The
+ command is asynchronous; it does not wait for the instance
+ to start.
</para>
<programlisting>
@@ -14452,7 +14538,8 @@
</para>
<para>
- This command attempts to stop an instance.
+ This command attempts to stop an instance. The command is
+ synchronous; it waits for the instance to stop.
</para>
<programlisting>
@@ -14559,6 +14646,13 @@
</programlisting>
<para>
+ <literal>SHOW ... LOG FILES</literal> displays information
+ only about log files. If a server instance uses log tables
+ (see <xref linkend="log-tables"/>), no information about
+ those tables is shown.
+ </para>
+
+ <para>
Log options are described in
<xref linkend="server-options"/>.
</para>
@@ -14605,10 +14699,6 @@
section to change or add instance options. The option is
added to the section is it is not already present.
Otherwise, the new setting replaces the existing one.
- Instance Manager assumes that the configuration file is
- located at <filename>/etc/my.cnf</filename>. You should
- check that the file exists and has appropriate
- permissions.
</para>
<programlisting>
@@ -14619,9 +14709,15 @@
<para>
As of MySQL 5.1.12, you can specify multiple options
(separated by commas), and <literal>SET</literal> can be
- used only for offline instances.
+ used only for offline instances. Each option must indicate
+ the instance name:
</para>
+<programlisting>
+mysql> <userinput>SET mysqld2.port=3322,
mysqld3.nonguarded;</userinput>
+Query OK, 0 rows affected (0.00 sec)
+</programlisting>
+
<para>
Before MySQL 5.1.12, only a single option can be
specified. Also, changes made to the configuration file do
@@ -14651,9 +14747,15 @@
<para>
As of MySQL 5.1.12, you can specify multiple options
(separated by commas), and <literal>UNSET</literal> can be
- used only for offline instances.
+ used only for offline instances. Each option must indicate
+ the instance name:
</para>
+<programlisting>
+mysql> <userinput>UNSET mysqld2.port, mysqld4.nonguarded;</userinput>
+Query OK, 0 rows affected (0.00 sec)
+</programlisting>
+
<para>
Before MySQL 5.1.12, only a single option can be
specified. Also, changes made to the configuration file do
| Thread |
|---|
| • svn commit - mysqldoc@docsrva: r3396 - in trunk: . refman-5.0 refman-5.1 | paul | 19 Sep |