List:Commits« Previous MessageNext Message »
From:paul.dubois Date:July 12 2010 3:04pm
Subject:svn commit - mysqldoc@docsrva: r21660 - in trunk: . refman-4.1 refman-5.0 refman-5.1 refman-5.5 refman-6.0
View as plain text  
Author: paul
Date: 2010-07-12 17:04:54 +0200 (Mon, 12 Jul 2010)
New Revision: 21660

Log:
 r61051@frost:  paul | 2010-07-12 10:00:12 -0500
 Tweaks for doc bug #53636


Modified:
   trunk/refman-4.1/backup.xml
   trunk/refman-4.1/optimization.xml
   trunk/refman-4.1/programs-admin-util-core.xml
   trunk/refman-4.1/sql-syntax-server-administration.xml
   trunk/refman-5.0/optimization.xml
   trunk/refman-5.0/programs-admin-util-core.xml
   trunk/refman-5.0/sql-syntax-server-administration.xml
   trunk/refman-5.1/optimization.xml
   trunk/refman-5.1/programs-admin-util-core.xml
   trunk/refman-5.1/sql-syntax-server-administration.xml
   trunk/refman-5.5/optimization.xml
   trunk/refman-5.5/programs-admin-util-core.xml
   trunk/refman-5.5/sql-syntax-server-administration.xml
   trunk/refman-6.0/optimization.xml
   trunk/refman-6.0/programs-admin-util-core.xml
   trunk/refman-6.0/sql-syntax-server-administration.xml

Property changes on: trunk
___________________________________________________________________
Name: svk:merge
   - 07c7e7b4-24e3-4b51-89d0-6dc09fec6bec:/mysqldoc-local/mysqldoc/trunk:35498
07c7e7b4-24e3-4b51-89d0-6dc09fec6bec:/mysqldoc-local/trunk:40730
4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/mysqldoc/trunk:43968
4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/trunk:44480
7d8d2c4e-af1d-0410-ab9f-b038ce55645b:/mysqldoc-local/mysqldoc:61049
b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:14218
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:39036
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/trunk:39546
   + 07c7e7b4-24e3-4b51-89d0-6dc09fec6bec:/mysqldoc-local/mysqldoc/trunk:35498
07c7e7b4-24e3-4b51-89d0-6dc09fec6bec:/mysqldoc-local/trunk:40730
4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/mysqldoc/trunk:43968
4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/trunk:44480
7d8d2c4e-af1d-0410-ab9f-b038ce55645b:/mysqldoc-local/mysqldoc:61051
b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:14218
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:39036
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/trunk:39546


Modified: trunk/refman-4.1/backup.xml
===================================================================
--- trunk/refman-4.1/backup.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-4.1/backup.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 1, Lines Added: 3, Lines Deleted: 4; 840 bytes

@@ -2742,10 +2742,9 @@
       </para>
 
       <para>
-        If you are using MySQL 3.23.16 and above, you can use the
-        <literal role="stmt">CHECK TABLE</literal> and
-        <literal role="stmt">REPAIR TABLE</literal> statements to check
-        and repair <literal>MyISAM</literal> tables. See
+        You can also use the <literal role="stmt">CHECK TABLE</literal>
+        and <literal role="stmt">REPAIR TABLE</literal> statements to
+        check and repair <literal>MyISAM</literal> tables. See
         <xref linkend="check-table"/>, and
         <xref linkend="repair-table"/>.
       </para>


Modified: trunk/refman-4.1/optimization.xml
===================================================================
--- trunk/refman-4.1/optimization.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-4.1/optimization.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 2, Lines Added: 20, Lines Deleted: 11; 2940 bytes

@@ -4719,28 +4719,37 @@
         <literal role="sysvar">key_buffer_size</literal>, you must take
         into account that the buffer is shared with those users. For
         example, if you set the <command>myisamchk</command>
-        <literal>key_buffer_size</literal> variable to 128MB, you must
+        <literal>key_buffer_size</literal> variable to 128MB, you could
         set the corresponding
         <literal role="sysvar">key_buffer_size</literal> system variable
         larger than that (if it is not already set larger), to allow for
-        key buffer use by activity in other sessions.
+        key buffer use by activity in other sessions. However, changing
+        the global key buffer size invalidates the buffer, causing
+        increased disk I/O and slowdown for other sessions. An
+        alternative that avoids this problem is to use a separate key
+        cache, assign to it the indexes from the table to be repaired,
+        and deallocate it when the repair is complete. See
+        <xref linkend="multiple-key-caches"/>.
       </para>
 
       <para>
         Based on the preceding remarks, a <literal role="stmt">REPAIR
         TABLE</literal> operation can be done as follows to use settings
