Below is the list of changes that have just been committed into a local
mysqldoc repository of jon. When jon does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://www.mysql.com/doc/I/n/Installing_source_tree.html
ChangeSet
1.3195 05/08/08 04:01:23 jon@stripped +11 -0
Remaining RefMan-4.1 Installation
chapter edits.
Updated 4.1 removed-sections and
Status files.
Added back missing file from 5.0 subtree.
Misc fixes.
refman-5.0/deleted-sections.txt
1.1 05/08/08 04:01:21 jon@stripped +344 -0
Adding back missing file.
refman/titles.ent
1.47 05/08/08 04:01:21 jon@stripped +1 -1
Fixed release date for 5.0.10.
refman-common/news-5.0.xml
1.25 05/08/08 04:01:21 jon@stripped +3 -3
Fixed typo.
refman-common/news-4.1.xml
1.17 05/08/08 04:01:21 jon@stripped +1 -1
Fixed typo.
refman-5.0/titles.ent
1.2 05/08/08 04:01:21 jon@stripped +3 -2
Added missing entity.
refman-5.0/installing.xml
1.4 05/08/08 04:01:21 jon@stripped +0 -34
Cut reference to OpenBSD-2.8
(archaeological interest only).
refman-5.0/deleted-sections.txt
1.0 05/08/08 04:01:21 jon@stripped +0 -0
BitKeeper file /home/jon/bk/mysqldoc/refman-5.0/deleted-sections.txt
refman-4.1/removed-sections.txt
1.9 05/08/08 04:01:21 jon@stripped +6 -0
Updating...
refman-4.1/news.xml
1.67 05/08/08 04:01:20 jon@stripped +0 -8
Cut references to old news sections.
refman-4.1/mysql-database-administration.xml
1.33 05/08/08 04:01:20 jon@stripped +2 -1
COmmented out reference to cut section.
refman-4.1/installing.xml
1.24 05/08/08 04:01:19 jon@stripped +514 -1245
Reamining RefMan-4.1 edits.
refman-4.1/Status
1.3 05/08/08 04:01:19 jon@stripped +1 -1
Updating...
# This is a BitKeeper patch. What follows are the unified diffs for the
# set of deltas contained in the patch. The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User: jon
# Host: gigan.
# Root: /home/jon/bk/mysqldoc
--- 1.2/refman-4.1/Status 2005-08-06 00:42:03 +10:00
+++ 1.3/refman-4.1/Status 2005-08-08 04:01:19 +10:00
@@ -1,5 +1,6 @@
- 4.1 chapters that have been edited:
mysql-database-administration
+ installing
- 4.1 chapters awaiting major edits:
preface
@@ -14,7 +15,6 @@
storage-engines
replication
environment-variables
- installing
using-mysql-programs
client-side-scripts
innodb
--- 1.8/refman-4.1/removed-sections.txt 2005-08-06 00:42:03 +10:00
+++ 1.9/refman-4.1/removed-sections.txt 2005-08-08 04:01:21 +10:00
@@ -90,6 +90,12 @@
# from installing.xml:
upgrading-from-4-1
+upgrading-from-3-22
+upgrading-from-3-21
+upgrading-from-3-20
+downgrading-to-4-1
+open-bsd-2-8
+beos
# ----------------------------------------------------------------------
--- New file ---
+++ refman-5.0/deleted-sections.txt 05/08/08 04:01:21
# this file lists IDs of sections existing in the old combined RefMan
# that have been deleted from RefMan-5.0
# from introduction.xml:
mysql-4-0-nutshell
mysql-4-1-nutshell
nutshell-4-1-features
todo-mysql-5-0
# ----------------------------------------------------------------------
# from installing.xml:
upgrading-from-4-0
upgrading-from-3-23
upgrading-from-3-22
upgrading-from-3-21
upgrading-from-3-20
downgrading-to-4-0
open-bsd-2-8
# from news.xml:
news-4-1-x
news-4-1-13
news-4-1-12
news-4-1-11
news-4-1-10
news-4-1-9
news-4-1-8
news-4-1-7
news-4-1-6
news-4-1-5
news-4-1-4
news-4-1-3
news-4-1-2
news-4-1-1
news-4-1-0
news 4-0-x
news 4-0-25
news 4-0-24
news 4-0-23
news 4-0-22
news 4-0-21
news 4-0-20
news 4-0-19
news 4-0-18
news 4-0-17
news 4-0-16
news 4-0-15
news 4-0-14
news 4-0-13
news 4-0-12
news 4-0-11
news 4-0-10
news 4-0-9
news 4-0-8
news 4-0-7
news 4-0-6
news 4-0-5
news 4-0-4
news 4-0-3
news 4-0-2
news 4-0-1
news 4-0-0
news 3-23-x
news 3-23-59
news 3-23-58
news 3-23-57
news 3-23-56
news 3-23-55
news 3-23-54
news 3-23-53
news 3-23-52
news 3-23-51
news 3-23-50
news 3-23-49
news 3-23-48
news 3-23-47
news 3-23-46
news 3-23-45
news 3-23-44
news 3-23-43
news 3-23-42
news 3-23-41
news 3-23-40
news 3-23-39
news 3-23-38
news 3-23-37
news 3-23-36
news 3-23-35
news 3-23-34
news 3-23-33
news 3-23-32
news 3-23-31
news 3-23-30
news 3-23-29
news 3-23-28
news 3-23-27
news 3-23-26
news 3-23-25
news 3-23-24
news 3-23-23
news 3-23-22
news 3-23-21
news 3-23-20
news 3-23-19
news 3-23-18
news 3-23-17
news 3-23-16
news 3-23-15
news 3-23-14
news 3-23-13
news 3-23-12
news 3-23-11
news 3-23-10
news 3-23-9
news 3-23-8
news 3-23-7
news 3-23-6
news 3-23-5
news 3-23-4
news 3-23-3
news 3-23-2
news 3-23-1
news 3-23-0
news 3-22-x
news 3-22-35
news 3-22-34
news 3-22-33
news 3-22-32
news 3-22-31
news 3-22-30
news 3-22-29
news 3-22-28
news 3-22-27
news 3-22-26
news 3-22-25
news 3-22-24
news 3-22-23
news 3-22-22
news 3-22-21
news 3-22-20
news 3-22-19
news 3-22-18
news 3-22-17
news 3-22-16
news 3-22-15
news 3-22-14
news 3-22-13
news 3-22-12
news 3-22-11
news 3-22-10
news 3-22-9
news 3-22-8
news 3-22-7
news 3-22-6
news 3-22-5
news 3-22-4
news 3-22-3
news 3-22-2
news 3-22-1
news 3-22-0
news 3-21-x
news 3-21-33
news 3-21-32
news 3-21-31
news 3-21-30
news 3-21-29
news 3-21-28
news 3-21-27
news 3-21-26
news 3-21-25
news 3-21-24
news 3-21-23
news 3-21-22
news 3-21-21
news 3-21-20
news 3-21-19
news 3-21-18
news 3-21-17
news 3-21-16
news 3-21-15
news 3-21-14b
news 3-21-14a
news 3-21-13
news 3-21-12
news 3-21-11
news 3-21-10
news 3-21-9
news 3-21-8
news 3-21-7
news 3-21-6
news 3-21-5
news 3-21-4
news 3-21-3
news 3-21-2
news 3-21-1
news 3-21-0
news 3-20-x
news 3-20-18
news 3-20-17
news 3-20-16
news 3-20-15
news 3-20-14
news 3-20-13
news 3-20-12
news 3-20-11
news 3-20-10
news 3-20-9
news 3-20-8
news 3-20-7
news 3-20-6
news 3-20-5
news 3-20-4
news 3-20-3
news 3-20-2
news 3-20-1
news 3-20-0
news 3-19-x
news 3-19-5
news 3-19-4
news 3-19-3
innodb-change-history
innodb-news-4-1-14
innodb-news-4-1-13
innodb-news-4-1-12
innodb-news-4-1-11
innodb-news-4-1-10
innodb-news-4-1-9
innodb-news-4-1-8
innodb-news-4-1-7
innodb-news-4-1-6
innodb-news-4-1-5
innodb-news-4-1-4
innodb-news-4-1-3
innodb-news-4-1-2
innodb-news-4-1-1
innodb-news-4-1-0
innodb-news-4-0-21
innodb-news-4-0-20
innodb-news-4-0-19
innodb-news-4-0-18
innodb-news-4-0-17
innodb-news-4-0-16
innodb-news-4-0-15
innodb-news-4-0-14
innodb-news-4-0-13
innodb-news-4-0-12
innodb-news-4-0-11
innodb-news-4-0-10
innodb-news-4-0-9
innodb-news-4-0-8
innodb-news-4-0-7
innodb-news-4-0-6
innodb-news-4-0-5
innodb-news-4-0-4
innodb-news-4-0-3
innodb-news-4-0-2
innodb-news-4-0-1
innodb-news-3-23-58
innodb-news-3-23-57
innodb-news-3-23-56
innodb-news-3-23-55
innodb-news-3-23-54
innodb-news-3-23-53
innodb-news-3-23-52
innodb-news-3-23-51
innodb-news-3-23-50
innodb-news-3-23-49
innodb-news-3-23-48
innodb-news-3-23-47
innodb-news-3-23-46
innodb-news-3-23-45
innodb-news-3-23-44
innodb-news-3-23-43
innodb-news-3-23-42
innodb-news-3-23-41
innodb-news-3-23-40
innodb-news-3-23-39
innodb-news-3-23-38
mysql-cluster-news-4-1-13
mysql-cluster-news-4-1-12
mysql-cluster-news-4-1-11
mysql-cluster-news-4-1-10
mysql-cluster-news-4-1-9
mysql-cluster-news-4-1-8
mysql-cluster-news-4-1-7
mysql-cluster-news-4-1-6
mysql-cluster-news-4-1-5
mysql-cluster-news-4-1-4
mysql-cluster-news-4-1-3
# from charset.xml:
charset-upgrading
charset-map
charset-conversion
# from storage-engine.xml:
isam-storage-engine
# from innodb.xml:
innodb-in-mysql-3-23
# from mysql-database-administration.xml:
password-hashing-4-1-0
update-log
# from column-types.xml:
timestamp-pre-4-1
# from todo.xml (chapter deleted):
todo-mysql-5-0
todo-mysql-5-1
todo-future
todo-sometime
todo-unplanned
# from replication.xml:
replication-upgrade-4-0
beos (It's dead, Jim.)
# from client-side-scripts.xml:
mysqlcc
--- 1.16/refman-common/news-4.1.xml 2005-08-07 12:16:35 +10:00
+++ 1.17/refman-common/news-4.1.xml 2005-08-08 04:01:21 +10:00
@@ -4963,7 +4963,7 @@
<listitem>
<para>
Now implicit access to system time zone description tables
- (which happens when you set <literal>time_zone</literal>
+ (which happens when you set the <literal>time_zone</literal>
variable or use <literal>CONVERT_TZ()</literal> function) does
not require any privileges. (Bug #6116)
</para>
--- 1.24/refman-common/news-5.0.xml 2005-08-07 12:19:10 +10:00
+++ 1.25/refman-common/news-5.0.xml 2005-08-08 04:01:21 +10:00
@@ -3880,8 +3880,8 @@
<listitem>
<para>
- The way the time zone information is stored into the binary
- log was changed, so that it's now possible to have a
+ The way the time zone information is stored in the binary
+ log was changed, so that it is now possible to have a
replication master and slave running with different global
time zones. A drawback is that replication from 5.0.4 masters
to pre-5.0.4 slaves is impossible.
@@ -4865,7 +4865,7 @@
<listitem>
<para>
- The MySQL server now aborts when started with option
+ The MySQL server now aborts when started with the option
<option>--log-bin-index</option> and without
<option>--log-bin</option>, and when started with
<option>--log-slave-updates</option> and without
--- 1.23/refman-4.1/installing.xml 2005-08-07 20:06:57 +10:00
+++ 1.24/refman-4.1/installing.xml 2005-08-08 04:01:19 +10:00
@@ -710,7 +710,7 @@
and that all new code has been tested. No major new
features that could cause corruption in old code are
added. There should be no known critical bugs. A version
- changes from alpha to beta when there haven't been any
+ changes from alpha to beta when there have not been any
reported fatal bugs within an alpha version for at least a
month and we have no plans to add any features that could
make any old command unreliable.
@@ -875,7 +875,7 @@
<para>
The extended MySQL binary distribution is marked with the
- <literal>-max</literal> suffix and is configured with the
+ <option>-max</option> suffix and is configured with the
same options as <command>mysqld-max</command>. See
<xref linkend="mysqld-max"/>.
</para>
@@ -1993,7 +1993,7 @@
add <option>--with-debug</option> or
<option>--with-debug=full</option> to the preceding
<command>configure</command> commands and remove any
- <literal>-fomit-frame-pointer</literal> options.
+ <option>-fomit-frame-pointer</option> options.
</para>
</section>
@@ -4322,8 +4322,8 @@
<command>mysqld-opt</command> is a better general-use server
choice to make instead if you do not need debugging support and
do not want the maximal feature set offered by the
- <literal>-max</literal> servers or named pipe support offered by
- the <literal>-nt</literal> servers.
+ <option>-max</option> servers or named pipe support offered by
+ the <option>-nt</option> servers.
</para>
<para>
@@ -5884,7 +5884,7 @@
Server RPM files were called
<literal>MySQL-<replaceable>VERSION</replaceable>.i386.rpm</literal>
before MySQL 4.0.10. That is, they did not have
- <literal>-server</literal> in the name.
+ <option>-server</option> in the name.
</para>
</listitem>
@@ -6122,9 +6122,9 @@
</para>
<para>
- To actually install the MySQL PKG file, double-click on the
- package icon. This launches the Mac OS X Package Installer, which
- guides you through the installation of MySQL.
+ To install the MySQL PKG file, double-click on the package icon.
+ This launches the Mac OS X Package Installer, which guides you
+ through the installation of MySQL.
</para>
<para>
@@ -6137,12 +6137,12 @@
</programlisting>
<para>
- If this error occurs, simply click the <literal>Go Back</literal>
- button once to return to the previous screen. Then click
- <literal>Continue</literal> to advance to the destination disk
- selection again, and you should be able to choose the destination
- disk correctly. We have reported this bug to Apple and it is
- investigating this problem.
+ If this error occurs, simply click the
+ <guibutton>Go Back</guibutton> button once to return to the
+ previous screen. Then click <guibutton>Continue</guibutton> to
+ advance to the destination disk selection again, and you should be
+ able to choose the destination disk correctly. We have reported
+ this bug to Apple and it is investigating this problem.
</para>
<para>
@@ -6152,7 +6152,7 @@
<filename>/usr/local/mysql</filename>, pointing to the new
location. If a directory named
<filename>/usr/local/mysql</filename> exists, it is renamed to
- <filename>/usr/local/mysql.bak</filename> first. Additionally, the
+ <filename>/usr/local/mysql.bak</filename> first. In addition, the
installer creates the grant tables in the <literal>mysql</literal>
database by executing <command>mysql_install_db</command> after
the installation.
@@ -6215,10 +6215,10 @@
<para>
This manual section covers the installation of the official MySQL
Mac OS X PKG only. Make sure to read Apple's help information
- about installing MySQL: Run the <quote>Help View</quote>
- application, select <quote>Mac OS X Server</quote> help, do a
- search for <quote>MySQL,</quote> and read the item entitled
- <quote>Installing MySQL.</quote>
+ about installing MySQL: Run the <command>Help View</command>
+ application, select <guimenuitem>Mac OS X Server</guimenuitem>
+ help, search for <quote>MySQL</quote>, and read the item entitled
+ <quote>Installing MySQL</quote>.
</para>
<!-- This instance of safe_mysqld should be left unchanged -->
@@ -6378,7 +6378,7 @@
</para>
<para>
- To use your existing databases with the new installation, you'll
+ To use your existing databases with the new installation, you will
need to copy the contents of the old data directory to the new
data directory. Make sure that neither the old server nor the new
one is running when you do this. After you have copied over the
@@ -6413,7 +6413,7 @@
<para>
MySQL for NetWare is compiled using a combination of
- <literal>Metrowerks CodeWarrior for NetWare</literal> and special
+ <command>Metrowerks CodeWarrior for NetWare</command> and special
cross-compilation versions of the GNU autotools.
</para>
@@ -6620,7 +6620,7 @@
<para>
If there was an existing installation of MySQL on the server, be
sure to check for existing MySQL startup commands in
- <literal>autoexec.ncf</literal>, and edit or delete them as
+ <filename>autoexec.ncf</filename>, and edit or delete them as
necessary.
</para>
@@ -6631,9 +6631,10 @@
using the instructions in <xref linkend="post-installation"/>.
</para>
-<!-- TODO: rename this node. "Installing binary" should be used for the -->
-
-<!-- general binary installation section -->
+<!--
+ TODO: rename this node. "Installing binary" should be used for the
+ general binary installation section.
+-->
</section>
@@ -6690,7 +6691,7 @@
<listitem>
<para>
- GNU <literal>gunzip</literal> to uncompress the distribution.
+ GNU <command>gunzip</command> to uncompress the distribution.
</para>
</listitem>
@@ -6711,8 +6712,6 @@
</itemizedlist>
-<!-- texi2html fails to split chapters if I use strong for all of this. -->
-
<para>
If you run into problems, <emphasis>please always use
<command>mysqlbug</command></emphasis> when posting questions to a
@@ -6836,7 +6835,7 @@
<para>
The <command>tar</command> command creates a directory named
<filename>mysql-<replaceable>VERSION</replaceable>-<replaceable>OS</replaceable></filename>.
- The <literal>ln</literal> command makes a symbolic link to
+ The <command>ln</command> command makes a symbolic link to
that directory. This lets you refer more easily to the
installation directory as
<filename>/usr/local/mysql</filename>.
@@ -6844,7 +6843,7 @@
<para>
With GNU <command>tar</command>, no separate invocation of
- <literal>gunzip</literal> is necessary. You can replace the
+ <command>gunzip</command> is necessary. You can replace the
first line with the following alternative command to
uncompress and extract the distribution:
</para>
@@ -6865,7 +6864,7 @@
<para>
You can find several files and subdirectories in the
- <literal>mysql</literal> directory. The most important for
+ <filename>mysql</filename> directory. The most important for
installation purposes are the <filename>bin</filename> and
<filename>scripts</filename> subdirectories.
</para>
@@ -6914,7 +6913,7 @@
<listitem>
<para>
- If you haven't installed MySQL before, you must create the
+ If you have not installed MySQL before, you must create the
MySQL grant tables:
</para>
@@ -6969,10 +6968,11 @@
<para>
If you would like MySQL to start automatically when you boot
your machine, you can copy
- <literal>support-files/mysql.server</literal> to the location
- where your system has its startup files. More information can
- be found in the <literal>support-files/mysql.server</literal>
- script itself and in <xref linkend="automatic-start"/>.
+ <filename>support-files/mysql.server</filename> to the
+ location where your system has its startup files. More
+ information can be found in the
+ <filename>mysql.server</filename> script itself, and in
+ <xref linkend="automatic-start"/>.
</para>
<indexterm type="concept">
@@ -7076,11 +7076,11 @@
<primary>installation overview</primary>
</indexterm>
-<!-- TODO: Needs intro to mention both Unix and Windows, and how to proceed. -->
-
-<!-- Need better outline here. Most of the Unix sections should go under -->
-
-<!-- a @subsection and be demoted to @subsubsection. -->
+<!--
+ TODO: Needs intro to mention both Unix and Windows, and how to
+ proceed. Need better outline here. Most of the Unix sections
+ should go under a @subsection and be demoted to @subsubsection.
+-->
<para>
Before you proceed with the source installation, check first to
@@ -7099,7 +7099,7 @@
<command>tar</command> archives and have names of the form
<filename>mysql-<replaceable>VERSION</replaceable>.tar.gz</filename>,
where <replaceable>VERSION</replaceable> is a number like
- <literal>5.0.6-beta</literal>.
+ <literal>4.1.13</literal>.
</para>
<para>
@@ -7166,12 +7166,11 @@
<para>
If you are using a version of <command>gcc</command> recent enough
- to understand the <literal>-fno-exceptions</literal> option, it is
+ to understand the <option>-fno-exceptions</option> option, it is
<emphasis>very important</emphasis> that you use this option.
Otherwise, you may compile a binary that crashes randomly. We also
- recommend that you use <literal>-felide-constructors</literal> and
- <literal>-fno-rtti</literal> along with
- <literal>-fno-exceptions</literal>. When in doubt, do the
+ recommend that you also use <option>-felide-constructors</option>
+ and <option>-fno-rtti</option> as well. When in doubt, do the
following:
</para>
@@ -7185,9 +7184,7 @@
<para>
On most systems, this gives you a fast and stable binary.
</para>
-
-<!-- texi2html fails to split chapters if I use strong for all of this. -->
-
+
<para>
If you run into problems, <emphasis>please always use
<command>mysqlbug</command></emphasis> when posting questions to a
@@ -7282,8 +7279,8 @@
</para>
<para>
- You might want to call the user and group something else
- instead of <literal>mysql</literal>. If so, substitute the
+ You might want to call the user and group something other
+ than <literal>mysql</literal>. If so, substitute the
appropriate name in the following steps.
</para>
</listitem>
@@ -7318,7 +7315,7 @@
<para>
With GNU <command>tar</command>, no separate invocation of
- <literal>gunzip</literal> is necessary. You can use the
+ <command>gunzip</command> is necessary. You can use the
following alternative command to uncompress and extract the
distribution:
</para>
@@ -7407,7 +7404,7 @@
<para>
If you want to configure support for
<literal>InnoDB</literal> tables, you should edit the
- <literal>/etc/my.cnf</literal> file, remove the
+ <filename>/etc/my.cnf</filename> file, removing the
<literal>#</literal> character before the option lines that
start with <literal>innodb_...</literal>, and modify the
option values to be what you want. See
@@ -7428,7 +7425,7 @@
<listitem>
<para>
- If you haven't installed MySQL before, you must create the
+ If you have not installed MySQL before, you must create the
MySQL grant tables:
</para>
@@ -7460,7 +7457,7 @@
Change the ownership of program binaries to
<literal>root</literal> and ownership of the data directory
to the user that you run <command>mysqld</command> as.
- Assuming that you are located in the installation directory
+ Assuming that you are in the installation directory
(<filename>/usr/local/mysql</filename>), the commands look
like this:
</para>
@@ -7484,11 +7481,10 @@
<para>
If you would like MySQL to start automatically when you boot
your machine, you can copy
- <literal>support-files/mysql.server</literal> to the
+ <filename>support-files/mysql.server</filename> to the
location where your system has its startup files. More
- information can be found in the
- <literal>support-files/mysql.server</literal> script itself
- and in <xref linkend="automatic-start"/>.
+ information can be found in the script itself, and in
+ <xref linkend="automatic-start"/>.
</para>
<indexterm type="concept">
@@ -7929,7 +7925,8 @@
<option>--disable-shared</option> option to
<command>configure</command>. In this case,
<command>configure</command> does not build a shared
- <filename>libmysqlclient.so.#</filename> library.
+ <filename>libmysqlclient.so.<replaceable>#</replaceable></filename>
+ library.
</para>
<indexterm type="concept">
@@ -8079,12 +8076,6 @@
</para>
</listitem>
- <listitem>
- <para>
- <emphasis role="bold">5.0 series</emphasis>: 5.0.4
- </para>
- </listitem>
-
</itemizedlist>
<para>
@@ -8092,9 +8083,11 @@
counts to be stored using <literal>unsigned long
long</literal> rather than <literal>unsigned long</literal>.
What this does is to allow tables to hold up to
- approximately 1.844E+19 ((2^32)^2) rows rather than 2^32
- (~4.295E+09) rows. Previously it was necessary to pass
- <literal>-DBIG_TABLES</literal> to the compiler manually in
+ approximately 1.844E+19
+ ((2<superscript>32</superscript>)<superscript>2</superscript>)
+ rows rather than 2<superscript>32</superscript> (~4.295E+09)
+ rows. Previously it was necessary to pass
+ <option>-DBIG_TABLES</option> to the compiler manually in
order to enable this feature.
</para>
</listitem>
@@ -8125,10 +8118,10 @@
<para>
<emphasis role="bold">Caution</emphasis>: You should read this
- section only if you are interested in helping us test our new
- code. If you just want to get MySQL up and running on your
- system, you should use a standard release distribution (either a
- binary or source distribution).
+ section only if you are interested in helping us test new code.
+ If you just want to get MySQL up and running on your system, you
+ should use a standard release distribution (either a binary or
+ source distribution).
</para>
<para>
@@ -8247,23 +8240,14 @@
</programlisting>
<para>
- To copy the 5.0 branch, use this command:
- </para>
-
-<programlisting>
-shell> sfioball -r+ bk://mysql.bkbits.net/mysql-5.0 mysql-5.0
-</programlisting>
-
- <para>
Normally, you do not have to build the documentation
- yourself, because we're providing it in various formats on
+ yourself, because we provide it in various formats on
<ulink url="http://dev.mysql.com/doc/"/>. The formats you
- can download there (HTML, PDF, etc.) are being built on a
- daily basis, so you gain little by creating them yourself
- from the DocBook XML base format in the
- <literal>mysqldoc</literal> tree. If you would like to copy
- the documentation repository, anyway, use the following
- command:
+ can download there (HTML, PDF, etc.) are built on a daily
+ basis, so you gain little by creating them yourself from the
+ DocBook XML base format in the <literal>mysqldoc</literal>
+ tree. If you would like to copy the documentation repository,
+ use the following command:
</para>
<programlisting>
@@ -8273,14 +8257,13 @@
<para>
In the preceding examples, the source tree is set up in the
<filename>mysql-3.23/</filename>,
- <filename>mysql-4.0/</filename>,
- <filename>mysql-4.1/</filename>, or
- <filename>mysql-5.0/</filename> subdirectory of your current
+ <filename>mysql-4.0/</filename>, or
+ <filename>mysql-4.1/</filename> subdirectory of your current
directory.
</para>
<para>
- If you are behind a firewall and can only initiate HTTP
+ If you are behind a firewall and can initiate only HTTP
connections, you can also use BitKeeper via HTTP.
</para>
@@ -8292,14 +8275,14 @@
<!--
SH: Check if bk:// can be substituted by http:// with the free client.
- -->
+-->
<programlisting>
shell> export http_proxy="http://your.proxy.server:8080/"
</programlisting>
<para>
- Replace the <literal>bk://</literal> with
+ Replace <literal>bk://</literal> with
<literal>http://</literal> when copying a repository.
Example:
</para>
@@ -8318,11 +8301,11 @@
<listitem>
<para>
To update the local copy of a repository, use this command
- (the example is for updating the 5.0 branch):
+ (the example is for updating the 4.1 branch):
</para>
<programlisting>
-shell> update bk://mysql.bkbits.net/mysql-5.0
+shell> update bk://mysql.bkbits.net/mysql-4.1
</programlisting>
</listitem>
@@ -8343,8 +8326,8 @@
<para>
Fortunately, a large number of operating systems ship with
the GNU toolchain preinstalled or supply installable
- packages of these. In any case, they can also be downloaded
- from the following locations:
+ packages of these. They can also be downloaded from the
+ following locations:
</para>
<itemizedlist>
@@ -8382,9 +8365,9 @@
</itemizedlist>
<para>
- If you are trying to configure MySQL 4.1 or later, you also
- need GNU <command>bison</command> 1.75 or later. Older
- versions of <command>bison</command> may report this error:
+ If you are trying to configure MySQL 4.1, you also need GNU
+ <command>bison</command> 1.75 or later. Older versions of
+ <command>bison</command> may report this error:
</para>
<programlisting>
@@ -8454,7 +8437,7 @@
<para>
A collection of our standard configuration scripts is
- located in the <filename>BUILD/</filename> subdirectory. You
+ located in the <filename>BUILD</filename> subdirectory. You
may find it more convenient to use the
<filename>BUILD/compile-pentium-debug</filename> script than
the preceding set of shell commands. To compile on a
@@ -8493,7 +8476,7 @@
you have installed the latest versions of the required GNU
tools, and they crash trying to process our configuration
files, please report that also. However, if you execute
- <literal>aclocal</literal> and get a <literal>command not
+ <command>aclocal</command> and get a <literal>command not
found</literal> error or a similar problem, do not report
it. Instead, make sure that all the necessary tools are
installed and that your <literal>PATH</literal> variable is
@@ -8504,8 +8487,8 @@
<listitem>
<para>
After the initial copying of the repository
- (<literal>sfioball</literal>) to obtain the source tree, you
- should update the repository (<literal>update</literal>)
+ (<command>sfioball</command>) to obtain the source tree, you
+ should update the repository (<command>update</command>)
periodically to get updates.
</para>
</listitem>
@@ -8520,12 +8503,12 @@
<command>sfioball</command> command to extract two
particular revisions of the source tree, then use an
external <command>diff</command> command to compare them. If
- you see some funny diffs or code that you have a question
- about, do not hesitate to send email to the MySQL
+ you see diffs or code that you have a question about, do not
+ hesitate to send email to the MySQL
<literal>internals</literal> mailing list. See
- <xref linkend="mailing-list"/>. Also, if you think you have
- a better idea on how to do something, send an email message
- to the same address with a patch.
+ <xref linkend="mailing-list"/>. If you think you have a
+ better idea on how to do something, send an email message to
+ the same address with a patch.
</para>
</listitem>
@@ -8541,8 +8524,8 @@
<para>
You can also browse changesets, comments, and source code
- online. For example, to browse this information for MySQL 5.0,
- go to <ulink url="http://mysql.bkbits.net:8080/mysql-5.0"/>.
+ online. For example, to browse this information for MySQL 4.1,
+ go to <ulink url="http://mysql.bkbits.net:8080/mysql-4.1"/>.
</para>
</section>
@@ -8706,9 +8689,9 @@
</programlisting>
<para>
- This option causes <literal>-fno-inline</literal> to be
+ This option causes <option>-fno-inline</option> to be
added to the compile line if you are using
- <command>gcc</command> and <literal>-O0</literal> if you are
+ <command>gcc</command> and <option>-O0</option> if you are
using something else. You should try the
<option>--with-low-memory</option> option even if you have
so much memory and swap space that you think you cannot
@@ -8723,7 +8706,7 @@
<para>
By default, <command>configure</command> picks
<command>c++</command> as the compiler name and GNU
- <command>c++</command> links with <literal>-lg++</literal>.
+ <command>c++</command> links with <option>-lg++</option>.
If you are using <command>gcc</command>, that behavior can
cause problems during configuration such as this:
</para>
@@ -8758,7 +8741,7 @@
<command>g++</command> but not <literal>libg++</literal>, or
<literal>libstdc++</literal>. Take a look at the
<filename>config.log</filename> file. It should contain the
- exact reason why your C++ compiler didn't work. To work
+ exact reason why your C++ compiler did not work. To work
around these problems, you can use <command>gcc</command> as
your C++ compiler. Try setting the environment variable
<literal>CXX</literal> to <literal>"gcc -O3"</literal>. For
@@ -8839,10 +8822,9 @@
<listitem>
<para>
- If your compile fails with errors such as any of the
+ If your compilation fails with errors such as any of the
following, you must upgrade your version of
<command>make</command> to GNU <command>make</command>:
- </para>
<programlisting>
making all in mit-pthreads
@@ -8850,7 +8832,6 @@
Badly formed macro assignment
</programlisting>
- <para>
Or:
<programlisting>
@@ -8974,7 +8955,7 @@
<para>
If you get errors such as those shown here when compiling
<command>mysqld</command>, <command>configure</command>
- didn't correctly detect the type of the last argument to
+ did not correctly detect the type of the last argument to
<literal>accept()</literal>,
<literal>getsockname()</literal>, or
<literal>getpeername()</literal>:
@@ -9181,7 +9162,7 @@
MIT-pthreads is being used and use Unix socket connections
by default. Because Unix socket files do not work under
MIT-pthreads on some platforms, this means you need to use
- <literal>-h</literal> or <option>--host</option> when you
+ <option>-h</option> or <option>--host</option> when you
run client programs.
</para>
</listitem>
@@ -9214,8 +9195,8 @@
<para>
The solution to this is to kill the
<command>mysqld</command> server and restart it. This has
- only happened to us when we have forced down the server and
- done a restart immediately.
+ happened to us only when we forced the server to shut down
+ and then restarted it immediately.
</para>
</listitem>
@@ -9261,7 +9242,7 @@
<listitem>
<para>
- We haven't gotten <literal>readline</literal> to work with
+ We have not gotten <literal>readline</literal> to work with
MIT-pthreads. (This is not needed, but may be interesting for
someone.)
</para>
@@ -9326,9 +9307,9 @@
</itemizedlist>
<para>
- You'll also need a MySQL source distribution for Windows. There
- are two ways you can get a source distribution for MySQL version
- 4.1 and above:
+ You will also need a MySQL source distribution for Windows.
+ There are two ways you can get a source distribution for MySQL
+ version 4.1 and above:
</para>
<orderedlist>
@@ -9397,8 +9378,8 @@
<para>
<emphasis role="bold">Note</emphasis>: VC++ workspace files
for MySQL 4.1 and above are compatible with Microsoft Visual
- Studio 6.0 and above (7.0/.NET) editions and tested by MySQL
- AB staff before each release.
+ Studio 6.0 and above (7.0/.NET) editions and are tested by
+ MySQL AB staff before each release.
</para>
<para>
@@ -9430,8 +9411,8 @@
<listitem>
<para>
- In the <literal>File</literal> menu, select <literal>Open
- Workspace</literal>.
+ In the <guimenu>File</guimenu> menu, select
+ <guimenuitem>Open Workspace</guimenuitem>.
</para>
</listitem>
@@ -9444,31 +9425,34 @@
<listitem>
<para>
- From the <literal>Build</literal> menu, select the
- <literal>Set Active Configuration</literal> menu.
+ From the <guimenu></guimenu><literal>Build</literal> menu,
+ select the <guisubmenu>Set Active
+ Configuration</guisubmenu> menu.
</para>
</listitem>
<listitem>
<para>
- Click over the screen selecting <literal>mysqld - Win32
- Debug</literal> and click OK.
+ Click over the screen selecting <guimenuitem>mysqld -
+ Win32 Debug</guimenuitem> and click
+ <guibutton>OK</guibutton>.
</para>
</listitem>
<listitem>
<para>
- Press <literal>F7</literal> to begin the build of the
+ Press <keycap>F7</keycap> to begin the build of the
debug server, libraries, and some client applications.
-
-<!-- @item -->
</para>
-
-<!-- When the compilation finishes, copy the libraries and the executables -->
-
-<!-- to a separate directory. -->
</listitem>
+<!--
+ @item
+
+ When the compilation finishes, copy the libraries and the
+ executables to a separate directory.
+-->
+
<listitem>
<para>
Compile the release versions that you want in the same
@@ -9485,8 +9469,8 @@
<filename>client_release</filename> and
<filename>lib_release</filename> directories. Note that if
you want to build both debug and release versions, you can
- select the <literal>Build All</literal> option from the
- <literal>Build</literal> menu.
+ select the <guimenuitem>Build All</guimenuitem> option
+ from the <guimenu>Build</guimenu> menu.
</para>
</listitem>
@@ -9516,8 +9500,8 @@
<filename>client_release</filename> or
<filename>client_debug</filename> directory, depending on
which server you want to use. The general server startup
- instructions are at
- <xref linkend="windows-installation"/>. You'll need to
+ instructions are in
+ <xref linkend="windows-installation"/>. You will need to
adapt the instructions appropriately if you want to use a
different base directory or data directory.
</para>
@@ -9630,7 +9614,7 @@
<para>
Set up and start the server in the same way as for the binary
- Windows distribution. See
+ Windows distribution. See
<xref linkend="windows-installation"/>.
</para>
@@ -9653,8 +9637,8 @@
<listitem>
<para>
Copy the BitKeeper source tree for MySQL (version 4.1 or
- above, as desired). For more information on how To copy
- the source tree, see the instructions at
+ above, as desired). For more information on how to copy
+ the source tree, see the instructions in
<xref linkend="installing-source-tree"/>.
</para>
</listitem>
@@ -9909,7 +9893,7 @@
<para>
Before setting up passwords, you might want to try running some
client programs to make sure that you can connect to the server
- and that it is operating properly. Make sure the server is
+ and that it is operating properly. Make sure that the server is
running (see <xref linkend="windows-server-first-start"/>), then
issue the following commands to verify that you can retrieve
information from the server. The output should be similar to
@@ -9958,17 +9942,19 @@
<title id='title-unix-post-installation'>&title-unix-post-installation;</title>
-<!-- TODO: Many of the testing commands actually are not specific to Unix, -->
-
-<!-- so they could be split out into a platform-neutral testing procedure... -->
+<!--
+ TODO: Many of the testing commands actually are not specific to
+ Unix, so they could be split out into a platform-neutral testing
+ procedure...
+-->
<para>
After installing MySQL on Unix, you need to initialize the grant
tables, start the server, and make sure that the server works
- okay. You may also wish to arrange for the server to be started
- and stopped automatically when your system starts and stops. You
- should also assign passwords to the accounts in the grant
- tables.
+ satisfactorily. You may also wish to arrange for the server to
+ be started and stopped automatically when your system starts and
+ stops. You should also assign passwords to the accounts in the
+ grant tables.
</para>
<para>
@@ -9996,7 +9982,7 @@
</itemizedlist>
<para>
- Otherwise, you'll need to run
+ Otherwise, you will need to run
<command>mysql_install_db</command> yourself.
</para>
@@ -10065,7 +10051,7 @@
If necessary, run the <command>mysql_install_db</command>
program to set up the initial MySQL grant tables containing
the privileges that determine how users are allowed to
- connect to the server. You'll need to do this if you used a
+ connect to the server. You will need to do this if you used a
distribution type that does not run the program for you.
</para>
@@ -10082,7 +10068,7 @@
To initialize the grant tables, use one of the following
commands, depending on whether
<command>mysql_install_db</command> is located in the
- <literal>bin</literal> or <literal>scripts</literal>
+ <filename>bin</filename> or <filename>scripts</filename>
directory:
</para>
@@ -10094,7 +10080,7 @@
<para>
The <command>mysql_install_db</command> script creates the
data directory, the <literal>mysql</literal> database that
- holds all database privileges, and the
+ holds all database privileges, and the
<literal>test</literal> database that you can use to test
MySQL. The script also creates privilege table entries for
<literal>root</literal> accounts and anonymous-user
@@ -10169,14 +10155,14 @@
to change the privileges after the grant tables have
been set up. In other words, you can run
<command>mysql_install_db</command>, and then use
- <literal>mysql -u root mysql</literal> to connect to the
+ <command>mysql -u root mysql</command> to connect to the
server as the MySQL <literal>root</literal> user so that
you can issue the <literal>GRANT</literal> and
<literal>REVOKE</literal> statements.
</para>
<para>
- If you want to install MySQL on a lot of machines with
+ If you want to install MySQL on several machines with
the same privileges, you can put the
<literal>GRANT</literal> and <literal>REVOKE</literal>
statements in a file and execute the file as a script
@@ -10199,7 +10185,7 @@
<para>
It is possible to re-create the grant tables completely
after they have previously been created. You might want
- to do this if you're just learning how to use
+ to do this if you are just learning how to use
<literal>GRANT</literal> and <literal>REVOKE</literal>
and have made so many modifications after running
<command>mysql_install_db</command> that you want to
@@ -10335,22 +10321,21 @@
<programlisting>
shell> bin/mysqladmin version
-mysqladmin Ver 8.40 Distrib 4.0.18, for linux on i586
+mysqladmin Ver 8.40 Distrib 4.1.13, for linux on i586
Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license
-Server version 4.0.18-log
+Server version 4.1.13-max
Protocol version 10
Connection Localhost via Unix socket
TCP port 3306
-UNIX socket /tmp/mysql.sock
-Uptime: 16 sec
+UNIX socket var/lib/mysql/mysql.sock
+Uptime: 5 days 19 hours 19 min 0 sec
+Threads: 1 Questions: 163 Slow queries: 0
+Opens: 11 Flush tables:1 Open tables: 0 Queries per second avg: 0.007
Threads: 1 Questions: 9 Slow queries: 0
-Opens: 7 Flush tables: 2 Open tables: 0
-Queries per second avg: 0.000
-Memory in use: 132K Max memory used: 16773K
</programlisting>
<para>
@@ -10452,11 +10437,11 @@
<filename>sql-bench</filename> directory (under the MySQL
installation directory) that you can use to compare how
MySQL performs on different platforms. The benchmark suite
- is written in Perl. It uses the Perl DBI module to provide a
- database-independent interface to the various databases, and
- some other additional Perl modules are required to run the
- benchmark suite. You must have the following modules
- installed:
+ is written in Perl. It uses the Perl <literal>DBI</literal>
+ module to provide a database-independent interface to the
+ various databases, and some other additional Perl modules
+ are required to run the benchmark suite. You must have the
+ following modules installed:
</para>
<programlisting>
@@ -10596,7 +10581,7 @@
In this case, you should examine the error log file very
carefully. The log should be located in the directory
<filename>XXXXXX</filename> named by the error message,
- and should indicate why <command>mysqld</command> didn't
+ and should indicate why <command>mysqld</command> did not
start. If you do not understand what happened, include the
log when you post a bug report. See
<xref linkend="bug-reports"/>.
@@ -10637,13 +10622,11 @@
following error messages:
</para>
- <para>
<programlisting>
Can't start server: Bind on TCP/IP port:
Address already in use
Can't start server: Bind on unix socket...
</programlisting>
- </para>
<para>
For instructions on setting up multiple servers, see
@@ -10858,10 +10841,10 @@
<literal>user</literal> option to the
<literal>[mysqld]</literal> group of the
<filename>/etc/my.cnf</filename> option file, as shown later
- in this section. (It is possible that you'll need to edit
+ in this section. (It is possible that you will need to edit
<command>mysql.server</command> if you've installed a binary
distribution of MySQL in a non-standard location. Modify it to
- <literal>cd</literal> into the proper directory before it runs
+ <command>cd</command> into the proper directory before it runs
<command>mysqld_safe</command>. If you do this, your modified
version of <command>mysql.server</command> may be overwritten
if you upgrade MySQL in the future, so you should make a copy
@@ -10936,7 +10919,7 @@
<para>
After installing the script, the commands needed to activate
it to run at system startup depend on your operating system.
- On Linux, you can use <literal>chkconfig</literal>:
+ On Linux, you can use <command>chkconfig</command>:
</para>
<programlisting>
@@ -11240,21 +11223,18 @@
If <command>mysqld</command> is currently running, you can
find out what path settings it is using by executing this
command:
- </para>
<programlisting>
shell> mysqladmin variables
</programlisting>
- <para>
Or:
- </para>
+
<programlisting>
shell> mysqladmin -h <replaceable>host_name</replaceable> variables
</programlisting>
- <para>
<replaceable>host_name</replaceable> is the name of the MySQL
server host.
</para>
@@ -11264,11 +11244,11 @@
<literal>Permission denied</literal>) when starting
<command>mysqld</command>, this means that the access
privileges of the data directory or its contents do not allow
- the server access. In this case, you change the permissions
- for the involved files and directories so that the server has
- the right to use them. You can also start the server as
- <literal>root</literal>, but this can raise security issues
- and should be avoided.
+ the server access. In this case, you must change the
+ permissions for the files and directories involved so that the
+ server has the right to use them. You can also start the
+ server as <literal>root</literal>, but this can raise security
+ issues and thus should be avoided.
</para>
<para>
@@ -11330,7 +11310,7 @@
</programlisting>
<para>
- This means that you didn't start <command>mysqld</command>
+ This means that you did not start <command>mysqld</command>
with the <option>--bdb-no-recover</option> option and
Berkeley DB found something wrong with its own log files when
it tried to recover your databases. To be able to continue,
@@ -11377,17 +11357,18 @@
<para>
If no other server is running, try to execute the command
- <literal>telnet your-host-name tcp-ip-port-number</literal>.
- (The default MySQL port number is 3306.) Then press Enter a
- couple of times. If you do not get an error message like
- <literal>telnet: Unable to connect to remote host: Connection
- refused</literal>, some other program is using the TCP/IP port
- that <command>mysqld</command> is trying to use. You'll need
- to track down what program this is and disable it, or else
- tell <command>mysqld</command> to listen to a different port
- with the <option>--port</option> option. In this case,
- you'll also need to specify the port number for client
- programs when connecting to the server via TCP/IP.
+ <command>telnet <replaceable>your-host-name</replaceable>
+ <replaceable>tcp-ip-port-number</replaceable></command>. (The
+ default MySQL port number is 3306.) Then press
+ <keycap>Enter</keycap> a couple of times. If you do not get an
+ error message like <literal>telnet: Unable to connect to
+ remote host: Connection refused</literal>, some other program
+ is using the TCP/IP port that <command>mysqld</command> is
+ trying to use. You will need to track down what program this
+ is and disable it, or else to tell <command>mysqld</command>
+ to listen on a different port with the <option>--port</option>
+ option. In this case, you also need to specify the port number
+ for client programs when connecting to the server via TCP/IP.
</para>
<para>
@@ -11611,10 +11592,10 @@
The following instructions describe how to set up passwords for
the initial MySQL accounts, first for the anonymous accounts and
then for the <literal>root</literal> accounts. Replace
- <quote><replaceable>newpwd</replaceable></quote> in the examples
- with the actual password that you want to use. The instructions
- also cover how to remove the anonymous accounts, should you
- prefer not to allow anonymous access at all.
+ <replaceable>newpwd</replaceable> in the examples with the
+ actual password that you want to use. The instructions also
+ cover how to remove the anonymous accounts, should you prefer
+ not to allow anonymous access at all.
</para>
<para>
@@ -11961,11 +11942,11 @@
<para>
Normally you can upgrade MySQL to a newer MySQL version without
having to do any changes to your tables. Please confirm if the
- upgrade notes to the particular version you are upgrading to tells
+ upgrade notes to the particular version you are upgrading to tell
you anything about this. If there would be any incompatibilities
you can use <command>mysqldump</command> to dump your tables
before upgrading. After upgrading, reload the dump file using
- <command>mysql</command> or <literal>mysqlimport</literal> to
+ <command>mysql</command> or <command>mysqlimport</command> to
re-create your tables.
</para>
@@ -12007,8 +11988,9 @@
It is a good idea to rebuild and reinstall the Perl
<literal>DBD::mysql</literal> module whenever you install a new
release of MySQL. The same applies to other MySQL interfaces as
- well, such as the PHP <literal>mysql</literal> extension and the
- Python <literal>MySQLdb</literal> module.
+ well, such as the PHP <literal>mysql</literal> and
+ <literal>mysqli</literal> extensions or the Python
+ <literal>MySQLdb</literal> module.
</para>
<section id="upgrading-from-4-0">
@@ -12059,29 +12041,11 @@
If you are running MySQL Server on Windows, see
<xref linkend="windows-upgrading"/>.
</para>
-
-<!-- THIS IS OUTDATED, THOSE DOWNLOADING 4.1 has AN INSTALLER -->
-
-<!-- AND THOSE WHO ARE USING AN EARLY VERSION ARE ALREADY INSTALLED. -->
-
-<!-- @strong{Important note:} -->
-
-<!-- Early alpha Windows distributions for MySQL 4.1 do not contain an -->
-
-<!-- installer program. Such a 4.1 distribution is a Zip file that you just -->
-
-<!-- unzip in the location where you want to install MySQL. For example, -->
-
-<!-- to install @file{mysql-4.1.1-alpha-win.zip} as @file{C:\mysql}, unzip -->
-
-<!-- the distribution file on the @code{C:} drive, then rename the resulting -->
-
-<!-- @file{mysql-4.1.1-alpha} directory to @file{mysql}. -->
</listitem>
<listitem>
<para>
- After upgrading, update the grant tables to have the new
+ After upgrading, update the grant tables to obtain the new
longer <literal>Password</literal> column that is needed for
more secure handling of passwords. The procedure uses
<command>mysql_fix_privilege_tables</command> and is
@@ -12125,10 +12089,10 @@
<listitem>
<para>
If you are using an old <literal>DBD-mysql</literal> module
- (<literal>Msql-MySQL-modules</literal>) you have to upgrade
- to use the newer <literal>DBD-mysql</literal> module.
- Anything above <literal>DBD-mysql</literal> 2.xx should be
- fine.
+ (<literal>Msql-MySQL-modules</literal>) you must upgrade to
+ the newer <literal>DBD-mysql</literal> module. Anything
+ above <literal>DBD-mysql</literal> 2.xx should be
+ satisfactory.
</para>
<para>
@@ -12153,9 +12117,9 @@
<ulink url="http://forge.novell.com/modules/xfmod/project/?perl5"/>
and PHP from
<ulink url="http://forge.novell.com/modules/xfmod/project/?php"/>.
- Download and install Perl module for MySQL 4.1 from
+ Download and install the Perl module for MySQL 4.1 from
<ulink url="http://forge.novell.com/modules/xfmod/project/showfiles.php?group_id=1126"/>
- and PHP Extension for MySQL 4.1 from
+ and the PHP Extension for MySQL 4.1 from
<ulink url="http://forge.novell.com/modules/xfmod/project/showfiles.php?group_id=1078"/>.
</para>
</listitem>
@@ -12235,7 +12199,7 @@
<listitem>
<para>
- <emphasis role="bold">Incompatible change:</emphasis> There
+ <emphasis role="bold">Incompatible change</emphasis>: There
are conditions under which you should rebuild tables. In
general, to rebuild a table, dump it with
<command>mysqldump</command> and reload the dump file. Some
@@ -12249,10 +12213,10 @@
<para>
If you have created or used <literal>InnoDB</literal>
tables with <literal>TIMESTAMP</literal> columns in
- MySQL versions 4.1.0 to 4.1.3, you have to rebuild those
+ MySQL versions 4.1.0 to 4.1.3, you must rebuild those
tables when you upgrade to MySQL 4.1.4 or later. The
- storage format in those MySQL versions for a
- <literal>TIMESTAMP</literal> column was incorrect. If
+ storage format in those MySQL versions for
+ <literal>TIMESTAMP</literal> columns was incorrect. If
you upgrade from MySQL 4.0 to 4.1.4 or later, then no
rebuild of tables with <literal>TIMESTAMP</literal>
columns is needed.
@@ -12327,7 +12291,7 @@
Instead of stripping end spaces before comparison, we
now extend the shorter string with spaces. The problem
with this is that now <literal>'a' > 'a\t'</literal>,
- which it wasn't before. If you have any tables where you
+ which it was not before. If you have any tables where you
have an indexed <literal>CHAR</literal>,
<literal>VARCHAR</literal> or <literal>TEXT</literal>
column in which the last character in the index may be
@@ -12340,14 +12304,15 @@
<listitem>
<para>
- <literal>MyISAM</literal> tables now use a better
- checksum algorithm. If you have
+ <literal>MyISAM</literal> tables now use an improved
+ checksum algorithm in MySQL 4.1. If you have
<literal>MyISAM</literal> tables with live checksum
enabled (you used <literal>CHECKSUM=1</literal> in
<literal>CREATE TABLE</literal> or <literal>ALTER
- TABLE</literal>), these tables will appear corrupted.
- Use <literal>REPAIR TABLE</literal> to recalculate the
- checksum.
+ TABLE</literal>), then these tables appear to be
+ corrupted following an upgrade. Use <literal>REPAIR
+ TABLE</literal> to recalculate the checksum for each
+ such table.
</para>
</listitem>
@@ -12356,7 +12321,7 @@
<listitem>
<para>
- <emphasis role="bold">Incompatible change:</emphasis> MySQL
+ <emphasis role="bold">Incompatible change</emphasis>: MySQL
interprets length specifications in character column
definitions in characters. (Earlier versions interpret them
in bytes.) For example,
@@ -12399,7 +12364,7 @@
<literal>UTF8</literal>. If you have table names or column
names that use characters outside of the standard 7-bit
US-ASCII range, you may have to do a
- <literal>mysqldump</literal> of your tables in MySQL 4.0 and
+ <command>mysqldump</command> of your tables in MySQL 4.0 and
restore them after upgrading to MySQL 4.1. The symptom for
this problem is that you get a <literal>table not
found</literal> error when trying to access your tables. In
@@ -12412,7 +12377,7 @@
<para>
<emphasis role="bold">Important note:</emphasis> If you
upgrade to MySQL 4.1.1 or higher, it is difficult to
- downgrade back to 4.0 or 4.1.0! That is because, for earlier
+ downgrade back to 4.0 or 4.1.0. That is because, for earlier
versions, <literal>InnoDB</literal> is not aware of multiple
tablespaces.
</para>
@@ -12420,7 +12385,7 @@
<listitem>
<para>
- <emphasis role="bold">Incompatible change:</emphasis> In
+ <emphasis role="bold">Incompatible change</emphasis>: In
connection with the support for per-connection time zones in
MySQL 4.1.3, the <literal>timezone</literal> system variable
was renamed to <literal>system_time_zone</literal>.
@@ -12453,7 +12418,7 @@
BINARY</literal> or <literal>VARCHAR BINARY</literal> data
types in MySQL 4.0, these were treated as binary strings. To
have them treated as binary strings in MySQL 4.1, you should
- convert them to use the <literal>BINARY</literal> and
+ convert them to the <literal>BINARY</literal> and
<literal>VARBINARY</literal> data types, respectively.
</para>
</listitem>
@@ -12498,11 +12463,11 @@
<listitem>
<para>
- <emphasis role="bold">Incompatible change:</emphasis> The
- interface to aggregate user-defined functions has changed a
- bit as of MySQL 4.1.1. You must declare a
+ <emphasis role="bold">Incompatible change</emphasis>: The
+ interface to aggregate user-defined functions changed as of
+ MySQL 4.1.1. You must declare a
<literal>xxx_clear()</literal> function for each aggregate
- function <literal>XXX()</literal>.
+ function <literal>XXX()</literal>.
<literal>xxx_clear()</literal> is used instead of
<literal>xxx_reset()</literal>. See
<xref linkend="udf-aggr-calling"/>.
@@ -12533,7 +12498,7 @@
<command>mysqldump</command> has the
<option>--opt</option> and
<option>--quote-names</option> options enabled by default.
- You can turn them off with <option>--skip-opt</option> and
+ You can turn these off using <option>--skip-opt</option> and
<option>--skip-quote-names</option>.
</para>
</listitem>
@@ -12548,12 +12513,12 @@
<listitem>
<para>
- <emphasis role="bold">Incompatible change:</emphasis> String
- comparison works according to SQL standard: Instead of
- stripping end spaces before comparison, we now extend the
- shorter string with spaces. The problem with this is that
- now <literal>'a' > 'a\t'</literal>, which it wasn't
- before. If you have any tables where you have an indexed
+ <emphasis role="bold">Incompatible change</emphasis>: In
+ MySQL 4.1, string comparison works according to the SQL
+ standard: Instead of stripping end spaces before comparison,
+ the shorter string is extended using spaces. This means that
+ <literal>'a' > 'a\t'</literal>, which it was not
+ previously. If you have any tables containing an indexed
<literal>CHAR</literal>, <literal>VARCHAR</literal> or
<literal>TEXT</literal> column in which the last character
in the index may be less than <literal>ASCII(32)</literal>,
@@ -12565,10 +12530,10 @@
<listitem>
<para>
- <emphasis role="bold">Incompatible change:</emphasis>
- <literal>TIMESTAMP</literal> is returned as a string in
- <literal>'YYYY-MM-DD HH:MM:SS'</literal> format. See
- <xref linkend="timestamp-4-1"/>. From 4.0.12 on, the
+ <emphasis role="bold">Incompatible change</emphasis>:
+ <literal>TIMESTAMP</literal> is returned in MySQL 4.1 as a
+ string in <literal>'YYYY-MM-DD HH:MM:SS'</literal> format.
+ (See <xref linkend="timestamp-4-1"/>.) From 4.0.12 on, the
<option>--new</option> option can be used to make a 4.0
server behave as 4.1 in this respect. The effect of this
option is described in <xref linkend="timestamp-pre-4-1"/>.
@@ -12587,11 +12552,12 @@
<para>
Display widths for <literal>TIMESTAMP</literal> columns are
- no longer supported. For example, if you declare a column as
- <literal>TIMESTAMP(10)</literal>, the
+ no longer supported in MySQL 4.1. For example, if you
+ declare a column as <literal>TIMESTAMP(10)</literal>, the
<literal>(10)</literal> is ignored.
</para>
-
+<!-- JS: Commented out promise. -->
+<!--
<para>
These changes were necessary for SQL standards compliance.
In a future version, a further change will be made (backward
@@ -12599,11 +12565,12 @@
to indicate the desired number of digits for fractions of a
second.
</para>
+-->
</listitem>
<listitem>
<para>
- <emphasis role="bold">Incompatible change:</emphasis> Binary
+ <emphasis role="bold">Incompatible change</emphasis>: Binary
values such as <literal>0xFFDF</literal> are assumed to be
strings instead of numbers. This fixes some problems with
character sets where it is convenient to input a string as a
@@ -12619,8 +12586,8 @@
</programlisting>
<para>
- If you do not use <literal>CAST()</literal>, a lexical string
- comparison is done:
+ If you do not use <literal>CAST()</literal>, a lexical
+ string comparison is made instead:
</para>
<programlisting>
@@ -12639,7 +12606,7 @@
<listitem>
<para>
- <emphasis role="bold">Incompatible change:</emphasis> Before
+ <emphasis role="bold">Incompatible change</emphasis>: Before
MySQL 4.1.1, the statement parser was less strict and its
string-to-date conversion would ignore everything up to the
first digit. As a result, invalid statements such as the
@@ -12651,7 +12618,7 @@
</programlisting>
<para>
- As of MySQL 4.1.1, the parser is more strict and treats the
+ As of MySQL 4.1.1, the parser is stricter and treats the
string as an invalid date, so the preceding statement
results in a warning.
</para>
@@ -12659,7 +12626,7 @@
<listitem>
<para>
- <emphasis role="bold">Incompatible change:</emphasis> In
+ <emphasis role="bold">Incompatible change</emphasis>: In
MySQL 4.1.2, the <literal>Type</literal> column in the
output from <literal>SHOW TABLE STATUS</literal> was renamed
to <literal>Engine</literal>. This affects applications that
@@ -12697,8 +12664,8 @@
For functions that produce a <literal>DATE</literal>,
<literal>DATETIME</literal>, or <literal>TIME</literal>
value, the result returned to the client is fixed up to have
- a temporal type. For example, in MySQL 4.1, you get this
- result:
+ a temporal type. For example, in MySQL 4.1, you obtain the
+ following:
</para>
<programlisting>
@@ -12707,7 +12674,7 @@
</programlisting>
<para>
- In MySQL 4.0, the result is different:
+ In MySQL 4.0, the result of the stement is different:
</para>
<programlisting>
@@ -12756,7 +12723,7 @@
<listitem>
<para>
- <emphasis role="bold">Incompatible change:</emphasis> The
+ <emphasis role="bold">Incompatible change</emphasis>: The
<literal>mysql_shutdown()</literal> C API function has an
extra parameter as of MySQL 4.1.3:
<literal>SHUTDOWN</literal>-level. You should convert any
@@ -12773,7 +12740,7 @@
<para>
Some C API calls such as
<literal>mysql_real_query()</literal> return
- <literal>1</literal> on error, not <literal>-1</literal>.
+ <literal>1</literal> on error, not <option>-1</option>.
You may have to change some old applications if they use
constructs like this:
</para>
@@ -12804,14 +12771,14 @@
</para>
<para>
- The password hashing mechanism has changed in 4.1 to provide
- better security, but this may cause compatibility problems if
- you still have clients that use the client library from 4.0 or
- earlier. (It is very likely that you have 4.0 clients in
- situations where clients connect from remote hosts that have not
- yet upgraded to 4.1.) The following list indicates some possible
- upgrade strategies. They represent various tradeoffs between the
- goal of compatibility with old clients and the goal of security.
+ The password hashing mechanism changed in 4.1 to provide better
+ security; this may cause compatibility problems if you have
+ clients using the client library from 4.0 or earlier. (It is
+ very likely that you have 4.0 clients in situations where
+ clients connect from remote hosts that have not yet upgraded to
+ 4.1.) The following list indicates some possible upgrade
+ strategies. They represent various tradeoffs between the goals
+ of compatibility with old clients and security.
</para>
<itemizedlist>
@@ -12834,15 +12801,16 @@
<command>mysql_fix_privilege_tables</command> script to
widen the <literal>Password</literal> column in the
<literal>user</literal> table so that it can hold long
- password hashes. But run the server with the
- <option>--old-passwords</option> option to provide
- backward compatibility that allows pre-4.1 clients to
- continue to connect to their short-hash accounts.
+ password hashes. However — to provide backward
+ compatibility allowing pre-4.1 clients to continue
+ connecting to their short-hash accounts — run the
+ server with the <option>--old-passwords</option> option.
Eventually, when all your clients are upgraded to 4.1, you
can stop using the <option>--old-passwords</option> server
option. You can also change the passwords for your MySQL
- accounts to use the new more secure format. A pure-4.1
- installation is the most secure.
+ accounts to use the new more secure format. A 4.1
+ installation using only the improved authentication protocol
+ is the most secure one.
</para>
</listitem>
@@ -12890,7 +12858,7 @@
<listitem>
<para>
- Read the 4.0 news items to see what significant new features
+ Read the 4.0 changelog to see what significant new features
you can use in 4.0. See <xref linkend="news-4-0-x"/>.
</para>
</listitem>
@@ -12905,7 +12873,7 @@
<listitem>
<para>
After upgrading, update the grant tables to add new
- privileges and features. The procedure uses the
+ privileges and features. This procedure uses the
<command>mysql_fix_privilege_tables</command> script and is
described in <xref linkend="upgrading-grant-tables"/>.
</para>
@@ -12921,19 +12889,20 @@
<listitem>
<para>
- Edit any MySQL startup scripts or option files to not use
- any of the deprecated options described later in this
- section.
+ Edit any MySQL startup scripts or option files so that they
+ do not use any of the options described as deprecated later
+ in this section.
</para>
</listitem>
<listitem>
<para>
- Convert your old <literal>ISAM</literal> files to
- <literal>MyISAM</literal> files. One way to do this is with
+ Convert your old <literal>ISAM</literal> tables to
+ <literal>MyISAM</literal> format. One way to do this is with
the <literal>mysql_convert_table_format</literal> script.
- (This is a Perl script; it requires that DBI be installed.)
- To convert the tables in a given database, use this command:
+ (This is a Perl script; it requires that
+ <literal>DBI</literal> be installed.) To convert all of the
+ tables in a given database, use this command:
</para>
<programlisting>
@@ -12941,12 +12910,13 @@
</programlisting>
<para>
- Note that this should be used only if all tables in the
- given database are <literal>ISAM</literal> or
- <literal>MyISAM</literal> tables. To avoid converting tables
- of other types to <literal>MyISAM</literal>, you can
- explicitly list the names of your <literal>ISAM</literal>
- tables after the database name on the command line.
+ Note that the above command should be used only if
+ <emphasis>all</emphasis> tables in the database are
+ <literal>ISAM</literal> or <literal>MyISAM</literal> tables.
+ To avoid converting tables of other types to
+ <literal>MyISAM</literal>, you can explicitly list the names
+ of the <literal>ISAM</literal> tables following the database
+ name on the command line.
</para>
<para>
@@ -12972,13 +12942,13 @@
<listitem>
<para>
- Ensure that you do not have any MySQL clients that use shared
- libraries (like the Perl <literal>DBD::mysql</literal>
- module). If you do, you should recompile them, because the
- data structures used in
+ Ensure that you do not have any MySQL clients that use
+ shared libraries (like the Perl
+ <literal>DBD::mysql</literal> module). If you do, you should
+ recompile them, because the data structures used in
<filename>libmysqlclient.so</filename> have changed. The
- same applies to other MySQL interfaces as well, such as the
- Python <literal>MySQLdb</literal> module.
+ same applies to other MySQL interfaces such as the Python
+ <literal>MySQLdb</literal> module.
</para>
</listitem>
@@ -13005,8 +12975,8 @@
with the MySQL 4.0 series. In this case, you must use
<command>mysqldump</command> to dump any tables that use
full-text indexes and reload the dump file into the 3.23 server.
- This is necessary because 4.0 uses a new format for full-text
- indexing.
+ This is necessary because 4.0 uses an improved format for
+ full-text indexing that is not backwards compatible.
</para>
<para>
@@ -13034,14 +13004,14 @@
<listitem>
<para>
- MySQL 4.0 has a lot of new privileges in the
+ MySQL 4.0 has many new privileges in the
<literal>mysql.user</literal> table. See
<xref linkend="privileges-provided"/>.
</para>
<para>
- To get these new privileges to work, you must update the
- grant tables. The procedure is described in
+ In order for these new privileges to work, you must update
+ the grant tables. The procedure for this is described in
<xref linkend="upgrading-grant-tables"/>. Until you do this,
all accounts have the <literal>SHOW DATABASES</literal>,
<literal>CREATE TEMPORARY TABLES</literal>, and
@@ -13072,7 +13042,7 @@
<para>
If you get <literal>Access denied</literal> errors for new
users in version 4.0.2 and up, you should check whether you
- need some of the new grants that you didn't need before. In
+ need some of the new grants that you did not need before. In
particular, you need <literal>REPLICATION SLAVE</literal>
(instead of <literal>FILE</literal>) for new slave servers.
</para>
@@ -13108,7 +13078,7 @@
Values for the startup parameters
<literal>myisam_max_extra_sort_file_size</literal> and
<literal>myisam_max_extra_sort_file_size</literal> are given
- in bytes (they were given in megabytes before 4.0.3).
+ in bytes (prior to 4.0.3,they were given in megabytes).
</para>
</listitem>
@@ -13143,8 +13113,7 @@
<listitem>
<para>
- The following startup variables and options have been
- renamed:
+ The following startup variables and options were renamed:
</para>
<informaltable>
@@ -13153,8 +13122,8 @@
<colspec colwidth="50*"/>
<tbody>
<row>
- <entry><emphasis role="bold">Old Name</emphasis></entry>
- <entry><emphasis role="bold">New Name</emphasis></entry>
+ <entry><emphasis role="bold">Name in 3.23</emphasis></entry>
+ <entry><emphasis role="bold">Name in 4.0 (and above)</emphasis></entry>
</row>
<row>
<entry><literal>myisam_bulk_insert_tree_size</literal></entry>
@@ -13209,16 +13178,14 @@
The following SQL variables have been renamed:
</para>
-<!-- arjen note: New table, not yet measured for DocBook. -->
-
<informaltable>
<tgroup cols="2">
<colspec colwidth="50*"/>
<colspec colwidth="50*"/>
<tbody>
<row>
- <entry><emphasis role="bold">Old Name</emphasis></entry>
- <entry><emphasis role="bold">New Name</emphasis></entry>
+ <entry><emphasis role="bold">Name in 3.23</emphasis></entry>
+ <entry><emphasis role="bold">Name in 4.0 and above</emphasis></entry>
</row>
<row>
<entry><literal>SQL_BIG_TABLES</literal></entry>
@@ -13241,13 +13208,13 @@
</informaltable>
<para>
- The old names still work in MySQL 4.0 but are deprecated.
+ The older names still work in MySQL 4.0 but are deprecated.
</para>
</listitem>
<listitem>
<para>
- You have to use <literal>SET GLOBAL
+ You must use <literal>SET GLOBAL
SQL_SLAVE_SKIP_COUNTER=skip_count</literal> instead of
<literal>SET SQL_SLAVE_SKIP_COUNTER=skip_count</literal>.
</para>
@@ -13269,23 +13236,23 @@
<listitem>
<para>
- <literal>SHOW INDEX</literal> has two more columns than it
- had in 3.23 (<literal>Null</literal> and
+ <literal>SHOW INDEX</literal> has two more columns in 4.0
+ than in 3.23 (<literal>Null</literal> and
<literal>Index_type</literal>).
</para>
</listitem>
<listitem>
<para>
- The format of <literal>SHOW OPEN TABLES</literal> has
+ The format of <literal>SHOW OPEN TABLES</literal>
changed.
</para>
</listitem>
<listitem>
<para>
- <literal>ORDER BY col_name DESC</literal> sorts
- <literal>NULL</literal> values last, as of MySQL 4.0.11. In
+ As of MySQL 4.0.11, <literal>ORDER BY col_name
+ DESC</literal> sorts <literal>NULL</literal> values last. In
3.23 and in earlier 4.0 versions, this was not always
consistent.
</para>
@@ -13302,8 +13269,8 @@
<para>
<literal>DOUBLE</literal> and <literal>FLOAT</literal>
columns honor the <literal>UNSIGNED</literal> flag on
- storage (before, <literal>UNSIGNED</literal> was ignored for
- these columns).
+ storage (previously, <literal>UNSIGNED</literal> was ignored
+ for these columns).
</para>
</listitem>
@@ -13335,8 +13302,8 @@
<listitem>
<para>
You should use integers to store values in
- <literal>BIGINT</literal> columns (instead of using strings,
- as you did in MySQL 3.23). Using strings still works, but
+ <literal>BIGINT</literal> columns (instead of using strings
+ as in MySQL 3.23). Using strings still works, but
using integers is more efficient.
</para>
</listitem>
@@ -13375,12 +13342,12 @@
<listitem>
<para>
To use <literal>MATCH ... AGAINST (... IN BOOLEAN
- MODE)</literal> full-text searches with your tables, you
- must rebuild their indexes with <literal>REPAIR TABLE
- tbl_name USE_FRM</literal>. If you attempt a boolean
- full-text search without rebuilding the indexes this way,
- the search returns incorrect results. See
- <xref linkend="fulltext-fine-tuning"/>.
+ MODE)</literal> full-text searches, you must rebuild
+ existing table indexes using <literal>REPAIR TABLE
+ <replaceable>tbl_name</replaceable> USE_FRM</literal>. If
+ you attempt a boolean full-text search without rebuilding
+ the indexes in this manner, the search returns incorrect
+ results. See <xref linkend="fulltext-fine-tuning"/>.
</para>
</listitem>
@@ -13443,9 +13410,9 @@
The old C API functions <literal>mysql_drop_db()</literal>,
<literal>mysql_create_db()</literal>, and
<literal>mysql_connect()</literal> are no longer supported
- unless you compile MySQL with
- <literal>CFLAGS=-DUSE_OLD_FUNCTIONS</literal>. However, it
- is preferable to change client programs to use the new 4.0
+ in MySQL 4.0 unless MySQL is compiled with
+ <literal>CFLAGS=-DUSE_OLD_FUNCTIONS</literal>. It is
+ preferable to change client programs to use the new 4.0
API instead.
</para>
</listitem>
@@ -13493,513 +13460,6 @@
</section>
- <section id="upgrading-from-3-22">
-
- <title id='title-upgrading-from-3-22'>&title-upgrading-from-3-22;</title>
-
- <indexterm type="concept">
- <primary>compatibility</primary>
- <secondary>between MySQL versions</secondary>
- </indexterm>
-
- <indexterm type="concept">
- <primary>upgrading</primary>
- <secondary>3.22 to 3.23</secondary>
- </indexterm>
-
- <para>
- MySQL 3.22 and 3.21 clients work without any problems with a
- MySQL 3.23 server.
- </para>
-
- <para>
- When upgrading to MySQL 3.23 from an earlier version, note the
- following changes:
- </para>
-
- <para>
- <emphasis role="bold">Table Changes:</emphasis>
- </para>
-
- <itemizedlist>
-
- <listitem>
- <para>
- MySQL 3.23 supports tables of the new
- <literal>MyISAM</literal> type and the old
- <literal>ISAM</literal> type. By default, all new tables are
- created with type <literal>MyISAM</literal> unless you start
- <command>mysqld</command> with the
- <option>--default-table-type=isam</option> option. You
- do not have to convert your old <literal>ISAM</literal>
- tables to use them with MySQL 3.23. You can convert an
- <literal>ISAM</literal> table to <literal>MyISAM</literal>
- format with <literal>ALTER TABLE
- <replaceable>tbl_name</replaceable> TYPE=MyISAM</literal> or
- the Perl script
- <literal>mysql_convert_table_format</literal>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- All tables that use the <literal>tis620</literal> character
- set must be fixed with <command>myisamchk -r</command> or
- <literal>REPAIR TABLE</literal>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- If you are using the <literal>german</literal> character
- sort order for <literal>ISAM</literal> tables, you must
- repair them with <command>isamchk -r</command>, because we
- have made some changes in the sort order.
- </para>
- </listitem>
-
- </itemizedlist>
-
- <para>
- <emphasis role="bold">Client Program Changes:</emphasis>
- </para>
-
- <itemizedlist>
-
- <listitem>
- <para>
- The MySQL client <command>mysql</command> is by default
- started with the <option>--no-named-commands (-g)</option>
- option. This option can be disabled with
- <option>--enable-named-commands (-G)</option>. This may
- cause incompatibility problems in some cases---for example,
- in SQL scripts that use named commands without a semicolon.
- Long format commands still work from the first line.
- </para>
- </listitem>
-
- <listitem>
- <para>
- If you want your <command>mysqldump</command> files to be
- compatible between MySQL 3.22 and 3.23, you should not use
- the <option>--opt</option> or <option>--all</option>
- option to <command>mysqldump</command>.
- </para>
- </listitem>
-
- </itemizedlist>
-
- <para>
- <emphasis role="bold">SQL Changes:</emphasis>
- </para>
-
- <itemizedlist>
-
- <listitem>
- <para>
- If you do a <literal>DROP DATABASE</literal> on a
- symbolically linked database, both the link and the original
- database are deleted. This didn't happen in MySQL 3.22
- because <command>configure</command> didn't detect the
- availability of the <literal>readlink()</literal> system
- call.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <literal>OPTIMIZE TABLE</literal> works only for
- <literal>MyISAM</literal> tables. For other table types, you
- can use <literal>ALTER TABLE</literal> to optimize the
- table. During <literal>OPTIMIZE TABLE</literal>, the table
- is locked to prevent it from being used by other threads.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Date functions that work on parts of dates (such as
- <literal>MONTH()</literal>) return 0 for
- <literal>0000-00-00</literal> dates. In MySQL 3.22, these
- functions returned <literal>NULL</literal>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The default return type of <literal>IF()</literal> depends
- on both arguments, not just the first one.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <literal>AUTO_INCREMENT</literal> columns should not be used
- to store negative numbers. The reason for this is that
- negative numbers caused problems when wrapping from -1 to 0.
- You should not store 0 in <literal>AUTO_INCREMENT</literal>
- columns, either; <literal>CHECK TABLE</literal> complains
- about 0 values because they may change if you dump and
- restore the table. <literal>AUTO_INCREMENT</literal> for
- <literal>MyISAM</literal> tables is handled at a lower level
- and is much faster than before. In addition, for
- <literal>MyISAM</literal> tables, old numbers are not
- reused, even if you delete rows from the table.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <literal>CASE</literal>, <literal>DELAYED</literal>,
- <literal>ELSE</literal>, <literal>END</literal>,
- <literal>FULLTEXT</literal>, <literal>INNER</literal>,
- <literal>RIGHT</literal>, <literal>THEN</literal>, and
- <literal>WHEN</literal> are reserved words.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <literal>FLOAT(p)</literal> is a true floating-point type
- and not a value with a fixed number of decimals.
- </para>
- </listitem>
-
- <listitem>
- <para>
- When declaring columns using a
- <literal>DECIMAL(length,dec)</literal> type, the
- <literal>length</literal> argument no longer includes a
- place for the sign or the decimal point.
- </para>
- </listitem>
-
- <listitem>
- <para>
- A <literal>TIME</literal> string must be of one of the
- following formats: <literal>[[[DAYS]
- [H]H:]MM:]SS[.fraction]</literal> or
- <literal>[[[[[H]H]H]H]MM]SS[.fraction]</literal>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <literal>LIKE</literal> compares strings using the same
- character comparison rules as for the <literal>=</literal>
- operator. If you require the old behavior, you can compile
- MySQL with the
- <literal>CXXFLAGS=-DLIKE_CMP_TOUPPER</literal> flag.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <literal>REGEXP</literal> is case insensitive if neither of
- the strings is a binary string.
- </para>
- </listitem>
-
- <listitem>
- <para>
- When you check or repair <literal>MyISAM</literal>
- (<filename>.MYI</filename>) tables, you should use the
- <literal>CHECK TABLE</literal> statement or the
- <command>myisamchk</command> command. For
- <literal>ISAM</literal> (<filename>.ISM</filename>) tables,
- use the <command>isamchk</command> command.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Check all your calls to <literal>DATE_FORMAT()</literal> to
- make sure that there is a '<literal>%</literal>' before each
- format character.
- </para>
- </listitem>
-
- <listitem>
- <para>
- In MySQL 3.22, the output of <literal>SELECT DISTINCT
- ...</literal> was almost always sorted. In MySQL 3.23, you
- must use <literal>GROUP BY</literal> or <literal>ORDER
- BY</literal> to obtain sorted output.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <literal>SUM()</literal> returns <literal>NULL</literal>
- instead of 0 if there are no matching rows. This is required
- by standard SQL.
- </para>
- </listitem>
-
- <listitem>
- <para>
- An <literal>AND</literal> or <literal>OR</literal> with
- <literal>NULL</literal> values returns
- <literal>NULL</literal> instead of 0. This mostly affects
- queries that use <literal>NOT</literal> on an
- <literal>AND/OR</literal> expression as <literal>NOT
- NULL</literal> = <literal>NULL</literal>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <literal>LPAD()</literal> and <literal>RPAD()</literal>
- shorten the result string if it is longer than the length
- argument.
- </para>
- </listitem>
-
- </itemizedlist>
-
- <para>
- <emphasis role="bold">C API Changes:</emphasis>
- </para>
-
- <itemizedlist>
-
- <listitem>
- <para>
- <literal>mysql_fetch_fields_direct()</literal> is a function
- instead of a macro. It returns a pointer to a
- <literal>MYSQL_FIELD</literal> instead of a
- <literal>MYSQL_FIELD</literal>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <literal>mysql_num_fields()</literal> cannot be used on a
- <literal>MYSQL*</literal> object (it is a function that takes
- a <literal>MYSQL_RES*</literal> value as an argument). With
- a <literal>MYSQL*</literal> object, you should use
- <literal>mysql_field_count()</literal> instead.
- </para>
- </listitem>
-
- </itemizedlist>
-
- </section>
-
- <section id="upgrading-from-3-21">
-
- <title id='title-upgrading-from-3-21'>&title-upgrading-from-3-21;</title>
-
- <indexterm type="concept">
- <primary>compatibility</primary>
- <secondary>between MySQL versions</secondary>
- </indexterm>
-
- <indexterm type="concept">
- <primary>upgrading</primary>
- <secondary>3.21 to 3.22</secondary>
- </indexterm>
-
- <para>
- Nothing that affects compatibility has changed between versions
- 3.21 and 3.22. The only pitfall is that new tables that are
- created with <literal>DATE</literal> type columns use the new
- way to store the date. You cannot access these new columns from
- an old version of <command>mysqld</command>.
- </para>
-
- <para>
- When upgrading to MySQL 3.23 from an earlier version, note the
- following changes:
- </para>
-
- <itemizedlist>
-
- <listitem>
- <para>
- After installing MySQL Version 3.22, you should start the
- new server and then run the
- <command>mysql_fix_privilege_tables</command> script. This
- adds the new privileges that you need to use the
- <literal>GRANT</literal> command. If you forget this, you
- get <literal>Access denied</literal> when you try to use
- <literal>ALTER TABLE</literal>, <literal>CREATE
- INDEX</literal>, or <literal>DROP INDEX</literal>. The
- procedure for updating the grant tables is described in
- <xref linkend="upgrading-grant-tables"/>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The C API interface to
- <literal>mysql_real_connect()</literal> has changed. If you
- have an old client program that calls this function, you
- must pass a <literal>0</literal> for the new
- <literal>db</literal> argument (or recode the client to send
- the <literal>db</literal> element for faster connections).
- You must also call <literal>mysql_init()</literal> before
- calling <literal>mysql_real_connect()</literal>. This change
- was done to allow the new <literal>mysql_options()</literal>
- function to save options in the <literal>MYSQL</literal>
- handler structure.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The <command>mysqld</command> variable
- <literal>key_buffer</literal> has been renamed to
- <literal>key_buffer_size</literal>, but you can still use
- the old name in your startup files.
- </para>
- </listitem>
-
- </itemizedlist>
-
- </section>
-
- <section id="upgrading-from-3-20">
-
- <title id='title-upgrading-from-3-20'>&title-upgrading-from-3-20;</title>
-
- <indexterm type="concept">
- <primary>upgrading</primary>
- <secondary>3.20 to 3.21</secondary>
- </indexterm>
-
- <para>
- If you are running a version older than Version 3.20.28 and want
- to switch to Version 3.21, you need to do the following:
- </para>
-
- <para>
- You can start the <command>mysqld</command> Version 3.21 server
- with the <option>--old-protocol</option> option to use it with
- clients from a Version 3.20 distribution. In this case, the
- server uses the old pre-3.21 <literal>password()</literal>
- checking rather than the new method. Also, the new client
- function <literal>mysql_errno()</literal> does not return any
- server error, only <literal>CR_UNKNOWN_ERROR</literal>. The
- function does work for client errors.
- </para>
-
- <para>
- If you are <emphasis>not</emphasis> using the
- <option>--old-protocol</option> option to
- <command>mysqld</command>, you need to make the following
- changes:
- </para>
-
- <itemizedlist>
-
- <listitem>
- <para>
- All client code must be recompiled. If you are using ODBC,
- you must get the MyODBC 2.x driver.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The <literal>scripts/add_long_password</literal> script must
- be run to convert the <literal>Password</literal> field in
- the <literal>mysql.user</literal> table to
- <literal>CHAR(16)</literal>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- All passwords must be reassigned in the
- <literal>mysql.user</literal> table to get 62-bit rather
- than 31-bit passwords.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The table format hasn't changed, so you do not have to
- convert any tables.
- </para>
- </listitem>
-
- </itemizedlist>
-
- <para>
- MySQL 3.20.28 and above can handle the new
- <literal>user</literal> table format without affecting clients.
- If you have a MySQL version earlier than 3.20.28, passwords no
- longer work with it if you convert the <literal>user</literal>
- table. So to be safe, you should first upgrade to at least
- Version 3.20.28 and then upgrade to Version 3.21.
- </para>
-
- <indexterm type="concept">
- <primary>Protocol mismatch</primary>
- </indexterm>
-
- <para>
- The new client code works with a 3.20.x
- <command>mysqld</command> server, so if you experience problems
- with 3.21.x, you can use the old 3.20.x server without having to
- recompile the clients again.
- </para>
-
- <para>
- If you are not using the <option>--old-protocol</option>
- option to <command>mysqld</command>, old clients are unable to
- connect and should issue the following error message:
- </para>
-
-<programlisting>
-ERROR: Protocol mismatch. Server Version = 10 Client Version = 9
-</programlisting>
-
- <para>
- The Perl DBI interface also supports the old
- <literal>mysqlperl</literal> interface. The only change you have
- to make if you use <literal>mysqlperl</literal> is to change the
- arguments to the <literal>connect()</literal> function. The new
- arguments are: <literal>host</literal>,
- <literal>database</literal>, <literal>user</literal>, and
- <literal>password</literal> (note that the
- <literal>user</literal> and <literal>password</literal>
- arguments have changed places).
- </para>
-
- <para>
- The following changes may affect queries in old applications:
- </para>
-
- <itemizedlist>
-
- <listitem>
- <para>
- <literal>HAVING</literal> must be specified before any
- <literal>ORDER BY</literal> clause.
- </para>
- </listitem>
-
- <listitem>
- <para>
- The parameters to <literal>LOCATE()</literal> have been
- swapped.
- </para>
- </listitem>
-
- <listitem>
- <para>
- There are some new reserved words. The most noticeable are
- <literal>DATE</literal>, <literal>TIME</literal>, and
- <literal>TIMESTAMP</literal>.
- </para>
- </listitem>
-
- </itemizedlist>
-
- </section>
-
<section id="upgrading-grant-tables">
<title id='title-upgrading-grant-tables'>&title-upgrading-grant-tables;</title>
@@ -14042,7 +13502,7 @@
</para>
<programlisting>
-shell> mysql_fix_privilege_tables --password=root_password
+shell> mysql_fix_privilege_tables --password=<replaceable>root_password</replaceable>
</programlisting>
<para>
@@ -14050,7 +13510,7 @@
</para>
<programlisting>
-shell> mysql_fix_privilege_tables root_password
+shell> mysql_fix_privilege_tables <replaceable>root_password</replaceable>
</programlisting>
<para>
@@ -14085,7 +13545,7 @@
</para>
<para>
- The <command>mysql</command> command will prompt you for the
+ The <command>mysql</command> command will ask for the
<literal>root</literal> password; enter it when prompted.
</para>
@@ -14101,59 +13561,6 @@
After running the script, stop the server and restart it.
</para>
- <para>
- If you are upgrading to MySQL 5.0.1 or later, the grant table
- upgrade procedure just described adds view-related columns for
- the <literal>CREATE VIEW</literal> and <literal>SHOW
- VIEW</literal> privileges. These privileges exist at the global
- and database levels. Their initial values are assigned as
- follows:
- </para>
-
- <itemizedlist>
-
- <listitem>
- <para>
- In MySQL 5.0.2 or later,
- <command>mysql_fix_privilege_tables</command> copies the
- <literal>Create_priv</literal> value in the
- <literal>user</literal> table to the
- <literal>Create_view_priv</literal> and
- <literal>Show_view_priv</literal> columns.
- </para>
- </listitem>
-
- <listitem>
- <para>
- In 5.0.1, the view-related privileges are not enabled for
- any accounts, so you cannot immediately use
- <literal>GRANT</literal> to give them to accounts that
- should have them. To deal with this, first connect to the
- server as <literal>root</literal> and issue the following
- statements to give the privileges to the
- <literal>root</literal> accounts manually with
- <literal>UPDATE</literal>:
- </para>
-
-<programlisting>
-mysql> UPDATE mysql.user SET Show_view_priv = 'Y', Create_view_priv = 'Y'
- -> WHERE User = 'root';
-mysql> FLUSH PRIVILEGES;
-</programlisting>
-
- <para>
- After this, <literal>root</literal> can use
- <literal>GRANT</literal> to give the view privileges to
- other accounts. Note: You should issue the statements just
- shown, <literal>GRANT ALL</literal> does not work at the
- global and database levels, because <literal>GRANT</literal>
- requires that you actually possess the privileges you are
- granting.
- </para>
- </listitem>
-
- </itemizedlist>
-
</section>
<section id="upgrading-to-arch">
@@ -14186,18 +13593,18 @@
<para>
The MySQL <literal>ISAM</literal> data and index files
(<filename>.ISD</filename> and <filename>*.ISM</filename>,
- respectively) are architecture dependent and in some cases
- operating system dependent. If you want to move your
- applications to another machine that has a different
- architecture or operating system than your current machine, you
- should not try to move a database by simply copying the files to
- the other machine. Use <command>mysqldump</command> instead.
+ respectively) are dependent upon the architecture and, in some
+ cases, the operating system. If you want to move applications to
+ another machine having a different architecture or operating
+ system than that of the current machine, you should not try to
+ move a database by simply copying the files to the other
+ machine. Use <command>mysqldump</command> instead.
</para>
<para>
By default, <command>mysqldump</command> creates a file
containing SQL statements. You can then transfer the file to the
- other machine and feed it as input to the
+ other machine and use it as input to the
<command>mysql</command> client.
</para>
@@ -14220,13 +13627,12 @@
shell> mysqldump --opt <replaceable>db_name</replaceable> | mysql -h '<replaceable>other_hostname</replaceable>' <replaceable>db_name</replaceable>
</programlisting>
-<!-- TODO: next example not only changes copy direction (from local->remote -->
-
-<!-- to remote->local), it adds -compress. But -compress is a separate -->
-
-<!-- thing and can be used no matter the copy direction. Split into two -->
-
-<!-- examples. -->
+<!--
+ TODO: The next example not only changes copy direction (from
+ local->remote to remote->local), it adds - -compress. But
+ - -compress is unrelated and can be used in either case. Split
+ into two examples.
+-->
<para>
If you want to copy a database from a remote machine over a slow
@@ -14270,8 +13676,8 @@
<para>
You can also use <command>mysqldump</command> and
- <command>mysqlimport</command> to transfer the database. For big
- tables, this is much faster than simply using
+ <command>mysqlimport</command> to transfer the database. For
+ very large tables, this is much faster than simply using
<command>mysqldump</command>. In the following commands,
<literal>DUMPDIR</literal> represents the full pathname of the
directory you use to store the output from
@@ -14284,25 +13690,25 @@
</para>
<programlisting>
-shell> mkdir DUMPDIR
-shell> mysqldump --tab=DUMPDIR <replaceable>db_name</replaceable>
+shell> mkdir <replaceable>DUMPDIR</replaceable>
+shell> mysqldump --tab=<replaceable>DUMPDIR</replaceable> <replaceable>db_name</replaceable>
</programlisting>
<para>
- Then transfer the files in the <literal>DUMPDIR</literal>
- directory to some corresponding directory on the target machine
- and load the files into MySQL there:
+ Then transfer the files in the
+ <replaceable>DUMPDIR</replaceable> directory to a directory on
+ the target machine and load the files into MySQL there:
</para>
<programlisting>
shell> mysqladmin create <replaceable>db_name</replaceable> # create database
-shell> cat DUMPDIR/*.sql | mysql <replaceable>db_name</replaceable> # create tables in database
-shell> mysqlimport <replaceable>db_name</replaceable> DUMPDIR/*.txt # load data into tables
+shell> cat <replaceable>DUMPDIR</replaceable>/*.sql | mysql <replaceable>db_name</replaceable> # create tables in database
+shell> mysqlimport <replaceable>db_name</replaceable> <replaceable>DUMPDIR</replaceable>/*.txt # load data into tables
</programlisting>
<para>
- Also, do not forget to copy the <literal>mysql</literal> database
- because that is where the <literal>user</literal>,
+ Also, do not forget to copy the <literal>mysql</literal>
+ database because that is where the <literal>user</literal>,
<literal>db</literal>, and <literal>host</literal> grant tables
are stored. You might have to run commands as the MySQL
<literal>root</literal> user on the new machine until you have
@@ -14336,15 +13742,15 @@
<para>
If you are downgrading within the same release series (for
- example, from 4.0.20 to 4.0.19) the general rule is that you just
- have to install the new binaries on top of the old ones. There is
- no need to do anything with the databases. As always, however,
- it is always a good idea to make a backup.
+ example, from 4.0.20 to 4.0.19) the general rule is that you
+ merely need to install the new binaries on top of the old ones.
+ There is no need to do anything with the databases. As always,
+ however, it is always a good idea to make a backup.
</para>
<para>
The following items form a checklist of things you should do
- whenever you perform an downgrade:
+ whenever you perform a downgrade:
</para>
<itemizedlist>
@@ -14378,7 +13784,7 @@
incompatibilities in table storage formats. In this case, you can
use <command>mysqldump</command> to dump your tables before
downgrading. After downgrading, reload the dump file using
- <command>mysql</command> or <literal>mysqlimport</literal> to
+ <command>mysql</command> or <command>mysqlimport</command> to
re-create your tables. See <xref linkend="upgrading-to-arch"/> for
examples.
</para>
@@ -14427,102 +13833,6 @@
</orderedlist>
- <section id="downgrading-to-4-1">
-
- <title id='title-downgrading-to-4-1'>&title-downgrading-to-4-1;</title>
-
- <para>
- After downgrading from MySQL 5.0, you may see the following
- information in the <filename>mysql.err</filename> file:
- </para>
-
-<programlisting>
-Incorrect information in file: './mysql/user.frm'
-</programlisting>
-
- <para>
- In this case, you can do the following:
- </para>
-
- <orderedlist>
-
- <listitem>
- <para>
- Start MySQL 5.0.4 (or newer).
- </para>
- </listitem>
-
- <listitem>
- <para>
- Run <command>mysql_fix_privilege_tables</command>, which
- will change the <literal>mysql.user</literal> table to a
- format that both MySQL 4.1 and 5.0 can use.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Stop the MySQL server.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Start MySQL 4.1.
- </para>
- </listitem>
-
- </orderedlist>
-
- <para>
- If the preceding procedure fails, then you should be able to do
- the following instead:
- </para>
-
- <orderedlist>
-
- <listitem>
- <para>
- Start MySQL 5.0.4 (or newer).
- </para>
- </listitem>
-
- <listitem>
- <para>
- Run <command>mysqldump --opt --add-drop-table mysql >
- /tmp/mysql.dump</command>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Stop the MySQL server.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Start MySQL 4.1 with the <option>--skip-grant</option>
- option.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Run <command>mysql mysql < /tmp/mysql.dump</command>.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Run <command>mysqladmin flush-privileges</command>.
- </para>
- </listitem>
-
- </orderedlist>
-
- </section>
-
<section id="downgrading-to-4-0">
<title id='title-downgrading-to-4-0'>&title-downgrading-to-4-0;</title>
@@ -14550,7 +13860,7 @@
</programlisting>
<para>
- In the special case that you're downgrading
+ In the special case that you are downgrading
<literal>MyISAM</literal> tables, no special treatment is
necessary if all columns in the tables contain only numeric
columns or string columns (<literal>CHAR</literal>,
@@ -14583,6 +13893,17 @@
<title id='title-operating-system-specific-notes'>&title-operating-system-specific-notes;</title>
+<!--
+ TODO: Most of the material on Unix variants is badly dated, e.g.:
+ - Linux: 2.2 kernel (most distros in 2005 using 2.6)
+ - FreeBSD: Refers to 3/4 as current and 5.0 as future when latest
+ release in mid-2005 is 5.4.
+ - BSDi: Refers to 3.1 when version 4.0 was current in 2001
+
+ All of this material needs to be overhauled; references to
+ anything more than 2-3 years old should likely be cut? [js]
+-->
+
<section id="linux">
<title id='title-linux'>&title-linux;</title>
@@ -14613,18 +13934,19 @@
<para>
<emphasis role="bold">Warning:</emphasis> We have seen some
strange problems with Linux 2.2.14 and MySQL on SMP systems.
- We also have reports from some MySQL users that they have
- encountered serious stability problems using MySQL with kernel
- 2.2.14. If you are using this kernel, you should upgrade to
- 2.2.19 (or newer) or to a 2.4 kernel. If you have a
- multiple-CPU box, then you should seriously consider using 2.4
+ Some MySQL users have also reported that they have encountered
+ serious stability problems using MySQL with kernel 2.2.14. If
+ you are using this kernel, you should upgrade to 2.2.19 (or
+ newer) or to a 2.4 or 2.6 kernel. If you have a multiple-CPU
+ machine, then you should seriously consider using 2.4 or 2.6
because it gives you a significant speed boost. Your system
- should be more stable.
+ should also be more stable.
</para>
-<!-- TODO: this is not really an "issue"; put in a FAQ somewhere: -->
-
-<!-- "Why do I always see at least three mysqld processes on Linux?" -->
+<!--
+ TODO: this is not really an "issue"; put in a FAQ somewhere:
+ "Why do I always see at least three mysqld processes on Linux?"
+-->
<para>
When using LinuxThreads, you should see a minimum of three
@@ -14657,11 +13979,11 @@
</para>
<para>
- The binary release is linked with <literal>-static</literal>,
+ The binary release is linked with <option>-static</option>,
which means you do not normally need to worry about which
version of the system libraries you have. You need not install
LinuxThreads, either. A program linked with
- <literal>-static</literal> is slightly larger than a
+ <option>-static</option> is slightly larger than a
dynamically linked program, but also slightly faster (3-5%).
However, one problem with a statically linked program is that
you cannot use user-defined functions (UDFs). If you are going
@@ -14681,7 +14003,7 @@
<literal>glibc</literal> unfortunately depends on some
external libraries to implement hostname resolution and
<literal>getpwent()</literal>, even when compiled with
- <literal>-static</literal>. These problems manifest themselves
+ <option>-static</option>. These problems manifest themselves
in two ways:
</para>
@@ -14707,7 +14029,7 @@
instead. If you are using an old version of MySQL that
does not support <option>--force</option>, you must
manually remove the <literal>resolveip</literal> test in
- <literal>mysql_install</literal> using an editor.
+ <literal>mysql_install_db</literal> using a text editor.
</para>
</listitem>
@@ -14786,23 +14108,23 @@
are running Linux on an x86 machine, in most cases it is much
better for you to just use our binary. We link our binaries
against the best patched version of <literal>glibc</literal>
- we can come up with and with the best compiler options, in an
- attempt to make it suitable for a high-load server. For a
- typical user, even for setups with a lot of concurrent
- connections or tables exceeding the 2GB limit, our binary is
- the best choice in most cases. After reading the following
- text, if you are in doubt about what to do, try our binary
- first to see whether it meets your needs. If you discover that
- it is not good enough, then you may want to try your own
- build. In that case, we would appreciate a note about it so
- that we can build a better binary next time.
+ we can find and with the best compiler options, in an attempt
+ to make it suitable for a high-load server. For a typical
+ user, even for setups with many concurrent connections or
+ tables exceeding the 2GB limit, our binary is the best choice
+ in most cases. After reading the following text, if you are in
+ doubt about what to do, try our binary first to see whether it
+ meets your needs. If you discover that it is not good enough,
+ then you may want to try your own build. In that case, we
+ would appreciate a note about it so that we can build a better
+ binary next time.
</para>
<para>
MySQL uses LinuxThreads on Linux. If you are using an old
Linux version that does not have <literal>glibc2</literal>, you
must install LinuxThreads before trying to compile MySQL. You
- can get LinuxThreads at
+ can obtain LinuxThreads at
<ulink url="http://dev.mysql.com/downloads/os-linux.html"/>.
</para>
@@ -14817,7 +14139,7 @@
<para>
Note that Linux kernel and the LinuxThread library can by
- default only have 1,024 threads. If you plan to have more than
+ default have only 1,024 threads. If you plan to have more than
1,000 concurrent connections, you need to make some changes to
LinuxThreads:
</para>
@@ -14931,8 +14253,8 @@
<listitem>
<para>
Link clients with the
- <literal>-Wl,r/full/path/to/libmysqlclient.so</literal>
- flag rather than with <literal>-Lpath</literal>).
+ <option>-Wl,r/full/path/to/libmysqlclient.so</option>
+ flag rather than with <option>-Lpath</option>).
</para>
</listitem>
@@ -15002,7 +14324,7 @@
<para>
If MySQL cannot open enough files or connections, it may be
- that you haven't configured Linux to handle enough files.
+ that you have not configured Linux to handle enough files.
</para>
<para>
@@ -15071,7 +14393,7 @@
each individual thread stack, but small enough to keep the
stack of some threads from running into the global
<command>mysqld</command> data. Unfortunately, as we have
- experimentally discovered, the Linux implementation of
+ discovered, the Linux implementation of
<literal>mmap()</literal> successfully unmaps a mapped region
if you ask it to map out an address currently in use, zeroing
out the data on the entire page instead of returning an error.
@@ -15168,7 +14490,7 @@
<para>
If you see a dead <command>mysqld</command> server process
with <command>ps</command>, this usually means that you have
- found a bug in MySQL or you have a corrupted table. See
+ found a bug in MySQL or that you have a corrupted table. See
<xref linkend="crashing"/>.
</para>
@@ -15193,9 +14515,9 @@
<para>
MySQL requires <literal>libc</literal> Version 5.4.12 or
- newer. It is known to work with <literal>libc</literal> 5.4.46.
- <literal>glibc</literal> Version 2.0.6 and later should also
- work. There have been some problems with the
+ newer. It is known to work with <literal>libc</literal>
+ 5.4.46. <literal>glibc</literal> Version 2.0.6 and later
+ should also work. There have been some problems with the
<literal>glibc</literal> RPMs from Red Hat, so if you have
problems, check whether there are any updates. The
<literal>glibc</literal> 2.0.7-19 and 2.0.7-29 RPMs are known
@@ -15210,7 +14532,7 @@
greater than 128KB for this call. To fix the problem, start
<command>mysqld</command> with the
<option>--thread-stack=192K</option> option. (Use
- <literal>-O thread_stack=192K</literal> before MySQL 4.) This
+ <option>-O thread_stack=192K</option> before MySQL 4.) This
stack size is the default on MySQL 4.0.10 and above, so you
should not see the problem.
</para>
@@ -15310,24 +14632,6 @@
compiling.
</para>
-<!-- this patch is no longer available, and this is an ancient version of -->
-
-<!-- Linux for the Sparc -->
-
-<!-- Some problems will require patching your Linux installation. The patch can -->
-
-<!-- be found at -->
-
-<!-- @uref{http://www.mysql.com/Downloads/patches/Linux-sparc-2.0.30.diff}. -->
-
-<!-- This patch is against the Linux distribution @file{sparclinux-2.0.30.tar.gz} -->
-
-<!-- that is available at @code{vger.rutgers.edu} (a version of Linux that was -->
-
-<!-- never merged with the official 2.0.30). You must also install LinuxThreads -->
-
-<!-- Version 0.6 or newer. -->
-
</section>
<section id="linux-alpha">
@@ -15362,16 +14666,16 @@
<para>
Note that until MySQL version 3.23.52 and 4.0.2, we optimized
the binary for the current CPU only (by using the
- <literal>-fast</literal> compile option). This means that for
+ <option>-fast</option> compile option). This means that for
older versions, you can use our Alpha binaries only if you
have an Alpha EV6 processor.
</para>
<para>
- For all following releases, we added the <literal>-arch
- generic</literal> flag to our compile options, which makes
- sure that the binary runs on all Alpha processors. We also
- compile statically to avoid library problems. The
+ For all subsequent releases, we added the <literal>-arch
+ generic</literal> flag to our compile options, which ensures
+ that the binary runs on all Alpha processors. We also compile
+ statically to avoid library problems. The
<command>configure</command> command looks like this:
</para>
@@ -15505,12 +14809,12 @@
<title id='title-mac-os-x-10-x'>&title-mac-os-x-10-x;</title>
<para>
- MySQL should work without bigger problems on Mac OS X 10.x
+ MySQL should work without major problems on Mac OS X 10.x
(Darwin).
</para>
<para>
- The known problems are:
+ Known issues are:
</para>
<itemizedlist>
@@ -15616,7 +14920,7 @@
<para>
On Solaris, you may run into trouble even before you get the
- MySQL distribution unpacked! Solaris <command>tar</command>
+ MySQL distribution unpacked. Solaris <command>tar</command>
cannot handle long filenames, so you may see an error like this
when you unpack MySQL:
</para>
@@ -15713,7 +15017,7 @@
<para>
To create a 64-bit Solaris binary using <command>gcc</command>,
- add <literal>-m64</literal> to <literal>CFLAGS</literal> and
+ add <option>-m64</option> to <option>CFLAGS</option> and
<literal>CXXFLAGS</literal> and remove
<option>--enable-assembler</option> from the
<command>configure</command> line. This works only with MySQL
@@ -15724,7 +15028,7 @@
<para>
In the MySQL benchmarks, we got a 4% speedup on an UltraSPARC
when using Forte 5.0 in 32-bit mode compared to using
- <command>gcc</command> 3.2 with the <literal>-mcpu</literal>
+ <command>gcc</command> 3.2 with the <option>-mcpu</option>
flag.
</para>
@@ -15737,10 +15041,10 @@
<para>
When using Solaris 10 for x86_64, you should mount any
filesystems on which you intend to store InnoDB files with the
- <literal>forcedirectio</literal> option. (By default mounting is
+ <option>forcedirectio</option> option. (By default mounting is
done without this option.) Failing to do so will cause a
- significant drop in performance when using the InnoDB storage
- engine on this platform.
+ significant drop in performance when using the
+ <literal>InnoDB</literal> storage engine on this platform.
</para>
<para>
@@ -15769,7 +15073,7 @@
<para>
If you turn on <literal>__STDC__</literal> with the
- <literal>-Xc</literal> option, the Sun compiler cannot compile
+ <option>-Xc</option> option, the Sun compiler cannot compile
with the Solaris <filename>pthread.h</filename> header file.
This is a Sun bug (broken compiler or broken include file).
</para>
@@ -15777,7 +15081,7 @@
<para>
If <command>mysqld</command> issues the following error message
when you run it, you have tried to compile MySQL with the Sun
- compiler without enabling the <literal>-mt</literal>
+ compiler without enabling the <option>-mt</option>
multi-thread option:
</para>
@@ -15786,7 +15090,7 @@
</programlisting>
<para>
- Add <literal>-mt</literal> to <literal>CFLAGS</literal> and
+ Add <option>-mt</option> to <literal>CFLAGS</literal> and
<literal>CXXFLAGS</literal> and recompile.
</para>
@@ -15860,14 +15164,14 @@
<listitem>
<para>
Link clients with the
- <literal>-Wl,r/full/path/to/libmysqlclient.so</literal> flag
- rather than with <literal>-Lpath</literal>).
+ <option>-Wl,r<replaceable>/full/path/to/</replaceable>libmysqlclient.so</option> flag
+ rather than with <option>-Lpath</option>).
</para>
</listitem>
<listitem>
<para>
- Copy <literal>libmysqclient.so</literal> to
+ Copy <filename>libmysqclient.so</filename> to
<filename>/usr/lib</filename>.
</para>
@@ -15894,7 +15198,7 @@
<para>
If you have problems with <command>configure</command> trying to
- link with <literal>-lz</literal> when you do not have
+ link with <option>-lz</option> when you do not have
<literal>zlib</literal> installed, you have two options:
</para>
@@ -15921,7 +15225,7 @@
<para>
If you are using <command>gcc</command> and have problems with
loading user-defined functions (UDFs) into MySQL, try adding
- <literal>-lgcc</literal> to the link line for the UDF.
+ <option>-lgcc</option> to the link line for the UDF.
</para>
<para>
@@ -15944,7 +15248,7 @@
<para>
You might try starting the server with the
<option>--back_log=50</option> option as a workaround for
- this. (Use <literal>-O back_log=50</literal> before MySQL 4.)
+ this. (Use <option>-O back_log=50</option> before MySQL 4.)
</para>
<para>
@@ -15971,8 +15275,9 @@
</para>
<para>
- Solaris 2.7 / 2.8 has some bugs in the include files. You may
- see the following error when you use <command>gcc</command>:
+ Solaris 2.7 and 2.8 have some bugs in the include files. You
+ may see the following error when you use
+ <command>gcc</command>:
</para>
<programlisting>
@@ -16011,7 +15316,7 @@
<para>
If you get the following errors when you run
<command>make</command>, it is because
- <command>configure</command> didn't detect the
+ <command>configure</command> did not detect the
<filename>curses.h</filename> file (probably because of the
error in <filename>/usr/include/widec.h</filename>):
</para>
@@ -16054,7 +15359,7 @@
</itemizedlist>
<para>
- If your linker cannot find <literal>-lz</literal> when linking
+ If your linker cannot find <option>-lz</option> when linking
client programs, the problem is probably that your
<filename>libz.so</filename> file is installed in
<filename>/usr/local/lib</filename>. You can fix this problem
@@ -16153,7 +15458,7 @@
FreeBSD 4.x or newer is recommended for running MySQL, because
the thread package is much more integrated. To get a secure
and stable system, you should use only FreeBSD kernels that
- are marked <literal>-RELEASE</literal>.
+ are marked <option>-RELEASE</option>.
</para>
<para>
@@ -16246,7 +15551,7 @@
that a 'kill' for a thread will not take affect until the
thread does it a new command
</para>
-
+<!-- TODO: Current FreeBSD -RELEASE is 5.4... -->
<para>
This is probably a signal handling problem in the thread
library where the signal does not break a pending read.
@@ -16289,16 +15594,17 @@
<para>
If you get an error from <command>make install</command> that
it cannot find <filename>/usr/include/pthreads</filename>,
- <command>configure</command> didn't detect that you need
+ <command>configure</command> did not detect that you need
MIT-pthreads. To fix this problem, remove
<filename>config.cache</filename>, then re-run
<command>configure</command> with the
<option>--with-mit-threads</option> option.
</para>
-<!-- TODO: This is not really FreeBSD-specific. Move to general -->
-
-<!-- troubleshooting section. -->
+<!--
+ TODO: This is not really FreeBSD-specific. Move to general
+ troubleshooting section.
+-->
<para>
Be sure that your name resolver setup is correct. Otherwise,
@@ -16370,37 +15676,6 @@
</section>
- <section id="openbsd-2-8">
-
- <title id='title-openbsd-2-8'>&title-openbsd-2-8;</title>
-
- <para>
- Our users have reported that OpenBSD 2.8 has a threading bug
- that causes problems with MySQL. The OpenBSD Developers have
- fixed the problem, but as of January 25, 2001, it is only
- available in the <quote>-current</quote> branch. The symptoms
- of this threading bug are slow response, high load, high CPU
- usage, and crashes.
- </para>
-
- <para>
- If you get an error like <literal>Error in accept:: Bad file
- descriptor</literal> or error 9 when trying to open tables or
- directories, the problem is probably that you have not
- allocated enough file descriptors for MySQL.
- </para>
-
- <para>
- In this case, try starting <command>mysqld_safe</command> as
- <literal>root</literal> with the following options:
- </para>
-
-<programlisting>
-mysqld_safe --user=mysql --open-files-limit=2048 &
-</programlisting>
-
- </section>
-
<section id="bsdi">
<title id='title-bsdi'>&title-bsdi;</title>
@@ -16550,11 +15825,11 @@
<title id='title-other-unix-notes'>&title-other-unix-notes;</title>
-<!-- TODO: perhaps subsume the next two nodes under an HP-UX @subsection -->
-
-<!-- (like the Mac OS X notes @subsubsections), and move it to before -->
-
-<!-- "Other Unix Notes". -->
+<!--
+ TODO: perhaps subsume the next two nodes under an HP-UX section
+ (like the Mac OS X notes @subsubsections), and move it to before
+ "Other Unix Notes".
+-->
<section id="hp-ux-10-20">
@@ -16569,7 +15844,7 @@
<para>
We recommend using <command>gcc</command> 2.95 on HP-UX. Do not
- use high optimization flags (such as <literal>-O6</literal>)
+ use high optimization flags (such as <option>-O6</option>)
because they may not be safe on HP-UX.
</para>
@@ -16726,7 +16001,7 @@
<para>
Another reason for not being able to compile is that you
- didn't define the <literal>+DD64</literal> flags as just
+ did not define the <literal>+DD64</literal> flags as just
described.
</para>
@@ -16778,10 +16053,10 @@
</para>
<para>
- If you change the <literal>-O3</literal> to
- <literal>-O2</literal> in the preceding
+ If you change the <option>-O3</option> to
+ <option>-O2</option> in the preceding
<command>configure</command> line, you must also remove the
- <literal>-qstrict</literal> option. This is a limitation in
+ <option>-qstrict</option> option. This is a limitation in
the IBM C compiler.
</para>
@@ -16789,7 +16064,7 @@
If you are using <command>gcc</command> or
<command>egcs</command> to compile MySQL, you
<emphasis>must</emphasis> use the
- <literal>-fno-exceptions</literal> flag, because the exception
+ <option>-fno-exceptions</option> flag, because the exception
handling in <command>gcc</command>/<command>egcs</command> is
not thread-safe! (This is tested with <command>egcs</command>
1.1.) There are also some known problems with IBM's assembler
@@ -16811,20 +16086,20 @@
</programlisting>
<para>
- The <literal>-Wa,-many</literal> option is necessary for the
+ The <option>-Wa,-many</option> option is necessary for the
compile to be successful. IBM is aware of this problem but is
in no hurry to fix it because of the workaround that is
available. We do not know if the
- <literal>-fno-exceptions</literal> is required with
+ <option>-fno-exceptions</option> is required with
<command>gcc</command> 2.95, but because MySQL does not use
exceptions and the option generates faster code, we recommend
- that you should always use it with <command>egcs</command> /
+ that you should always use it with <command>egcs</command> and
<command>gcc</command>.
</para>
<para>
If you get a problem with assembler code, try changing the
- <literal>-mcpu=<replaceable>xxx</replaceable></literal> option
+ <option>-mcpu=<replaceable>xxx</replaceable></option> option
to match your CPU. Typically <literal>power2</literal>,
<literal>power</literal>, or <literal>powerpc</literal> may
need to be used. Alternatively, you might need to use
@@ -16834,24 +16109,24 @@
</para>
<para>
- If you do not know what your CPU is, execute a <literal>uname
- -m</literal> command. It produces a string that looks like
- <literal>000514676700</literal>, with a format of
+ If you do not know which CPU is present, execute a
+ <literal>uname -m</literal> command. It produces a string that
+ looks like <literal>000514676700</literal> whose format is
<literal>xxyyyyyymmss</literal> where <literal>xx</literal>
and <literal>ss</literal> are always <literal>00</literal>,
<literal>yyyyyy</literal> is a unique system ID and
<literal>mm</literal> is the ID of the CPU Planar. A chart of
these values can be found at
<ulink url="http://www16.boulder.ibm.com/pseries/en_US/cmds/aixcmds5/uname.htm"/>.
-
-<!-- older URL... -->
</para>
-
-<!-- @uref{http://publib.boulder.ibm.com/doc_link/en_US/a_doc_lib/cmds/aixcmds5/uname.htm}. -->
+<!--
+ older URL:
+ http://publib.boulder.ibm.com/doc_link/en_US/a_doc_lib/cmds/aixcmds5/uname.htm
+-->
<para>
- This gives you a machine type and a machine model you can use
- to determine what type of CPU you have.
+ This gives you a machine type and model which you can use to
+ determine what type of CPU you have.
</para>
<para>
@@ -16870,8 +16145,8 @@
</programlisting>
<para>
- This does not affect the performance of MySQL, but has the side
- effect that you cannot kill clients that are
+ This does not affect the performance of MySQL, but has the
+ side effect that you cannot kill clients that are
<quote>sleeping</quote> on a connection with
<command>mysqladmin kill</command> or <command>mysqladmin
shutdown</command>. Instead, the client dies when it issues
@@ -16921,10 +16196,10 @@
<para>
If you need to allocate a lot of memory to the
- <command>mysqld</command> process, it is not enough to just use
- <command>ulimit -d unlimited</command>. You may also have to
- modify <command>mysqld_safe</command> to add a line something
- like this:
+ <command>mysqld</command> process, it is not sufficient merely
+ to use <command>ulimit -d unlimited</command>. You may also
+ have to modify <command>mysqld_safe</command>, adding a line
+ something like this:
</para>
<programlisting>
@@ -16932,7 +16207,8 @@
</programlisting>
<para>
- You can find more information about using a lot of memory at
+ You can find more information about using very large amounts
+ of memory at
<ulink url="http://publib16.boulder.ibm.com/pseries/en_US/aixprggd/genprogc/lrg_prg_support.htm"/>.
</para>
@@ -16977,15 +16253,15 @@
<para>
If you are using <command>egcs</command> 1.1.2 on Digital
Unix, you should upgrade to <command>gcc</command> 2.95.2,
- because <command>egcs</command> on DEC has some serious bugs!
+ because <command>egcs</command> on DEC has some serious bugs.
</para>
<para>
When compiling threaded programs under Digital Unix, the
- documentation recommends using the <literal>-pthread</literal>
+ documentation recommends using the <option>-pthread</option>
option for <command>cc</command> and <command>cxx</command>
- and the <literal>-lmach -lexc</literal> libraries (in addition
- to <literal>-lpthread</literal>). You should run
+ and the <option>-lmach -lexc</option> libraries (in addition
+ to <option>-lpthread</option>). You should run
<command>configure</command> something like this:
</para>
@@ -17024,7 +16300,7 @@
</programlisting>
<para>
- <literal>nohup</literal> causes the command following it to
+ <command>nohup</command> causes the command following it to
ignore any <literal>SIGHUP</literal> signal sent from the
terminal. Alternatively, start the server by running
<command>mysqld_safe</command>, which invokes
@@ -17082,7 +16358,7 @@
</programlisting>
</section>
-
+<!-- TODO: Is this still relevant? [js] -->
<section id="alpha-dec-osf1">
<title id='title-alpha-dec-osf1'>&title-alpha-dec-osf1;</title>
@@ -17196,8 +16472,8 @@
</programlisting>
<para>
- This does not affect the performance of MySQL, but has the side
- effect that you cannot kill clients that are
+ This does not affect the performance of MySQL, but has the
+ side effect that you cannot kill clients that are
<quote>sleeping</quote> on a connection with
<command>mysqladmin kill</command> or <command>mysqladmin
shutdown</command>. Instead, the client dies when it issues
@@ -17218,10 +16494,10 @@
<para>
To fix this, you should change to the <literal>sql</literal>
directory and do a cut-and-paste of the last
- <command>gcc</command> line, but change <literal>-O3</literal>
- to <literal>-O0</literal> (or add <literal>-O0</literal>
+ <command>gcc</command> line, but change <option>-O3</option>
+ to <option>-O0</option> (or add <option>-O0</option>
immediately after <command>gcc</command> if you do not have any
- <literal>-O</literal> option on your compile line). After this
+ <option>-O</option> option on your compile line). After this
is done, you can just change back to the top-level directory
and run <command>make</command> again.
</para>
@@ -17236,8 +16512,8 @@
If you are using Irix Version 6.5.3 or newer,
<command>mysqld</command> is able to create threads only if
you run it as a user that has <literal>CAP_SCHED_MGT</literal>
- privileges (such as <literal>root</literal>) or give the
- <command>mysqld</command> server this privilege with the
+ privileges (such as <literal>root</literal>) or if you give
+ the <command>mysqld</command> server this privilege with the
following shell command:
</para>
@@ -17267,6 +16543,9 @@
<para>
SGI recommends that you install all the patches on this page
as a set:
+ </para>
+
+ <para>
<ulink url="http://support.sgi.com/surfzone/patches/patchset/6.2_indigo.rps.html"/>
</para>
@@ -17443,7 +16722,7 @@
<listitem>
<para>
- Use <literal>mkdev aio</literal> or the Hardware/Kernel
+ Use <command>mkdev aio</command> or the Hardware/Kernel
Manager to enable support for asynchronous I/O and relink
the kernel. To allow users to lock down memory for use
with this type of I/O, update the aiomemlock(F) file. This
@@ -17592,8 +16871,8 @@
</programlisting>
<para>
- The 13 is what has been found to be the best for both Progress
- and MySQL.
+ <literal>13</literal> has been found to be best for both
+ Progress and MySQL.
</para>
<para>
@@ -17620,10 +16899,10 @@
</para>
<para>
- You need to at least install the "SCO OpenServer Linker and
- Application Development Libraries" or the OpenServer
+ You need to at least install the SCO OpenServer Linker and
+ Application Development Libraries or the OpenServer
Development System to use <command>gcc</command>. You cannot
- just use the GCC Dev system without installing one of these.
+ use the GCC Dev system without installing one of these.
</para>
<para>
@@ -17722,8 +17001,8 @@
<listitem>
<para>
MySQL should automatically detect FSU Pthreads and link
- <command>mysqld</command> with <literal>-lgthreads
- -lsocket -lgthreads</literal>.
+ <command>mysqld</command> with <option>-lgthreads -lsocket
+ -lgthreads</option>.
</para>
</listitem>
@@ -17875,7 +17154,7 @@
<listitem>
<para>
- <literal>cp -p Makefile to Makefile.sav</literal>
+ <literal>cp -p Makefile Makefile.sav</literal>
</para>
</listitem>
@@ -18129,12 +17408,12 @@
</para>
<para>
- The following is a guide to setting PATH on OpenServer 6. If
- the user wants the traditional OpenServer 5.0.x then
- <literal>PATH</literal> should be <filename>/bin</filename>
- first. If the user wants LFS support then the path should be
- <filename>/u95/bin:/bin</filename>. If the user want UnixWare
- 7 support first then the path would be
+ The following is a guide to setting <literal>PATH</literal> on
+ OpenServer 6. If the user wants the traditional OpenServer
+ 5.0.x then <literal>PATH</literal> should be
+ <filename>/bin</filename> first. If the user wants LFS support
+ then the path should be <filename>/u95/bin:/bin</filename>. If
+ the user want UnixWare 7 support first then the path would be
<filename>/udk/bin:/u95/bin:/bin:</filename>.
</para>
@@ -18196,7 +17475,7 @@
<listitem>
<para>
- <literal>cp -p Makefile to Makefile.sav</literal>
+ <literal>cp -p Makefile Makefile.sav</literal>
</para>
</listitem>
@@ -18323,8 +17602,8 @@
</programlisting>
<para>
- 13 is what has been found to be the best for both Progress and
- MySQL.
+ <literal>13</literal> has been found to be best for both
+ Progress and MySQL.
</para>
<para>
@@ -18353,6 +17632,8 @@
</section>
</section>
+
+<!-- TODO: Cut OS/2 section? [js] -->
<section id="os-slash-2">
@@ -18385,9 +17666,9 @@
</para>
<para>
- The <filename>INSTALL.CMD</filename> script must be run from
- OS/2's own <filename>CMD.EXE</filename> and may not work with
- replacement shells such as <filename>4OS2.EXE</filename>.
+ The <command>INSTALL.CMD</command> script must be run from
+ OS/2's own <command>CMD.EXE</command> and may not work with
+ replacement shells such as <command>4OS2.EXE</command>.
</para>
<para>
@@ -18438,18 +17719,6 @@
</section>
- <section id="beos">
-
- <title id='title-beos'>&title-beos;</title>
-
- <para>
- We have in the past talked with some BeOS developers who have
- said that MySQL is 80% ported to BeOS, but we haven't heard from
- them in a while.
- </para>
-
- </section>
-
</section>
<section id="perl-support">
@@ -18711,8 +17980,8 @@
</itemizedlist>
<para>
- This procedure should work at least with ActiveState Perl
- Version 5.6.
+ This procedure should work with ActiveState Perl Version 5.6 and
+ newer.
</para>
<para>
@@ -18758,7 +18027,7 @@
<listitem>
<para>
- Compile the <literal>DBD::mysql</literal> distribution with
+ Compile the <literal>DBD::mysql</literal> distribution using
<literal>perl Makefile.PL -static -config</literal> rather
than <literal>perl Makefile.PL</literal>.
</para>
@@ -18774,7 +18043,7 @@
<listitem>
<para>
- Modify the <literal>-L</literal> options used to compile
+ Modify the <option>-L</option> options used to compile
<literal>DBD::mysql</literal> to reflect the actual location
of <filename>libmysqlclient.so</filename>.
</para>
@@ -18818,14 +18087,14 @@
</itemizedlist>
<para>
- Note that you may also need to modify the <literal>-L</literal>
+ Note that you may also need to modify the <option>-L</option>
options if there are other libraries that the linker fails to
find. For example, if the linker cannot find
<literal>libc</literal> because it is in
<filename>/lib</filename> and the link command specifies
- <literal>-L/usr/lib</literal>, change the <literal>-L</literal>
- option to <literal>-L/lib</literal> or add
- <literal>-L/lib</literal> to the existing link command.
+ <option>-L/usr/lib</option>, change the <option>-L</option>
+ option to <option>-L/lib</option> or add
+ <option>-L/lib</option> to the existing link command.
</para>
<para>
@@ -18841,11 +18110,11 @@
</programlisting>
<para>
- Add <literal>-L/usr/lib/gcc-lib/... -lgcc</literal> to the link
+ Add <option>-L/usr/lib/gcc-lib/... -lgcc</option> to the link
command when the <filename>mysql.so</filename> library gets
built (check the output from <command>make</command> for
<filename>mysql.so</filename> when you compile the Perl client).
- The <literal>-L</literal> option should specify the pathname of
+ The <option>-L</option> option should specify the pathname of
the directory where <filename>libgcc.a</filename> is located on
your system.
</para>
@@ -18870,7 +18139,7 @@
</programlisting>
<para>
- This means that you need to include the <literal>-lz</literal>
+ This means that you need to include the <option>-lz</option>
compression library on the link line. That can be done by
changing the following line in the file
<filename>lib/DBD/mysql/Install.pm</filename>:
--- 1.32/refman-4.1/mysql-database-administration.xml 2005-08-06 08:55:11 +10:00
+++ 1.33/refman-4.1/mysql-database-administration.xml 2005-08-08 04:01:20 +10:00
@@ -2679,7 +2679,8 @@
<para>
Use the 3.20 protocol for compatibility with some very old
- clients. See <xref linkend="upgrading-from-3-20"/>.
+ clients.
+ <!-- See <xref linkend="upgrading-from-3-20"/>. -->
</para>
</listitem>
--- 1.66/refman-4.1/news.xml 2005-07-25 12:22:48 +10:00
+++ 1.67/refman-4.1/news.xml 2005-08-08 04:01:20 +10:00
@@ -64,14 +64,6 @@
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="refman-common/news-3.23.xml"/>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="refman-common/news-3.22.xml"/>
-
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="refman-common/news-3.21.xml"/>
-
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="refman-common/news-3.20.xml"/>
-
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="refman-common/news-3.19.xml"/>
-
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="refman-common/news-innodb.xml"/>
<section id="mysql-cluster-change-history">
--- 1.46/refman/titles.ent 2005-08-07 12:16:35 +10:00
+++ 1.47/refman/titles.ent 2005-08-08 04:01:21 +10:00
@@ -3,7 +3,7 @@
<!ENTITY current-version "5.0.9-beta"><!-- "5.0.9-beta" --><!-- Current MySQL Version - update with new releases -->
<!ENTITY title-news-5-0-12 "Changes in release 5.0.12 (Not yet released)"><!-- "Changes in release 5.0.12 (Not yet released)" -->
<!ENTITY title-news-5-0-11 "Changes in release 5.0.11 (Not yet released)"><!-- "Changes in release 5.0.11 (Not yet released)" -->
-<!ENTITY title-news-5-0-10 "Changes in release 5.0.10 (Not yet released)"><!-- "Changes in release 5.0.10 (Not yet released)" -->
+<!ENTITY title-news-5-0-10 "Changes in release 5.0.10 (27 July 2005)"><!-- "Changes in release 5.0.10 (27 July 2005)" -->
<!ENTITY title-news-5-0-9 "Changes in release 5.0.9 (15 July 2005)"><!-- "Changes in release 5.0.9 (Not yet released)" -->
<!ENTITY title-news-4-0-26 "Changes in release 4.0.26 (Not yet released)"><!-- "Changes in release 4.0.26 (Not yet released)" -->
<!ENTITY title-news-4-0-9 "Changes in release 4.0.9 (09 Jan 2003)"><!-- "Changes in release 4.0.9 (09 Jan 2003)" -->
--- 1.3/refman-5.0/installing.xml 2005-08-06 16:27:21 +10:00
+++ 1.4/refman-5.0/installing.xml 2005-08-08 04:01:21 +10:00
@@ -14687,40 +14687,6 @@
</section>
- <section id="openbsd-2-8">
-
- <title id='title-openbsd-2-8'>&title-openbsd-2-8;</title>
-
-<!-- TODO: This is definitely ancient. -->
-
-<!--
- <para>
- Our users have reported that OpenBSD 2.8 has a threading bug that
- causes problems with MySQL. The OpenBSD Developers have fixed the
- problem, but as of January 25, 2001, it is only available in the
- <quote>-current</quote> branch. The symptoms of this threading bug
- are slow response, high load, high CPU usage, and crashes.
- </para>
--->
-
- <para>
- If you get an error like <literal>Error in accept:: Bad file
- descriptor</literal> or error 9 when trying to open tables or
- directories, the problem is probably that you have not
- allocated enough file descriptors for MySQL.
- </para>
-
- <para>
- In this case, try starting <command>mysqld_safe</command> as
- <literal>root</literal> with the following options:
- </para>
-
-<programlisting>
-mysqld_safe --user=mysql --open-files-limit=2048 &
-</programlisting>
-
- </section>
-
<section id="bsdi">
<title id='title-bsdi'>&title-bsdi;</title>
--- 1.1/refman-5.0/titles.ent 2005-08-06 03:11:30 +10:00
+++ 1.2/refman-5.0/titles.ent 2005-08-08 04:01:21 +10:00
@@ -3,8 +3,9 @@
<!ENTITY title-refman-previous "MySQL 4.1 Reference Manual"><!-- "MySQL 4.1 Reference Manual" --><!-- "MySQL 4.1 Reference Manual" --><!-- Title of Manual previous edition -->
<!ENTITY current-version "5.0.9-beta"><!-- "5.0.9-beta" --><!-- Current MySQL Version - update with new releases -->
<!ENTITY title-news-5-1-1 "Changes in release 5.1.1 (Not yet released)"><!-- "Changes in release 5.1.0 (Not yet released)" -->
-<!ENTITY title-news-5-0-11 "Changes in release 5.0.11 (Not yet released)"><!-- "Changes in release 5.0.10 (Not yet released)" -->
-<!ENTITY title-news-5-0-10 "Changes in release 5.0.10 (Not yet released)"><!-- "Changes in release 5.0.10 (Not yet released)" -->
+<!ENTITY title-news-5-0-12 "Changes in release 5.0.12 (Not yet released)"><!-- "Changes in release 5.0.12 (Not yet released)" -->
+<!ENTITY title-news-5-0-11 "Changes in release 5.0.11 (Not yet released)"><!-- "Changes in release 5.0.11 (Not yet released)" -->
+<!ENTITY title-news-5-0-10 "Changes in release 5.0.10 (27 July 2005)"><!-- "Changes in release 5.0.10 (27 July 2005)" -->
<!ENTITY title-news-5-0-9 "Changes in release 5.0.9 (15 July 2005)"><!-- "Changes in release 5.0.9 (Not yet released)" -->
<!ENTITY title-news-4-0-26 "Changes in release 4.0.26 (Not yet released)"><!-- "Changes in release 4.0.26 (Not yet released)" -->
<!ENTITY title-news-4-0-9 "Changes in release 4.0.9 (09 Jan 2003)"><!-- "Changes in release 4.0.9 (09 Jan 2003)" -->
| Thread |
|---|
| • bk commit - mysqldoc@docsrva tree (jon:1.3195) | jon | 7 Aug |