Author: paul
Date: 2006-01-09 21:43:55 +0100 (Mon, 09 Jan 2006)
New Revision: 746
Log:
r6007@frost: paul | 2006-01-09 14:42:03 -0600
General revisions.
Modified:
trunk/
trunk/refman-4.1/database-administration.xml
trunk/refman-4.1/innodb.xml
trunk/refman-4.1/renamed-nodes.txt
trunk/refman-5.0/database-administration.xml
trunk/refman-5.0/innodb.xml
trunk/refman-5.0/renamed-nodes.txt
trunk/refman-5.1/database-administration.xml
trunk/refman-5.1/innodb.xml
trunk/refman-5.1/renamed-nodes.txt
trunk/refman-common/news-3.23.xml
trunk/refman-common/news-4.0.xml
trunk/refman-common/titles.en.ent
Property changes on: trunk
___________________________________________________________________
Name: svk:merge
- b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:6006
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:1994
+ b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:6007
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:1994
Modified: trunk/refman-4.1/database-administration.xml
===================================================================
--- trunk/refman-4.1/database-administration.xml 2006-01-09 20:43:05 UTC (rev 745)
+++ trunk/refman-4.1/database-administration.xml 2006-01-09 20:43:55 UTC (rev 746)
@@ -2072,8 +2072,8 @@
<para>
Options specific to particular storage engines: See
<xref linkend="myisam-start"/>,
- <xref linkend="bdb-start"/>,
- <xref linkend="innodb-start"/>.
+ <xref linkend="bdb-start"/>, and
+ <xref linkend="innodb-parameters"/>.
</para>
</listitem>
@@ -4429,7 +4429,7 @@
Most system variables are described here. Variables with no
version indicated have been present since at least MySQL 3.22.
<literal>InnoDB</literal> system variables are listed at
- <xref linkend="innodb-start"/>.
+ <xref linkend="innodb-parameters"/>.
</para>
<para>
@@ -5495,7 +5495,7 @@
<para>
The <literal>InnoDB</literal> system variables are listed
- in <xref linkend="innodb-start"/>.
+ in <xref linkend="innodb-parameters"/>.
</para>
</listitem>
Modified: trunk/refman-4.1/innodb.xml
===================================================================
--- trunk/refman-4.1/innodb.xml 2006-01-09 20:43:05 UTC (rev 745)
+++ trunk/refman-4.1/innodb.xml 2006-01-09 20:43:55 UTC (rev 746)
@@ -55,16 +55,15 @@
<para>
<literal>InnoDB</literal> provides MySQL with a transaction-safe
- (<literal>ACID</literal> compliant) storage engine with commit,
- rollback, and crash recovery capabilities.
+ (<literal>ACID</literal> compliant) storage engine that has
+ commit, rollback, and crash recovery capabilities.
<literal>InnoDB</literal> does locking on the row level and also
provides an Oracle-style consistent non-locking read in
<literal>SELECT</literal> statements. These features increase
multi-user concurrency and performance. There is no need for lock
- escalation in <literal>InnoDB</literal> because row-level locks in
- <literal>InnoDB</literal> fit in very little space.
- <literal>InnoDB</literal> also supports <literal>FOREIGN
- KEY</literal> constraints. You can freely mix
+ escalation in <literal>InnoDB</literal> because row-level locks
+ fit in very little space. <literal>InnoDB</literal> also supports
+ <literal>FOREIGN KEY</literal> constraints. You can freely mix
<literal>InnoDB</literal> tables with tables from other MySQL
storage engines, even within the same statement.
</para>
@@ -114,8 +113,8 @@
</para>
<para>
- For the <literal>InnoDB</literal> storage engine, there's a
- dedicated forum available on
+ A forum dedicated to the <literal>InnoDB</literal> storage engine
+ is available at
<ulink url="http://forums.mysql.com/list.php?22"/>.
</para>
@@ -237,60 +236,64 @@
</para>
<para>
- Two important disk-based resources managed by the
- <literal>InnoDB</literal> storage engine are its tablespace data
- files and its log files.
- </para>
-
- <para>
- If you specify no <literal>InnoDB</literal> configuration options,
- MySQL 4.0 and above create an auto-extending 10MB data file named
- <filename>ibdata1</filename> and two 5MB log files named
- <filename>ib_logfile0</filename> and
- <filename>ib_logfile1</filename> in the MySQL data directory. (In
- MySQL 4.0.0 and 4.0.1, the data file is 64MB and not
- auto-extending.) In MySQL 3.23, <literal>InnoDB</literal> does not
- start if you provide no configuration options.
- </para>
-
- <para>
<emphasis role="bold">Note</emphasis>: <literal>InnoDB</literal>
provides MySQL with a transaction-safe (<literal>ACID</literal>
- compliant) storage engine with commit, rollback, and crash
- recovery capabilities. <emphasis role="bold">It cannot do
- so</emphasis> if the underlying operating system and hardware does
+ compliant) storage engine that has commit, rollback, and crash
+ recovery capabilities. <emphasis role="bold">However, it cannot do
+ so</emphasis> if the underlying operating system or hardware does
not work as advertised. Many operating systems or disk subsystems
may delay or reorder write operations in order to improve
- performance. On some operating systems, the very system call
- (<literal>fsync()</literal>) that should wait until all unwritten
- data for a file has been flushed may actually return before the
- data has been flushed to stable storage. Because of this, an
- operating system crash or a power outage may destroy recently
- committed data, or in the worst case, even corrupt the database
- because of write operations having been reordered. If data
- integrity is important to you, you should perform some
+ performance. On some operating systems, the very system call that
+ should wait until all unwritten data for a file has been flushed
+ — <literal>fsync()</literal> — might actually return
+ before the data has been flushed to stable storage. Because of
+ this, an operating system crash or a power outage may destroy
+ recently committed data, or in the worst case, even corrupt the
+ database because of write operations having been reordered. If
+ data integrity is important to you, you should perform some
<quote>pull-the-plug</quote> tests before using anything in
- production. On Mac OS X 10.3 and later, <literal>InnoDB</literal>
+ production. On Mac OS X 10.3 and up, <literal>InnoDB</literal>
uses a special <literal>fcntl()</literal> file flush method. Under
Linux, it is advisable to <emphasis role="bold">disable the
write-back cache</emphasis>.
</para>
<para>
- On ATAPI hard disks, a command like <literal>hdparm -W0
- /dev/<replaceable>hda</replaceable></literal> may work.
+ On ATAPI hard disks, a command such <literal>hdparm -W0
+ /dev/hda</literal> may work to disable the write-back cache.
<emphasis role="bold">Beware that some drives or disk controllers
may be unable to disable the write-back cache.</emphasis>
</para>
<para>
- <emphasis role="bold">Note</emphasis>: To get good performance,
- you should explicitly provide <literal>InnoDB</literal> parameters
- as discussed in the following examples. Naturally, you should edit
- the settings to suit your hardware and requirements.
+ Two important disk-based resources managed by the
+ <literal>InnoDB</literal> storage engine are its tablespace data
+ files and its log files.
</para>
<para>
+ <emphasis role="bold">Note</emphasis>: If you specify no
+ <literal>InnoDB</literal> configuration options, MySQL 4.0 and
+ above create an auto-extending 10MB data file named
+ <filename>ibdata1</filename> and two 5MB log files named
+ <filename>ib_logfile0</filename> and
+ <filename>ib_logfile1</filename> in the MySQL data directory. (In
+ MySQL 4.0.0 and 4.0.1, the data file is 64MB and not
+ auto-extending.) In MySQL 3.23, <literal>InnoDB</literal> does not
+ start if you provide no configuration options. To get good
+ performance, you should explicitly provide
+ <literal>InnoDB</literal> parameters as discussed in the following
+ examples. Naturally, you should edit the settings to suit your
+ hardware and requirements.
+ </para>
+
+ <para>
+ The examples shown here are representative. See
+ <xref linkend="innodb-parameters"/> for additional information
+ about <literal>InnoDB</literal>-related configuration parameters.
+ </para>
+
+ <para>
To set up the <literal>InnoDB</literal> tablespace files, use the
<literal>innodb_data_file_path</literal> option in the
<literal>[mysqld]</literal> section of the
@@ -319,7 +322,8 @@
<para>
This setting configures a single 10MB data file named
<filename>ibdata1</filename> that is auto-extending. No location
- for the file is given, so the default is the MySQL data directory.
+ for the file is given, so by default, <literal>InnoDB</literal>
+ creates it in the MySQL data directory.
</para>
<para>
@@ -360,7 +364,8 @@
If you specify the <literal>autoextend</literal> option for the
last data file, <literal>InnoDB</literal> extends the data file if
it runs out of free space in the tablespace. The increment is 8MB
- at a time.
+ at a time by default. It can be modified by changing the
+ <literal>innodb_autoextend_increment</literal> system variable.
</para>
<para>
@@ -370,12 +375,12 @@
</para>
<para>
- <literal>InnoDB</literal> is not aware of the maximum file size,
- so be cautious on filesystems where the maximum file size is 2GB.
- To specify a maximum size for an auto-extending data file, use the
- <literal>max</literal> attribute. The following configuration
- allows <filename>ibdata1</filename> to grow up to a limit of
- 500MB:
+ <literal>InnoDB</literal> is not aware of the filesystem maximum
+ file size, so be cautious on filesystems where the maximum file
+ size is a small value such as 2GB. To specify a maximum size for
+ an auto-extending data file, use the <literal>max</literal>
+ attribute. The following configuration allows
+ <filename>ibdata1</filename> to grow up to a limit of 500MB:
</para>
<programlisting>
@@ -412,11 +417,13 @@
<literal>InnoDB</literal> forms the directory path for each data
file by textually concatenating the value of
<literal>innodb_data_home_dir</literal> to the data file name,
- adding a slash or backslash between if needed. If the
- <literal>innodb_data_home_dir</literal> option is not mentioned in
- <filename>my.cnf</filename> at all, the default value is the
- <quote>dot</quote> directory <filename>./</filename>, which means
- the MySQL data directory.
+ adding a pathname separator (slash or backslash) between values if
+ necessary. If the <literal>innodb_data_home_dir</literal> option
+ is not mentioned in <filename>my.cnf</filename> at all, the
+ default value is the <quote>dot</quote> directory
+ <filename>./</filename>, which means the MySQL data directory.
+ (The MySQL server changes its current working directory to its
+ data directory when it begins executing.)
</para>
<para>
@@ -440,15 +447,12 @@
<filename>my.ini</filename> for <literal>InnoDB</literal>. The
example assumes the use of MySQL-Max 3.23.50 or later or MySQL
4.0.2 or later because it uses the <literal>autoextend</literal>
- attribute.
- </para>
-
- <para>
- This example suits most users, both on Unix and Windows, who do
- not want to distribute <literal>InnoDB</literal> data files and
- log files on several disks. It creates an auto-extending data file
- <filename>ibdata1</filename> and two <literal>InnoDB</literal> log
- files <filename>ib_logfile0</filename> and
+ attribute. The example suits most users, both on Unix and Windows,
+ who do not want to distribute <literal>InnoDB</literal> data files
+ and log files onto several disks. It creates an auto-extending
+ data file <filename>ibdata1</filename> and two
+ <literal>InnoDB</literal> log files
+ <filename>ib_logfile0</filename> and
<filename>ib_logfile1</filename> in the MySQL data directory.
Also, the small archived <literal>InnoDB</literal> log file
<filename>ib_arch_log_0000000000</filename> that
@@ -494,12 +498,13 @@
command prompt. <literal>InnoDB</literal> then prints the
information about the database creation to the screen, so you can
see what is happening. For example, on Windows, if
- <command>mysqld-max</command> is located in
- <filename>C:\mysql\bin</filename>, you can start it like this:
+ <command>mysqld-max</command> is located in <filename>C:\Program
+ Files\MySQL\MySQL Server ¤t-series;\bin</filename>, you can
+ start it like this:
</para>
<programlisting>
-C:\> <userinput>C:\mysql\bin\mysqld-max --console</userinput>
+C:\> <userinput>C:\Program Files\MySQL\MySQL Server ¤t-series;\bin\mysqld-max --console</userinput>
</programlisting>
<para>
@@ -514,127 +519,37 @@
like.
</para>
- <remark role="todo">
- Do we really need this info here, since it just repeats what's
- found in the Installation and other chapters? /JS
- </remark>
+ <para>
+ You can place <literal>InnoDB</literal> options in the
+ <literal>[mysqld]</literal> group of any option file that your
+ server reads when it starts. The locations for option files are
+ described in <xref linkend="option-files"/>.
+ </para>
<para>
- <emphasis role="bold">Where to specify options on
- Windows?</emphasis> The rules for option files on Windows are as
- follows:
+ If you installed MySQL on Windows using the installation and
+ configuration wizards, the option file will be the
+ <filename>my.ini</filename> file located in your MySQL
+ installation directory. See
+ <xref linkend="mysql-config-wizard-file-location"/>.
</para>
- <itemizedlist>
+ <para>
+ If your PC uses a boot loader where the <filename>C:</filename>
+ drive is not the boot drive, your only option is to use the
+ <filename>my.ini</filename> file in your Windows directory
+ (typically <filename>C:\WINDOWS</filename> or
+ <filename>C:\WINNT</filename>). You can use the
+ <literal>SET</literal> command at the command prompt in a console
+ window to print the value of <literal>WINDIR</literal>:
+ </para>
- <listitem>
- <para>
- Only one of <filename>my.cnf</filename> or
- <filename>my.ini</filename> should be created.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The <filename>my.cnf</filename> file should be placed in the
- root directory of the <filename>C:</filename> drive.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The <filename>my.ini</filename> file should be placed in the
- <literal>WINDIR</literal> directory; for example,
- <filename>C:\WINDOWS</filename> or
- <filename>C:\WINNT</filename>. You can use the
- <literal>SET</literal> command at the command prompt in a
- console window to print the value of
- <literal>WINDIR</literal>:
- </para>
-
<programlisting>
C:\> <userinput>SET WINDIR</userinput>
-windir=C:\WINNT
+windir=C:\WINDOWS
</programlisting>
- </listitem>
- <listitem>
- <para>
- If your PC uses a boot loader where the
- <filename>C:</filename> drive is not the boot drive, your only
- option is to use the <filename>my.ini</filename> file.
- </para>
- </listitem>
-
- <listitem>
- <para>
- If you installed MySQL using the installation and
- configuration wizards, the <filename>my.ini</filename> file is
- located in your MySQL installation directory. See
- <xref linkend="mysql-config-wizard-file-location"/>.
- </para>
- </listitem>
-
- </itemizedlist>
-
<para>
- <emphasis role="bold">Where to specify options on Unix?</emphasis>
- On Unix, <command>mysqld</command> reads options from the
- following files, if they exist, in the following order:
- </para>
-
- <itemizedlist>
-
- <listitem>
- <para>
- <filename>/etc/my.cnf</filename>
- </para>
-
- <para>
- Global options.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <filename>$MYSQL_HOME/my.cnf</filename>
- </para>
-
- <para>
- Server-specific options.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <filename>defaults-extra-file</filename>
- </para>
-
- <para>
- The file specified with the
- <option>--defaults-extra-file</option> option.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <filename>~/.my.cnf</filename>
- </para>
-
- <para>
- User-specific options.
- </para>
- </listitem>
-
- </itemizedlist>
-
- <para>
- <literal>MYSQL_HOME</literal> represents an environment variable,
- which contains a path to the directory containing the
- server-specific <literal>my.cnf</literal> file.
- </para>
-
- <para>
If you want to make sure that <command>mysqld</command> reads
options only from a specific file, you can use the
<option>--defaults-option</option> as the first option on the
@@ -642,15 +557,15 @@
</para>
<programlisting>
-mysqld --defaults-file=your_path_to_my_cnf
+mysqld --defaults-file=<replaceable>your_path_to_my_cnf</replaceable>
</programlisting>
<para>
<emphasis role="bold">An advanced <filename>my.cnf</filename>
example.</emphasis> Suppose that you have a Linux computer with
- 2GB RAM and three 60GB hard disks (at directory paths
+ 2GB RAM and three 60GB hard disks at directory paths
<filename>/</filename>, <filename>/dr2</filename> and
- <filename>/dr3</filename>). The following example shows possible
+ <filename>/dr3</filename>. The following example shows possible
configuration parameters in <filename>my.cnf</filename> for
<literal>InnoDB</literal>.
</para>
@@ -687,14 +602,15 @@
</programlisting>
<para>
- Note that the example places the two data files on different
- disks. <literal>InnoDB</literal> fills the tablespace beginning
- with the first data file. In some cases, it improves the
- performance of the database if all data is not placed on the same
- physical disk. Putting log files on a different disk from data is
- very often beneficial for performance. You can also use raw disk
- partitions (raw devices) as <literal>InnoDB</literal> data files,
- which may speed up I/O. See <xref linkend="innodb-raw-devices"/>.
+ In some cases, database performance improves the if all data is
+ not placed on the same physical disk. Putting log files on a
+ different disk from data is very often beneficial for performance.
+ The example illustrates how to do this. It places the two data
+ files on different disks and places the log files on the third
+ disk. <literal>InnoDB</literal> fills the tablespace beginning
+ with the first data file. You can also use raw disk partitions
+ (raw devices) as <literal>InnoDB</literal> data files, which may
+ speed up I/O. See <xref linkend="innodb-raw-devices"/>.
</para>
<para>
@@ -723,7 +639,7 @@
In MySQL 4.1, by compiling MySQL yourself, you can use up to 64GB
of physical memory in 32-bit Windows. See the description for
<literal>innodb_buffer_pool_awe_mem_mb</literal> in
- <xref linkend="innodb-start"/>.
+ <xref linkend="innodb-parameters"/>.
</para>
<para>
@@ -1090,9 +1006,9 @@
</section>
- <section id="innodb-start">
+ <section id="innodb-parameters">
- <title>&title-innodb-start;</title>
+ <title>&title-innodb-parameters;</title>
<remark role="todo">
Have separate lists for options and variables?
@@ -2048,11 +1964,12 @@
<title>&title-converting-tables-to-innodb;</title>
<para>
- Important: You should not convert MySQL system tables in the
+ Important: Do not convert MySQL system tables in the
<literal>mysql</literal> database (such as
<literal>user</literal> or <literal>host</literal>) to the
- <literal>InnoDB</literal> type. The system tables must always be
- of the <literal>MyISAM</literal> type.
+ <literal>InnoDB</literal> type. This is an unsupported
+ operation. The system tables must always be of the
+ <literal>MyISAM</literal> type.
</para>
<para>
@@ -5433,7 +5350,7 @@
for the purge thread. Starting with MySQL 4.0.22 and 4.1.6, there
is a startup option and settable global variable
<literal>innodb_max_purge_lag</literal> for exactly this purpose.
- See <xref linkend="innodb-start"/>.
+ See <xref linkend="innodb-parameters"/>, for more information.
</para>
</section>
Modified: trunk/refman-4.1/renamed-nodes.txt
===================================================================
--- trunk/refman-4.1/renamed-nodes.txt 2006-01-09 20:43:05 UTC (rev 745)
+++ trunk/refman-4.1/renamed-nodes.txt 2006-01-09 20:43:55 UTC (rev 746)
@@ -95,3 +95,4 @@
localisation localization
client-side-scripts client-utility-programs
mysqlcc client-utility-programs
+innodb-start innodb-parameters
Modified: trunk/refman-5.0/database-administration.xml
===================================================================
--- trunk/refman-5.0/database-administration.xml 2006-01-09 20:43:05 UTC (rev 745)
+++ trunk/refman-5.0/database-administration.xml 2006-01-09 20:43:55 UTC (rev 746)
@@ -2876,7 +2876,7 @@
Options specific to particular storage engines: See
<xref linkend="myisam-start"/>,
<xref linkend="bdb-start"/>, and
- <xref linkend="innodb-start"/>.
+ <xref linkend="innodb-parameters"/>.
</para>
</listitem>
@@ -5542,7 +5542,7 @@
implementation, please see
<citetitle>&title-refman-4-1;</citetitle>.
<literal>InnoDB</literal> system variables are listed in
- <xref linkend="innodb-start"/>.
+ <xref linkend="innodb-parameters"/>.
</para>
<para>
@@ -6913,7 +6913,7 @@
<para>
The <literal>InnoDB</literal> system variables are listed
- in <xref linkend="innodb-start"/>.
+ in <xref linkend="innodb-parameters"/>.
</para>
</listitem>
Modified: trunk/refman-5.0/innodb.xml
===================================================================
--- trunk/refman-5.0/innodb.xml 2006-01-09 20:43:05 UTC (rev 745)
+++ trunk/refman-5.0/innodb.xml 2006-01-09 20:43:55 UTC (rev 746)
@@ -55,16 +55,15 @@
<para>
<literal>InnoDB</literal> provides MySQL with a transaction-safe
- (<literal>ACID</literal> compliant) storage engine with commit,
- rollback, and crash recovery capabilities.
+ (<literal>ACID</literal> compliant) storage engine that has
+ commit, rollback, and crash recovery capabilities.
<literal>InnoDB</literal> does locking on the row level and also
provides an Oracle-style consistent non-locking read in
<literal>SELECT</literal> statements. These features increase
multi-user concurrency and performance. There is no need for lock
- escalation in <literal>InnoDB</literal> because row-level locks in
- <literal>InnoDB</literal> fit in very little space.
- <literal>InnoDB</literal> also supports <literal>FOREIGN
- KEY</literal> constraints. You can freely mix
+ escalation in <literal>InnoDB</literal> because row-level locks
+ fit in very little space. <literal>InnoDB</literal> also supports
+ <literal>FOREIGN KEY</literal> constraints. You can freely mix
<literal>InnoDB</literal> tables with tables from other MySQL
storage engines, even within the same statement.
</para>
@@ -119,8 +118,8 @@
<listitem>
<para>
- For the <literal>InnoDB</literal> storage engine, there's a
- dedicated forum available on
+ A forum dedicated to the <literal>InnoDB</literal> storage
+ engine is available at
<ulink url="http://forums.mysql.com/list.php?22"/>.
</para>
</listitem>
@@ -166,57 +165,60 @@
</para>
<para>
- Two important disk-based resources managed by the
- <literal>InnoDB</literal> storage engine are its tablespace data
- files and its log files.
- </para>
-
- <para>
- If you specify no <literal>InnoDB</literal> configuration options,
- MySQL creates an auto-extending 10MB data file named
- <filename>ibdata1</filename> and two 5MB log files named
- <filename>ib_logfile0</filename> and
- <filename>ib_logfile1</filename> in the MySQL data directory.
- </para>
-
- <para>
<emphasis role="bold">Note</emphasis>: <literal>InnoDB</literal>
provides MySQL with a transaction-safe (<literal>ACID</literal>
- compliant) storage engine with commit, rollback, and crash
- recovery capabilities. <emphasis role="bold">It cannot do
- so</emphasis> if the underlying operating system and hardware does
+ compliant) storage engine that has commit, rollback, and crash
+ recovery capabilities. <emphasis role="bold">However, it cannot do
+ so</emphasis> if the underlying operating system or hardware does
not work as advertised. Many operating systems or disk subsystems
may delay or reorder write operations in order to improve
- performance. On some operating systems, the very system call
- (<literal>fsync()</literal>) that should wait until all unwritten
- data for a file has been flushed may actually return before the
- data has been flushed to stable storage. Because of this, an
- operating system crash or a power outage may destroy recently
- committed data, or in the worst case, even corrupt the database
- because of write operations having been reordered. If data
- integrity is important to you, you should perform some
+ performance. On some operating systems, the very system call that
+ should wait until all unwritten data for a file has been flushed
+ — <literal>fsync()</literal> — might actually return
+ before the data has been flushed to stable storage. Because of
+ this, an operating system crash or a power outage may destroy
+ recently committed data, or in the worst case, even corrupt the
+ database because of write operations having been reordered. If
+ data integrity is important to you, you should perform some
<quote>pull-the-plug</quote> tests before using anything in
- production. On Mac OS X 10.3 and later, <literal>InnoDB</literal>
+ production. On Mac OS X 10.3 and up, <literal>InnoDB</literal>
uses a special <literal>fcntl()</literal> file flush method. Under
Linux, it is advisable to <emphasis role="bold">disable the
write-back cache</emphasis>.
</para>
<para>
- On ATAPI hard disks, a command like <literal>hdparm -W0
- /dev/<replaceable>hda</replaceable></literal> may work.
+ On ATAPI hard disks, a command such <literal>hdparm -W0
+ /dev/hda</literal> may work to disable the write-back cache.
<emphasis role="bold">Beware that some drives or disk controllers
may be unable to disable the write-back cache.</emphasis>
</para>
<para>
- <emphasis role="bold">Note</emphasis>: To get good performance,
- you should explicitly provide <literal>InnoDB</literal> parameters
- as discussed in the following examples. Naturally, you should edit
- the settings to suit your hardware and requirements.
+ Two important disk-based resources managed by the
+ <literal>InnoDB</literal> storage engine are its tablespace data
+ files and its log files.
</para>
<para>
+ <emphasis role="bold">Note</emphasis>: If you specify no
+ <literal>InnoDB</literal> configuration options, MySQL creates an
+ auto-extending 10MB data file named <filename>ibdata1</filename>
+ and two 5MB log files named <filename>ib_logfile0</filename> and
+ <filename>ib_logfile1</filename> in the MySQL data directory. To
+ get good performance, you should explicitly provide
+ <literal>InnoDB</literal> parameters as discussed in the following
+ examples. Naturally, you should edit the settings to suit your
+ hardware and requirements.
+ </para>
+
+ <para>
+ The examples shown here are representative. See
+ <xref linkend="innodb-parameters"/> for additional information
+ about <literal>InnoDB</literal>-related configuration parameters.
+ </para>
+
+ <para>
To set up the <literal>InnoDB</literal> tablespace files, use the
<literal>innodb_data_file_path</literal> option in the
<literal>[mysqld]</literal> section of the
@@ -245,7 +247,8 @@
<para>
This setting configures a single 10MB data file named
<filename>ibdata1</filename> that is auto-extending. No location
- for the file is given, so the default is the MySQL data directory.
+ for the file is given, so by default, <literal>InnoDB</literal>
+ creates it in the MySQL data directory.
</para>
<para>
@@ -284,7 +287,8 @@
If you specify the <literal>autoextend</literal> option for the
last data file, <literal>InnoDB</literal> extends the data file if
it runs out of free space in the tablespace. The increment is 8MB
- at a time.
+ at a time by default. It can be modified by changing the
+ <literal>innodb_autoextend_increment</literal> system variable.
</para>
<para>
@@ -294,12 +298,12 @@
</para>
<para>
- <literal>InnoDB</literal> is not aware of the maximum file size,
- so be cautious on filesystems where the maximum file size is 2GB.
- To specify a maximum size for an auto-extending data file, use the
- <literal>max</literal> attribute. The following configuration
- allows <filename>ibdata1</filename> to grow up to a limit of
- 500MB:
+ <literal>InnoDB</literal> is not aware of the filesystem maximum
+ file size, so be cautious on filesystems where the maximum file
+ size is a small value such as 2GB. To specify a maximum size for
+ an auto-extending data file, use the <literal>max</literal>
+ attribute. The following configuration allows
+ <filename>ibdata1</filename> to grow up to a limit of 500MB:
</para>
<programlisting>
@@ -336,11 +340,13 @@
<literal>InnoDB</literal> forms the directory path for each data
file by textually concatenating the value of
<literal>innodb_data_home_dir</literal> to the data file name,
- adding a slash or backslash between if needed. If the
- <literal>innodb_data_home_dir</literal> option is not mentioned in
- <filename>my.cnf</filename> at all, the default value is the
- <quote>dot</quote> directory <filename>./</filename>, which means
- the MySQL data directory.
+ adding a pathname separator (slash or backslash) between values if
+ necessary. If the <literal>innodb_data_home_dir</literal> option
+ is not mentioned in <filename>my.cnf</filename> at all, the
+ default value is the <quote>dot</quote> directory
+ <filename>./</filename>, which means the MySQL data directory.
+ (The MySQL server changes its current working directory to its
+ data directory when it begins executing.)
</para>
<para>
@@ -362,13 +368,10 @@
RAM and one hard disk. The following example shows possible
configuration parameters in <filename>my.cnf</filename> or
<filename>my.ini</filename> for <literal>InnoDB</literal>,
- including the <literal>autoextend</literal> attribute.
- </para>
-
- <para>
- This example suits most users, both on Unix and Windows, who do
- not want to distribute <literal>InnoDB</literal> data files and
- log files on several disks. It creates an auto-extending data file
+ including the <literal>autoextend</literal> attribute. The example
+ suits most users, both on Unix and Windows, who do not want to
+ distribute <literal>InnoDB</literal> data files and log files onto
+ several disks. It creates an auto-extending data file
<filename>ibdata1</filename> and two <literal>InnoDB</literal> log
files <filename>ib_logfile0</filename> and
<filename>ib_logfile1</filename> in the MySQL data directory.
@@ -416,12 +419,13 @@
command prompt. <literal>InnoDB</literal> then prints the
information about the database creation to the screen, so you can
see what is happening. For example, on Windows, if
- <command>mysqld-max</command> is located in
- <filename>C:\mysql\bin</filename>, you can start it like this:
+ <command>mysqld-max</command> is located in <filename>C:\Program
+ Files\MySQL\MySQL Server ¤t-series;\bin</filename>, you can
+ start it like this:
</para>
<programlisting>
-C:\> <userinput>C:\mysql\bin\mysqld-max --console</userinput>
+C:\> <userinput>C:\Program Files\MySQL\MySQL Server ¤t-series;\bin\mysqld-max --console</userinput>
</programlisting>
<para>
@@ -436,127 +440,37 @@
like.
</para>
- <remark role="todo">
- Do we really need this info here, since it just repeats what's
- found in the Installation and other chapters? /JS
- </remark>
+ <para>
+ You can place <literal>InnoDB</literal> options in the
+ <literal>[mysqld]</literal> group of any option file that your
+ server reads when it starts. The locations for option files are
+ described in <xref linkend="option-files"/>.
+ </para>
<para>
- <emphasis role="bold">Where to specify options on
- Windows?</emphasis> The rules for option files on Windows are as
- follows:
+ If you installed MySQL on Windows using the installation and
+ configuration wizards, the option file will be the
+ <filename>my.ini</filename> file located in your MySQL
+ installation directory. See
+ <xref linkend="mysql-config-wizard-file-location"/>.
</para>
- <itemizedlist>
+ <para>
+ If your PC uses a boot loader where the <filename>C:</filename>
+ drive is not the boot drive, your only option is to use the
+ <filename>my.ini</filename> file in your Windows directory
+ (typically <filename>C:\WINDOWS</filename> or
+ <filename>C:\WINNT</filename>). You can use the
+ <literal>SET</literal> command at the command prompt in a console
+ window to print the value of <literal>WINDIR</literal>:
+ </para>
- <listitem>
- <para>
- Only one of <filename>my.cnf</filename> or
- <filename>my.ini</filename> should be created.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The <filename>my.cnf</filename> file should be placed in the
- root directory of the <filename>C:</filename> drive.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The <filename>my.ini</filename> file should be placed in the
- <literal>WINDIR</literal> directory; for example,
- <filename>C:\WINDOWS</filename> or
- <filename>C:\WINNT</filename>. You can use the
- <literal>SET</literal> command at the command prompt in a
- console window to print the value of
- <literal>WINDIR</literal>:
- </para>
-
<programlisting>
C:\> <userinput>SET WINDIR</userinput>
-windir=C:\WINNT
+windir=C:\WINDOWS
</programlisting>
- </listitem>
- <listitem>
- <para>
- If your PC uses a boot loader where the
- <filename>C:</filename> drive is not the boot drive, your only
- option is to use the <filename>my.ini</filename> file.
- </para>
- </listitem>
-
- <listitem>
- <para>
- If you installed MySQL using the installation and
- configuration wizards, the <filename>my.ini</filename> file is
- located in your MySQL installation directory. See
- <xref linkend="mysql-config-wizard-file-location"/>.
- </para>
- </listitem>
-
- </itemizedlist>
-
<para>
- <emphasis role="bold">Where to specify options on Unix?</emphasis>
- On Unix, <command>mysqld</command> reads options from the
- following files, if they exist, in the following order:
- </para>
-
- <itemizedlist>
-
- <listitem>
- <para>
- <filename>/etc/my.cnf</filename>
- </para>
-
- <para>
- Global options.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <filename>$MYSQL_HOME/my.cnf</filename>
- </para>
-
- <para>
- Server-specific options.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <filename>defaults-extra-file</filename>
- </para>
-
- <para>
- The file specified with the
- <option>--defaults-extra-file</option> option.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <filename>~/.my.cnf</filename>
- </para>
-
- <para>
- User-specific options.
- </para>
- </listitem>
-
- </itemizedlist>
-
- <para>
- <literal>MYSQL_HOME</literal> represents an environment variable,
- which contains a path to the directory containing the
- server-specific <literal>my.cnf</literal> file.
- </para>
-
- <para>
If you want to make sure that <command>mysqld</command> reads
options only from a specific file, you can use the
<option>--defaults-option</option> as the first option on the
@@ -564,15 +478,15 @@
</para>
<programlisting>
-mysqld --defaults-file=your_path_to_my_cnf
+mysqld --defaults-file=<replaceable>your_path_to_my_cnf</replaceable>
</programlisting>
<para>
<emphasis role="bold">An advanced <filename>my.cnf</filename>
example.</emphasis> Suppose that you have a Linux computer with
- 2GB RAM and three 60GB hard disks (at directory paths
+ 2GB RAM and three 60GB hard disks at directory paths
<filename>/</filename>, <filename>/dr2</filename> and
- <filename>/dr3</filename>). The following example shows possible
+ <filename>/dr3</filename>. The following example shows possible
configuration parameters in <filename>my.cnf</filename> for
<literal>InnoDB</literal>.
</para>
@@ -606,14 +520,15 @@
</programlisting>
<para>
- Note that the example places the two data files on different
- disks. <literal>InnoDB</literal> fills the tablespace beginning
- with the first data file. In some cases, it improves the
- performance of the database if all data is not placed on the same
- physical disk. Putting log files on a different disk from data is
- very often beneficial for performance. You can also use raw disk
- partitions (raw devices) as <literal>InnoDB</literal> data files,
- which may speed up I/O. See <xref linkend="innodb-raw-devices"/>.
+ In some cases, database performance improves the if all data is
+ not placed on the same physical disk. Putting log files on a
+ different disk from data is very often beneficial for performance.
+ The example illustrates how to do this. It places the two data
+ files on different disks and places the log files on the third
+ disk. <literal>InnoDB</literal> fills the tablespace beginning
+ with the first data file. You can also use raw disk partitions
+ (raw devices) as <literal>InnoDB</literal> data files, which may
+ speed up I/O. See <xref linkend="innodb-raw-devices"/>.
</para>
<para>
@@ -642,7 +557,7 @@
By compiling MySQL yourself, you can use up to 64GB of physical
memory in 32-bit Windows. See the description for
<literal>innodb_buffer_pool_awe_mem_mb</literal> in
- <xref linkend="innodb-start"/>.
+ <xref linkend="innodb-parameters"/>.
</para>
<para>
@@ -977,9 +892,9 @@
</section>
- <section id="innodb-start">
+ <section id="innodb-parameters">
- <title>&title-innodb-start;</title>
+ <title>&title-innodb-parameters;</title>
<remark role="todo">
Have separate lists for options and variables?
@@ -2057,11 +1972,12 @@
<title>&title-converting-tables-to-innodb;</title>
<para>
- Important: You should not convert MySQL system tables in the
+ Important: Do not convert MySQL system tables in the
<literal>mysql</literal> database (such as
<literal>user</literal> or <literal>host</literal>) to the
- <literal>InnoDB</literal> type. The system tables must always be
- of the <literal>MyISAM</literal> type.
+ <literal>InnoDB</literal> type. This is an unsupported
+ operation. The system tables must always be of the
+ <literal>MyISAM</literal> type.
</para>
<para>
@@ -5358,8 +5274,8 @@
would be good to throttle new row operations, and allocate more
resources to the purge thread. The startup option and settable
global variable <literal>innodb_max_purge_lag</literal> exists for
- exactly this purpose. See <xref linkend="innodb-start"/>, for more
- information.
+ exactly this purpose. See <xref linkend="innodb-parameters"/>, for
+ more information.
</para>
</section>
Modified: trunk/refman-5.0/renamed-nodes.txt
===================================================================
--- trunk/refman-5.0/renamed-nodes.txt 2006-01-09 20:43:05 UTC (rev 745)
+++ trunk/refman-5.0/renamed-nodes.txt 2006-01-09 20:43:55 UTC (rev 746)
@@ -391,3 +391,4 @@
localisation localization
client-side-scripts client-utility-programs
mysqlcc client-utility-programs
+innodb-start innodb-parameters
Modified: trunk/refman-5.1/database-administration.xml
===================================================================
--- trunk/refman-5.1/database-administration.xml 2006-01-09 20:43:05 UTC (rev 745)
+++ trunk/refman-5.1/database-administration.xml 2006-01-09 20:43:55 UTC (rev 746)
@@ -2860,7 +2860,7 @@
Options specific to particular storage engines: See
<xref linkend="myisam-start"/>,
<xref linkend="bdb-start"/>, and
- <xref linkend="innodb-start"/>.
+ <xref linkend="innodb-parameters"/>.
</para>
</listitem>
@@ -5485,7 +5485,7 @@
<citetitle>&title-refman-previous;</citetitle> and
<citetitle>&title-refman-4-1;</citetitle>.
<literal>InnoDB</literal> system variables are listed in
- <xref linkend="innodb-start"/>.
+ <xref linkend="innodb-parameters"/>.
</para>
<para>
@@ -6904,7 +6904,7 @@
<para>
The <literal>InnoDB</literal> system variables are listed
- in <xref linkend="innodb-start"/>.
+ in <xref linkend="innodb-parameters"/>.
</para>
</listitem>
Modified: trunk/refman-5.1/innodb.xml
===================================================================
--- trunk/refman-5.1/innodb.xml 2006-01-09 20:43:05 UTC (rev 745)
+++ trunk/refman-5.1/innodb.xml 2006-01-09 20:43:55 UTC (rev 746)
@@ -55,16 +55,15 @@
<para>
<literal>InnoDB</literal> provides MySQL with a transaction-safe
- (<literal>ACID</literal> compliant) storage engine with commit,
- rollback, and crash recovery capabilities.
+ (<literal>ACID</literal> compliant) storage engine that has
+ commit, rollback, and crash recovery capabilities.
<literal>InnoDB</literal> does locking on the row level and also
provides an Oracle-style consistent non-locking read in
<literal>SELECT</literal> statements. These features increase
multi-user concurrency and performance. There is no need for lock
- escalation in <literal>InnoDB</literal> because row-level locks in
- <literal>InnoDB</literal> fit in very little space.
- <literal>InnoDB</literal> also supports <literal>FOREIGN
- KEY</literal> constraints. You can freely mix
+ escalation in <literal>InnoDB</literal> because row-level locks
+ fit in very little space. <literal>InnoDB</literal> also supports
+ <literal>FOREIGN KEY</literal> constraints. You can freely mix
<literal>InnoDB</literal> tables with tables from other MySQL
storage engines, even within the same statement.
</para>
@@ -119,8 +118,8 @@
<listitem>
<para>
- For the <literal>InnoDB</literal> storage engine, there's a
- dedicated forum available on
+ A forum dedicated to the <literal>InnoDB</literal> storage
+ engine is available at
<ulink url="http://forums.mysql.com/list.php?22"/>.
</para>
</listitem>
@@ -166,57 +165,60 @@
</para>
<para>
- Two important disk-based resources managed by the
- <literal>InnoDB</literal> storage engine are its tablespace data
- files and its log files.
- </para>
-
- <para>
- If you specify no <literal>InnoDB</literal> configuration options,
- MySQL creates an auto-extending 10MB data file named
- <filename>ibdata1</filename> and two 5MB log files named
- <filename>ib_logfile0</filename> and
- <filename>ib_logfile1</filename> in the MySQL data directory.
- </para>
-
- <para>
<emphasis role="bold">Note</emphasis>: <literal>InnoDB</literal>
provides MySQL with a transaction-safe (<literal>ACID</literal>
- compliant) storage engine with commit, rollback, and crash
- recovery capabilities. <emphasis role="bold">It cannot do
- so</emphasis> if the underlying operating system and hardware does
+ compliant) storage engine that has commit, rollback, and crash
+ recovery capabilities. <emphasis role="bold">However, it cannot do
+ so</emphasis> if the underlying operating system or hardware does
not work as advertised. Many operating systems or disk subsystems
may delay or reorder write operations in order to improve
- performance. On some operating systems, the very system call
- (<literal>fsync()</literal>) that should wait until all unwritten
- data for a file has been flushed may actually return before the
- data has been flushed to stable storage. Because of this, an
- operating system crash or a power outage may destroy recently
- committed data, or in the worst case, even corrupt the database
- because of write operations having been reordered. If data
- integrity is important to you, you should perform some
+ performance. On some operating systems, the very system call that
+ should wait until all unwritten data for a file has been flushed
+ — <literal>fsync()</literal> — might actually return
+ before the data has been flushed to stable storage. Because of
+ this, an operating system crash or a power outage may destroy
+ recently committed data, or in the worst case, even corrupt the
+ database because of write operations having been reordered. If
+ data integrity is important to you, you should perform some
<quote>pull-the-plug</quote> tests before using anything in
- production. On Mac OS X 10.3 and later, <literal>InnoDB</literal>
+ production. On Mac OS X 10.3 and up, <literal>InnoDB</literal>
uses a special <literal>fcntl()</literal> file flush method. Under
Linux, it is advisable to <emphasis role="bold">disable the
write-back cache</emphasis>.
</para>
<para>
- On ATAPI hard disks, a command like <literal>hdparm -W0
- /dev/<replaceable>hda</replaceable></literal> may work.
+ On ATAPI hard disks, a command such <literal>hdparm -W0
+ /dev/hda</literal> may work to disable the write-back cache.
<emphasis role="bold">Beware that some drives or disk controllers
may be unable to disable the write-back cache.</emphasis>
</para>
<para>
- <emphasis role="bold">Note</emphasis>: To get good performance,
- you should explicitly provide <literal>InnoDB</literal> parameters
- as discussed in the following examples. Naturally, you should edit
- the settings to suit your hardware and requirements.
+ Two important disk-based resources managed by the
+ <literal>InnoDB</literal> storage engine are its tablespace data
+ files and its log files.
</para>
<para>
+ <emphasis role="bold">Note</emphasis>: If you specify no
+ <literal>InnoDB</literal> configuration options, MySQL creates an
+ auto-extending 10MB data file named <filename>ibdata1</filename>
+ and two 5MB log files named <filename>ib_logfile0</filename> and
+ <filename>ib_logfile1</filename> in the MySQL data directory. To
+ get good performance, you should explicitly provide
+ <literal>InnoDB</literal> parameters as discussed in the following
+ examples. Naturally, you should edit the settings to suit your
+ hardware and requirements.
+ </para>
+
+ <para>
+ The examples shown here are representative. See
+ <xref linkend="innodb-parameters"/> for additional information
+ about <literal>InnoDB</literal>-related configuration parameters.
+ </para>
+
+ <para>
To set up the <literal>InnoDB</literal> tablespace files, use the
<literal>innodb_data_file_path</literal> option in the
<literal>[mysqld]</literal> section of the
@@ -245,7 +247,8 @@
<para>
This setting configures a single 10MB data file named
<filename>ibdata1</filename> that is auto-extending. No location
- for the file is given, so the default is the MySQL data directory.
+ for the file is given, so by default, <literal>InnoDB</literal>
+ creates it in the MySQL data directory.
</para>
<para>
@@ -284,7 +287,8 @@
If you specify the <literal>autoextend</literal> option for the
last data file, <literal>InnoDB</literal> extends the data file if
it runs out of free space in the tablespace. The increment is 8MB
- at a time.
+ at a time by default. It can be modified by changing the
+ <literal>innodb_autoextend_increment</literal> system variable.
</para>
<para>
@@ -294,12 +298,12 @@
</para>
<para>
- <literal>InnoDB</literal> is not aware of the maximum file size,
- so be cautious on filesystems where the maximum file size is 2GB.
- To specify a maximum size for an auto-extending data file, use the
- <literal>max</literal> attribute. The following configuration
- allows <filename>ibdata1</filename> to grow up to a limit of
- 500MB:
+ <literal>InnoDB</literal> is not aware of the filesystem maximum
+ file size, so be cautious on filesystems where the maximum file
+ size is a small value such as 2GB. To specify a maximum size for
+ an auto-extending data file, use the <literal>max</literal>
+ attribute. The following configuration allows
+ <filename>ibdata1</filename> to grow up to a limit of 500MB:
</para>
<programlisting>
@@ -336,11 +340,13 @@
<literal>InnoDB</literal> forms the directory path for each data
file by textually concatenating the value of
<literal>innodb_data_home_dir</literal> to the data file name,
- adding a slash or backslash between if needed. If the
- <literal>innodb_data_home_dir</literal> option is not mentioned in
- <filename>my.cnf</filename> at all, the default value is the
- <quote>dot</quote> directory <filename>./</filename>, which means
- the MySQL data directory.
+ adding a pathname separator (slash or backslash) between values if
+ necessary. If the <literal>innodb_data_home_dir</literal> option
+ is not mentioned in <filename>my.cnf</filename> at all, the
+ default value is the <quote>dot</quote> directory
+ <filename>./</filename>, which means the MySQL data directory.
+ (The MySQL server changes its current working directory to its
+ data directory when it begins executing.)
</para>
<para>
@@ -362,13 +368,10 @@
RAM and one hard disk. The following example shows possible
configuration parameters in <filename>my.cnf</filename> or
<filename>my.ini</filename> for <literal>InnoDB</literal>,
- including the <literal>autoextend</literal> attribute.
- </para>
-
- <para>
- This example suits most users, both on Unix and Windows, who do
- not want to distribute <literal>InnoDB</literal> data files and
- log files on several disks. It creates an auto-extending data file
+ including the <literal>autoextend</literal> attribute. The example
+ suits most users, both on Unix and Windows, who do not want to
+ distribute <literal>InnoDB</literal> data files and log files onto
+ several disks. It creates an auto-extending data file
<filename>ibdata1</filename> and two <literal>InnoDB</literal> log
files <filename>ib_logfile0</filename> and
<filename>ib_logfile1</filename> in the MySQL data directory.
@@ -416,12 +419,13 @@
command prompt. <literal>InnoDB</literal> then prints the
information about the database creation to the screen, so you can
see what is happening. For example, on Windows, if
- <command>mysqld-max</command> is located in
- <filename>C:\mysql\bin</filename>, you can start it like this:
+ <command>mysqld-max</command> is located in <filename>C:\Program
+ Files\MySQL\MySQL Server ¤t-series;\bin</filename>, you can
+ start it like this:
</para>
<programlisting>
-C:\> <userinput>C:\mysql\bin\mysqld-max --console</userinput>
+C:\> <userinput>C:\Program Files\MySQL\MySQL Server ¤t-series;\bin\mysqld-max --console</userinput>
</programlisting>
<para>
@@ -436,127 +440,37 @@
like.
</para>
- <remark role="todo">
- Do we really need this info here, since it just repeats what's
- found in the Installation and other chapters? /JS
- </remark>
+ <para>
+ You can place <literal>InnoDB</literal> options in the
+ <literal>[mysqld]</literal> group of any option file that your
+ server reads when it starts. The locations for option files are
+ described in <xref linkend="option-files"/>.
+ </para>
<para>
- <emphasis role="bold">Where to specify options on
- Windows?</emphasis> The rules for option files on Windows are as
- follows:
+ If you installed MySQL on Windows using the installation and
+ configuration wizards, the option file will be the
+ <filename>my.ini</filename> file located in your MySQL
+ installation directory. See
+ <xref linkend="mysql-config-wizard-file-location"/>.
</para>
- <itemizedlist>
+ <para>
+ If your PC uses a boot loader where the <filename>C:</filename>
+ drive is not the boot drive, your only option is to use the
+ <filename>my.ini</filename> file in your Windows directory
+ (typically <filename>C:\WINDOWS</filename> or
+ <filename>C:\WINNT</filename>). You can use the
+ <literal>SET</literal> command at the command prompt in a console
+ window to print the value of <literal>WINDIR</literal>:
+ </para>
- <listitem>
- <para>
- Only one of <filename>my.cnf</filename> or
- <filename>my.ini</filename> should be created.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The <filename>my.cnf</filename> file should be placed in the
- root directory of the <filename>C:</filename> drive.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The <filename>my.ini</filename> file should be placed in the
- <literal>WINDIR</literal> directory; for example,
- <filename>C:\WINDOWS</filename> or
- <filename>C:\WINNT</filename>. You can use the
- <literal>SET</literal> command at the command prompt in a
- console window to print the value of
- <literal>WINDIR</literal>:
- </para>
-
<programlisting>
C:\> <userinput>SET WINDIR</userinput>
-windir=C:\WINNT
+windir=C:\WINDOWS
</programlisting>
- </listitem>
- <listitem>
- <para>
- If your PC uses a boot loader where the
- <filename>C:</filename> drive is not the boot drive, your only
- option is to use the <filename>my.ini</filename> file.
- </para>
- </listitem>
-
- <listitem>
- <para>
- If you installed MySQL using the installation and
- configuration wizards, the <filename>my.ini</filename> file is
- located in your MySQL installation directory. See
- <xref linkend="mysql-config-wizard-file-location"/>.
- </para>
- </listitem>
-
- </itemizedlist>
-
<para>
- <emphasis role="bold">Where to specify options on Unix?</emphasis>
- On Unix, <command>mysqld</command> reads options from the
- following files, if they exist, in the following order:
- </para>
-
- <itemizedlist>
-
- <listitem>
- <para>
- <filename>/etc/my.cnf</filename>
- </para>
-
- <para>
- Global options.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <filename>$MYSQL_HOME/my.cnf</filename>
- </para>
-
- <para>
- Server-specific options.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <filename>defaults-extra-file</filename>
- </para>
-
- <para>
- The file specified with the
- <option>--defaults-extra-file</option> option.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <filename>~/.my.cnf</filename>
- </para>
-
- <para>
- User-specific options.
- </para>
- </listitem>
-
- </itemizedlist>
-
- <para>
- <literal>MYSQL_HOME</literal> represents an environment variable,
- which contains a path to the directory containing the
- server-specific <literal>my.cnf</literal> file.
- </para>
-
- <para>
If you want to make sure that <command>mysqld</command> reads
options only from a specific file, you can use the
<option>--defaults-option</option> as the first option on the
@@ -564,15 +478,15 @@
</para>
<programlisting>
-mysqld --defaults-file=your_path_to_my_cnf
+mysqld --defaults-file=<replaceable>your_path_to_my_cnf</replaceable>
</programlisting>
<para>
<emphasis role="bold">An advanced <filename>my.cnf</filename>
example.</emphasis> Suppose that you have a Linux computer with
- 2GB RAM and three 60GB hard disks (at directory paths
+ 2GB RAM and three 60GB hard disks at directory paths
<filename>/</filename>, <filename>/dr2</filename> and
- <filename>/dr3</filename>). The following example shows possible
+ <filename>/dr3</filename>. The following example shows possible
configuration parameters in <filename>my.cnf</filename> for
<literal>InnoDB</literal>.
</para>
@@ -606,14 +520,15 @@
</programlisting>
<para>
- Note that the example places the two data files on different
- disks. <literal>InnoDB</literal> fills the tablespace beginning
- with the first data file. In some cases, it improves the
- performance of the database if all data is not placed on the same
- physical disk. Putting log files on a different disk from data is
- very often beneficial for performance. You can also use raw disk
- partitions (raw devices) as <literal>InnoDB</literal> data files,
- which may speed up I/O. See <xref linkend="innodb-raw-devices"/>.
+ In some cases, database performance improves the if all data is
+ not placed on the same physical disk. Putting log files on a
+ different disk from data is very often beneficial for performance.
+ The example illustrates how to do this. It places the two data
+ files on different disks and places the log files on the third
+ disk. <literal>InnoDB</literal> fills the tablespace beginning
+ with the first data file. You can also use raw disk partitions
+ (raw devices) as <literal>InnoDB</literal> data files, which may
+ speed up I/O. See <xref linkend="innodb-raw-devices"/>.
</para>
<para>
@@ -642,7 +557,7 @@
By compiling MySQL yourself, you can use up to 64GB of physical
memory in 32-bit Windows. See the description for
<literal>innodb_buffer_pool_awe_mem_mb</literal> in
- <xref linkend="innodb-start"/>.
+ <xref linkend="innodb-parameters"/>.
</para>
<para>
@@ -977,9 +892,9 @@
</section>
- <section id="innodb-start">
+ <section id="innodb-parameters">
- <title>&title-innodb-start;</title>
+ <title>&title-innodb-parameters;</title>
<remark role="todo">
Have separate lists for options and variables?
@@ -2034,11 +1949,12 @@
<title>&title-converting-tables-to-innodb;</title>
<para>
- Important: You should not convert MySQL system tables in the
+ Important: Do not convert MySQL system tables in the
<literal>mysql</literal> database (such as
<literal>user</literal> or <literal>host</literal>) to the
- <literal>InnoDB</literal> type. The system tables must always be
- of the <literal>MyISAM</literal> type.
+ <literal>InnoDB</literal> type. This is an unsupported
+ operation. The system tables must always be of the
+ <literal>MyISAM</literal> type.
</para>
<para>
@@ -5319,8 +5235,8 @@
would be good to throttle new row operations, and allocate more
resources to the purge thread. The startup option and settable
global variable <literal>innodb_max_purge_lag</literal> exists for
- exactly this purpose. See <xref linkend="innodb-start"/>, for more
- information.
+ exactly this purpose. See <xref linkend="innodb-parameters"/>, for
+ more information.
</para>
</section>
Modified: trunk/refman-5.1/renamed-nodes.txt
===================================================================
--- trunk/refman-5.1/renamed-nodes.txt 2006-01-09 20:43:05 UTC (rev 745)
+++ trunk/refman-5.1/renamed-nodes.txt 2006-01-09 20:43:55 UTC (rev 746)
@@ -95,3 +95,4 @@
localisation localization
client-side-scripts client-utility-programs
mysqlcc client-utility-programs
+innodb-start innodb-parameters
Modified: trunk/refman-common/news-3.23.xml
===================================================================
--- trunk/refman-common/news-3.23.xml 2006-01-09 20:43:05 UTC (rev 745)
+++ trunk/refman-common/news-3.23.xml 2006-01-09 20:43:55 UTC (rev 746)
@@ -382,7 +382,7 @@
The default option for
<literal>innodb_flush_log_at_trx_commit</literal> was changed
from 0 to 1 to make <literal>InnoDB</literal> tables ACID by
- default. See <xref linkend="innodb-start"/>.
+ default. See <xref linkend="innodb-parameters"/>.
</para>
</listitem>
Modified: trunk/refman-common/news-4.0.xml
===================================================================
--- trunk/refman-common/news-4.0.xml 2006-01-09 20:43:05 UTC (rev 745)
+++ trunk/refman-common/news-4.0.xml 2006-01-09 20:43:55 UTC (rev 746)
@@ -5203,7 +5203,7 @@
The default option for
<literal>innodb_flush_log_at_trx_commit</literal> was changed
from 0 to 1 to make <literal>InnoDB</literal> tables ACID by
- default. See <xref linkend="innodb-start"/>.
+ default. See <xref linkend="innodb-parameters"/>.
</para>
</listitem>
Modified: trunk/refman-common/titles.en.ent
===================================================================
--- trunk/refman-common/titles.en.ent 2006-01-09 20:43:05 UTC (rev 745)
+++ trunk/refman-common/titles.en.ent 2006-01-09 20:43:55 UTC (rev 746)
@@ -545,7 +545,7 @@
<!ENTITY title-innodb-physical-structure "Physical Structure of an Index">
<!ENTITY title-innodb-raw-devices "Using Raw Devices for the Shared Tablespace">
<!ENTITY title-innodb-restrictions "Restrictions on <literal>InnoDB</literal> Tables">
-<!ENTITY title-innodb-start "<literal>InnoDB</literal> Startup Options and System Variables">
+<!ENTITY title-innodb-parameters "<literal>InnoDB</literal> Startup Options and System Variables">
<!ENTITY title-innodb-transaction-isolation "<literal>InnoDB</literal> and <literal>TRANSACTION ISOLATION LEVEL</literal>">
<!ENTITY title-innodb-transaction-model "<literal>InnoDB</literal> Transaction Model and Locking">
<!ENTITY title-innodb-transactions-with-different-apis "How to Use Transactions in <literal>InnoDB</literal> with Different APIs">
| Thread |
|---|
| • svn commit - mysqldoc@docsrva: r746 - in trunk: . refman-4.1 refman-5.0 refman-5.1 refman-common | paul | 9 Jan |