-        similar to the <command>myisamchk</command> command. Here the
-        server key buffer is set to 1GB and the file system containing
-        the index file is assumed to have at least 100GB free disk
-        space.
+        similar to the <command>myisamchk</command> command. Here a
+        separate 128MB key buffer is allocated and the file system
+        containing the index file is assumed to have at least 100GB free
+        disk space.
       </para>
 
 <programlisting>
 SET SESSION myisam_sort_buffer_size = 256*1024*1024;
 SET SESSION read_buffer_size = 64*1024*1024;
-SET GLOBAL key_buffer_size = 1024*1024*1024;
 SET GLOBAL myisam_max_sort_file_size = 100*1024*1024*1024;
-REPAIR TABLE tbl_name ;
+SET GLOBAL repair_cache.key_buffer_size = 128*1024*1024;
+CACHE INDEX <replaceable>tbl_name</replaceable> IN repair_cache;
+LOAD INDEX INTO CACHE <replaceable>tbl_name</replaceable>;
+REPAIR TABLE <replaceable>tbl_name</replaceable> ;
+SET GLOBAL repair_cache.key_buffer_size = 0;
 </programlisting>
 
       <para>

@@ -4752,10 +4761,10 @@
       </para>
 
 <programlisting>
-SET @old_key_buffer_size = @@global.key_buffer_size;
-SET GLOBAL key_buffer_size = 1024*1024*1024;
+SET @old_myisam_sort_buffer_size = @@global.myisam_sort_buffer_size;
+SET GLOBAL myisam_sort_buffer_size = 256*1024*1024;
 REPAIR TABLE tbl_name ;
-SET GLOBAL key_buffer_size = @old_key_buffer_size;
+SET GLOBAL myisam_sort_buffer_size = @old_myisam_sort_buffer_size;
 </programlisting>
 
       <para>


Modified: trunk/refman-4.1/programs-admin-util-core.xml
===================================================================
--- trunk/refman-4.1/programs-admin-util-core.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-4.1/programs-admin-util-core.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 1, Lines Added: 8, Lines Deleted: 0; 814 bytes

@@ -328,6 +328,14 @@
         <filename>.ISM</filename> files for storing data and indexes).
       </para>
 
+      <para>
+        You can also use the <literal role="stmt">CHECK TABLE</literal>
+        and <literal role="stmt">REPAIR TABLE</literal> statements to
+        check and repair <literal>MyISAM</literal> tables. See
+        <xref linkend="check-table"/>, and
+        <xref linkend="repair-table"/>.
+      </para>
+
       <caution>
         <para>
           It is best to make a backup of a table before performing a


Modified: trunk/refman-4.1/sql-syntax-server-administration.xml
===================================================================
--- trunk/refman-4.1/sql-syntax-server-administration.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-4.1/sql-syntax-server-administration.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 1, Lines Added: 3, Lines Deleted: 1; 763 bytes

@@ -7155,7 +7155,9 @@
       <para>
         The <literal role="stmt">CACHE INDEX</literal> statement assigns
         table indexes to a specific key cache. It is used only for
-        <literal>MyISAM</literal> tables.
+        <literal>MyISAM</literal> tables. After the indexes have been
+        assigned, they can be preloaded into the cache if desired with
+        <literal role="stmt">LOAD INDEX INTO CACHE</literal>.
       </para>
 
       <para>


Modified: trunk/refman-5.0/optimization.xml
===================================================================
--- trunk/refman-5.0/optimization.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-5.0/optimization.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 2, Lines Added: 20, Lines Deleted: 11; 2940 bytes

@@ -7023,28 +7023,37 @@
         <literal role="sysvar">key_buffer_size</literal>, you must take
         into account that the buffer is shared with those users. For
         example, if you set the <command>myisamchk</command>
-        <literal>key_buffer_size</literal> variable to 128MB, you must
+        <literal>key_buffer_size</literal> variable to 128MB, you could
         set the corresponding
         <literal role="sysvar">key_buffer_size</literal> system variable
         larger than that (if it is not already set larger), to allow for
-        key buffer use by activity in other sessions.
+        key buffer use by activity in other sessions. However, changing
+        the global key buffer size invalidates the buffer, causing
+        increased disk I/O and slowdown for other sessions. An
+        alternative that avoids this problem is to use a separate key
+        cache, assign to it the indexes from the table to be repaired,
+        and deallocate it when the repair is complete. See
+        <xref linkend="multiple-key-caches"/>.
       </para>
 
       <para>
         Based on the preceding remarks, a <literal role="stmt">REPAIR
         TABLE</literal> operation can be done as follows to use settings
-        similar to the <command>myisamchk</command> command. Here the
-        server key buffer is set to 1GB and the file system containing
-        the index file is assumed to have at least 100GB free disk
-        space.
+        similar to the <command>myisamchk</command> command. Here a
+        separate 128MB key buffer is allocated and the file system
+        containing the index file is assumed to have at least 100GB free
+        disk space.
       </para>
 
 <programlisting>
 SET SESSION myisam_sort_buffer_size = 256*1024*1024;
 SET SESSION read_buffer_size = 64*1024*1024;
-SET GLOBAL key_buffer_size = 1024*1024*1024;
 SET GLOBAL myisam_max_sort_file_size = 100*1024*1024*1024;
-REPAIR TABLE tbl_name ;
+SET GLOBAL repair_cache.key_buffer_size = 128*1024*1024;
+CACHE INDEX <replaceable>tbl_name</replaceable> IN repair_cache;
+LOAD INDEX INTO CACHE <replaceable>tbl_name</replaceable>;
+REPAIR TABLE <replaceable>tbl_name</replaceable> ;
+SET GLOBAL repair_cache.key_buffer_size = 0;
 </programlisting>
 
       <para>

@@ -7056,10 +7065,10 @@
       </para>
 
 <programlisting>
-SET @old_key_buffer_size = @@global.key_buffer_size;
-SET GLOBAL key_buffer_size = 1024*1024*1024;
+SET @old_myisam_sort_buffer_size = @@global.myisam_sort_buffer_size;
+SET GLOBAL myisam_sort_buffer_size = 256*1024*1024;
 REPAIR TABLE tbl_name ;
-SET GLOBAL key_buffer_size = @old_key_buffer_size;
+SET GLOBAL myisam_sort_buffer_size = @old_myisam_sort_buffer_size;
 </programlisting>
 
       <para>


Modified: trunk/refman-5.0/programs-admin-util-core.xml
===================================================================
--- trunk/refman-5.0/programs-admin-util-core.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-5.0/programs-admin-util-core.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 1, Lines Added: 8, Lines Deleted: 0; 782 bytes

@@ -454,6 +454,14 @@
         for storing data and indexes).
       </para>
 
+      <para>
+        You can also use the <literal role="stmt">CHECK TABLE</literal>
+        and <literal role="stmt">REPAIR TABLE</literal> statements to
+        check and repair <literal>MyISAM</literal> tables. See
+        <xref linkend="check-table"/>, and
+        <xref linkend="repair-table"/>.
+      </para>
+
       <caution>
         <para>
           It is best to make a backup of a table before performing a


Modified: trunk/refman-5.0/sql-syntax-server-administration.xml
===================================================================
--- trunk/refman-5.0/sql-syntax-server-administration.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-5.0/sql-syntax-server-administration.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 1, Lines Added: 3, Lines Deleted: 1; 763 bytes

@@ -8945,7 +8945,9 @@
       <para>
         The <literal role="stmt">CACHE INDEX</literal> statement assigns
         table indexes to a specific key cache. It is used only for
-        <literal>MyISAM</literal> tables.
+        <literal>MyISAM</literal> tables. After the indexes have been
+        assigned, they can be preloaded into the cache if desired with
+        <literal role="stmt">LOAD INDEX INTO CACHE</literal>.
       </para>
 
       <para>


Modified: trunk/refman-5.1/optimization.xml
===================================================================
--- trunk/refman-5.1/optimization.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-5.1/optimization.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 2, Lines Added: 20, Lines Deleted: 11; 2940 bytes

@@ -8057,28 +8057,37 @@
         <literal role="sysvar">key_buffer_size</literal>, you must take
         into account that the buffer is shared with those users. For
         example, if you set the <command>myisamchk</command>
-        <literal>key_buffer_size</literal> variable to 128MB, you must
+        <literal>key_buffer_size</literal> variable to 128MB, you could
         set the corresponding
         <literal role="sysvar">key_buffer_size</literal> system variable
         larger than that (if it is not already set larger), to allow for
-        key buffer use by activity in other sessions.
+        key buffer use by activity in other sessions. However, changing
+        the global key buffer size invalidates the buffer, causing
+        increased disk I/O and slowdown for other sessions. An
+        alternative that avoids this problem is to use a separate key
+        cache, assign to it the indexes from the table to be repaired,
+        and deallocate it when the repair is complete. See
+        <xref linkend="multiple-key-caches"/>.
       </para>
 
       <para>
         Based on the preceding remarks, a <literal role="stmt">REPAIR
         TABLE</literal> operation can be done as follows to use settings
-        similar to the <command>myisamchk</command> command. Here the
-        server key buffer is set to 1GB and the file system containing
-        the index file is assumed to have at least 100GB free disk
-        space.
+        similar to the <command>myisamchk</command> command. Here a
+        separate 128MB key buffer is allocated and the file system
+        containing the index file is assumed to have at least 100GB free
+        disk space.
       </para>
 
 <programlisting>
 SET SESSION myisam_sort_buffer_size = 256*1024*1024;
 SET SESSION read_buffer_size = 64*1024*1024;
-SET GLOBAL key_buffer_size = 1024*1024*1024;
 SET GLOBAL myisam_max_sort_file_size = 100*1024*1024*1024;
-REPAIR TABLE tbl_name ;
+SET GLOBAL repair_cache.key_buffer_size = 128*1024*1024;
+CACHE INDEX <replaceable>tbl_name</replaceable> IN repair_cache;
+LOAD INDEX INTO CACHE <replaceable>tbl_name</replaceable>;
+REPAIR TABLE <replaceable>tbl_name</replaceable> ;
+SET GLOBAL repair_cache.key_buffer_size = 0;
 </programlisting>
 
       <para>

@@ -8090,10 +8099,10 @@
       </para>
 
 <programlisting>
-SET @old_key_buffer_size = @@global.key_buffer_size;
-SET GLOBAL key_buffer_size = 1024*1024*1024;
+SET @old_myisam_sort_buffer_size = @@global.myisam_sort_buffer_size;
+SET GLOBAL myisam_sort_buffer_size = 256*1024*1024;
 REPAIR TABLE tbl_name ;
-SET GLOBAL key_buffer_size = @old_key_buffer_size;
+SET GLOBAL myisam_sort_buffer_size = @old_myisam_sort_buffer_size;
 </programlisting>
 
       <para>


Modified: trunk/refman-5.1/programs-admin-util-core.xml
===================================================================
--- trunk/refman-5.1/programs-admin-util-core.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-5.1/programs-admin-util-core.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 1, Lines Added: 8, Lines Deleted: 0; 768 bytes

@@ -455,6 +455,14 @@
       </para>
 
       <para>
+        You can also use the <literal role="stmt">CHECK TABLE</literal>
+        and <literal role="stmt">REPAIR TABLE</literal> statements to
+        check and repair <literal>MyISAM</literal> tables. See
+        <xref linkend="check-table"/>, and
+        <xref linkend="repair-table"/>.
+      </para>
+
+      <para>
         The use of <command>myisamchk</command> with partitioned tables
         is not supported.
       </para>


Modified: trunk/refman-5.1/sql-syntax-server-administration.xml
===================================================================
--- trunk/refman-5.1/sql-syntax-server-administration.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-5.1/sql-syntax-server-administration.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 1, Lines Added: 3, Lines Deleted: 1; 765 bytes

@@ -10402,7 +10402,9 @@
       <para>
         The <literal role="stmt">CACHE INDEX</literal> statement assigns
         table indexes to a specific key cache. It is used only for
-        <literal>MyISAM</literal> tables.
+        <literal>MyISAM</literal> tables. After the indexes have been
+        assigned, they can be preloaded into the cache if desired with
+        <literal role="stmt">LOAD INDEX INTO CACHE</literal>.
       </para>
 
       <para>


Modified: trunk/refman-5.5/optimization.xml
===================================================================
--- trunk/refman-5.5/optimization.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-5.5/optimization.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 2, Lines Added: 20, Lines Deleted: 11; 2940 bytes

@@ -8163,28 +8163,37 @@
         <literal role="sysvar">key_buffer_size</literal>, you must take
         into account that the buffer is shared with those users. For
         example, if you set the <command>myisamchk</command>
-        <literal>key_buffer_size</literal> variable to 128MB, you must
+        <literal>key_buffer_size</literal> variable to 128MB, you could
         set the corresponding
         <literal role="sysvar">key_buffer_size</literal> system variable
         larger than that (if it is not already set larger), to allow for
-        key buffer use by activity in other sessions.
+        key buffer use by activity in other sessions. However, changing
+        the global key buffer size invalidates the buffer, causing
+        increased disk I/O and slowdown for other sessions. An
+        alternative that avoids this problem is to use a separate key
+        cache, assign to it the indexes from the table to be repaired,
+        and deallocate it when the repair is complete. See
+        <xref linkend="multiple-key-caches"/>.
       </para>
 
       <para>
         Based on the preceding remarks, a <literal role="stmt">REPAIR
         TABLE</literal> operation can be done as follows to use settings
-        similar to the <command>myisamchk</command> command. Here the
-        server key buffer is set to 1GB and the file system containing
-        the index file is assumed to have at least 100GB free disk
-        space.
+        similar to the <command>myisamchk</command> command. Here a
+        separate 128MB key buffer is allocated and the file system
+        containing the index file is assumed to have at least 100GB free
+        disk space.
       </para>
 
 <programlisting>
 SET SESSION myisam_sort_buffer_size = 256*1024*1024;
 SET SESSION read_buffer_size = 64*1024*1024;
-SET GLOBAL key_buffer_size = 1024*1024*1024;
 SET GLOBAL myisam_max_sort_file_size = 100*1024*1024*1024;
-REPAIR TABLE tbl_name ;
+SET GLOBAL repair_cache.key_buffer_size = 128*1024*1024;
+CACHE INDEX <replaceable>tbl_name</replaceable> IN repair_cache;
+LOAD INDEX INTO CACHE <replaceable>tbl_name</replaceable>;
+REPAIR TABLE <replaceable>tbl_name</replaceable> ;
+SET GLOBAL repair_cache.key_buffer_size = 0;
 </programlisting>
 
       <para>

@@ -8196,10 +8205,10 @@
       </para>
 
 <programlisting>
-SET @old_key_buffer_size = @@global.key_buffer_size;
-SET GLOBAL key_buffer_size = 1024*1024*1024;
+SET @old_myisam_sort_buffer_size = @@global.myisam_sort_buffer_size;
+SET GLOBAL myisam_sort_buffer_size = 256*1024*1024;
 REPAIR TABLE tbl_name ;
-SET GLOBAL key_buffer_size = @old_key_buffer_size;
+SET GLOBAL myisam_sort_buffer_size = @old_myisam_sort_buffer_size;
 </programlisting>
 
       <para>


Modified: trunk/refman-5.5/programs-admin-util-core.xml
===================================================================
--- trunk/refman-5.5/programs-admin-util-core.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-5.5/programs-admin-util-core.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 1, Lines Added: 8, Lines Deleted: 0; 768 bytes

@@ -455,6 +455,14 @@
       </para>
 
       <para>
+        You can also use the <literal role="stmt">CHECK TABLE</literal>
+        and <literal role="stmt">REPAIR TABLE</literal> statements to
+        check and repair <literal>MyISAM</literal> tables. See
+        <xref linkend="check-table"/>, and
+        <xref linkend="repair-table"/>.
+      </para>
+
+      <para>
         The use of <command>myisamchk</command> with partitioned tables
         is not supported.
       </para>


Modified: trunk/refman-5.5/sql-syntax-server-administration.xml
===================================================================
--- trunk/refman-5.5/sql-syntax-server-administration.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-5.5/sql-syntax-server-administration.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 1, Lines Added: 3, Lines Deleted: 1; 763 bytes

@@ -9839,7 +9839,9 @@
       <para>
         The <literal role="stmt">CACHE INDEX</literal> statement assigns
         table indexes to a specific key cache. It is used only for
-        <literal>MyISAM</literal> tables.
+        <literal>MyISAM</literal> tables. After the indexes have been
+        assigned, they can be preloaded into the cache if desired with
+        <literal role="stmt">LOAD INDEX INTO CACHE</literal>.
       </para>
 
       <para>


Modified: trunk/refman-6.0/optimization.xml
===================================================================
--- trunk/refman-6.0/optimization.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-6.0/optimization.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 2, Lines Added: 20, Lines Deleted: 11; 2940 bytes

@@ -9322,28 +9322,37 @@
         <literal role="sysvar">key_buffer_size</literal>, you must take
         into account that the buffer is shared with those users. For
         example, if you set the <command>myisamchk</command>
-        <literal>key_buffer_size</literal> variable to 128MB, you must
+        <literal>key_buffer_size</literal> variable to 128MB, you could
         set the corresponding
         <literal role="sysvar">key_buffer_size</literal> system variable
         larger than that (if it is not already set larger), to allow for
-        key buffer use by activity in other sessions.
+        key buffer use by activity in other sessions. However, changing
+        the global key buffer size invalidates the buffer, causing
+        increased disk I/O and slowdown for other sessions. An
+        alternative that avoids this problem is to use a separate key
+        cache, assign to it the indexes from the table to be repaired,
+        and deallocate it when the repair is complete. See
+        <xref linkend="multiple-key-caches"/>.
       </para>
 
       <para>
         Based on the preceding remarks, a <literal role="stmt">REPAIR
         TABLE</literal> operation can be done as follows to use settings
-        similar to the <command>myisamchk</command> command. Here the
-        server key buffer is set to 1GB and the file system containing
-        the index file is assumed to have at least 100GB free disk
-        space.
+        similar to the <command>myisamchk</command> command. Here a
+        separate 128MB key buffer is allocated and the file system
+        containing the index file is assumed to have at least 100GB free
+        disk space.
       </para>
 
 <programlisting>
 SET SESSION myisam_sort_buffer_size = 256*1024*1024;
 SET SESSION read_buffer_size = 64*1024*1024;
-SET GLOBAL key_buffer_size = 1024*1024*1024;
 SET GLOBAL myisam_max_sort_file_size = 100*1024*1024*1024;
-REPAIR TABLE tbl_name ;
+SET GLOBAL repair_cache.key_buffer_size = 128*1024*1024;
+CACHE INDEX <replaceable>tbl_name</replaceable> IN repair_cache;
+LOAD INDEX INTO CACHE <replaceable>tbl_name</replaceable>;
+REPAIR TABLE <replaceable>tbl_name</replaceable> ;
+SET GLOBAL repair_cache.key_buffer_size = 0;
 </programlisting>
 
       <para>

@@ -9355,10 +9364,10 @@
       </para>
 
 <programlisting>
-SET @old_key_buffer_size = @@global.key_buffer_size;
-SET GLOBAL key_buffer_size = 1024*1024*1024;
+SET @old_myisam_sort_buffer_size = @@global.myisam_sort_buffer_size;
+SET GLOBAL myisam_sort_buffer_size = 256*1024*1024;
 REPAIR TABLE tbl_name ;
-SET GLOBAL key_buffer_size = @old_key_buffer_size;
+SET GLOBAL myisam_sort_buffer_size = @old_myisam_sort_buffer_size;
 </programlisting>
 
       <para>


Modified: trunk/refman-6.0/programs-admin-util-core.xml
===================================================================
--- trunk/refman-6.0/programs-admin-util-core.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-6.0/programs-admin-util-core.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 1, Lines Added: 8, Lines Deleted: 0; 768 bytes

@@ -455,6 +455,14 @@
       </para>
 
       <para>
+        You can also use the <literal role="stmt">CHECK TABLE</literal>
+        and <literal role="stmt">REPAIR TABLE</literal> statements to
+        check and repair <literal>MyISAM</literal> tables. See
+        <xref linkend="check-table"/>, and
+        <xref linkend="repair-table"/>.
+      </para>
+
+      <para>
         The use of <command>myisamchk</command> with partitioned tables
         is not supported.
       </para>


Modified: trunk/refman-6.0/sql-syntax-server-administration.xml
===================================================================
--- trunk/refman-6.0/sql-syntax-server-administration.xml	2010-07-12 14:00:04 UTC (rev 21659)
+++ trunk/refman-6.0/sql-syntax-server-administration.xml	2010-07-12 15:04:54 UTC (rev 21660)
Changed blocks: 1, Lines Added: 3, Lines Deleted: 1; 765 bytes

@@ -10512,7 +10512,9 @@
       <para>
         The <literal role="stmt">CACHE INDEX</literal> statement assigns
         table indexes to a specific key cache. It is used only for
-        <literal>MyISAM</literal> tables.
+        <literal>MyISAM</literal> tables. After the indexes have been
+        assigned, they can be preloaded into the cache if desired with
+        <literal role="stmt">LOAD INDEX INTO CACHE</literal>.
       </para>
 
       <para>


Thread
svn commit - mysqldoc@docsrva: r21660 - in trunk: . refman-4.1 refman-5.0 refman-5.1 refman-5.5 refman-6.0paul.dubois12 Jul