Author: rthomsen
Date: 2012-08-15 00:01:58 -0600 (Wed, 15 Aug 2012)
New Revision: 10520

Modified:
   trunk/BOOK/general.ent
   trunk/BOOK/introduction/welcome/changelog.xml
   trunk/BOOK/server/databases/mysql.xml
Log:
MySQL 5.5.27 with improved instructions.

Modified: trunk/BOOK/general.ent
===================================================================
--- trunk/BOOK/general.ent      2012-08-14 22:00:47 UTC (rev 10519)
+++ trunk/BOOK/general.ent      2012-08-15 06:01:58 UTC (rev 10520)
@@ -3,13 +3,13 @@
 $Date$
 -->
 
-<!ENTITY day          "14">                   <!-- Always 2 digits -->
+<!ENTITY day          "15">                   <!-- Always 2 digits -->
 <!ENTITY month        "08">                   <!-- Always 2 digits -->
 <!ENTITY year         "2012">
 <!ENTITY copyrightdate "2001-&year;">
 <!ENTITY copyholder   "The BLFS Development Team">
 <!ENTITY version      "&year;-&month;-&day;">
-<!ENTITY releasedate  "August 14th, &year;">
+<!ENTITY releasedate  "August 15th, &year;">
 <!-- <!ENTITY releasedate  "November &day;st, &year;"> -->
 <!ENTITY pubdate      "&year;-&month;-&day;"> <!-- metadata req. by TLDP -->
 <!ENTITY blfs-version "svn">                  <!-- svn|[release #] -->
@@ -652,7 +652,7 @@
 
 <!-- Chapter 22 -->
 <!ENTITY db-version                   "5.3.21">
-<!ENTITY mysql-version                "5.5.25a">
+<!ENTITY mysql-version                "5.5.27">
 <!ENTITY postgresql-version           "9.1.4">
 <!ENTITY sqlite-version               "3.7.13">
 

Modified: trunk/BOOK/introduction/welcome/changelog.xml
===================================================================
--- trunk/BOOK/introduction/welcome/changelog.xml       2012-08-14 22:00:47 UTC 
(rev 10519)
+++ trunk/BOOK/introduction/welcome/changelog.xml       2012-08-15 06:01:58 UTC 
(rev 10520)
@@ -44,6 +44,16 @@
 
 -->
     <listitem>
+      <para>August 15th, 2012</para>
+      <itemizedlist>
+        <listitem>
+          <para>[rthomsen] - MySQL 5.5.27. Fixes
+          <ulink url="&blfs-ticket-root;3492">#3492</ulink>.</para>
+        </listitem>
+      </itemizedlist>
+    </listitem>
+
+    <listitem>
       <para>August 14th, 2012</para>
       <itemizedlist>
         <listitem>
@@ -243,11 +253,11 @@
       <para>August 1st, 2012</para>
       <itemizedlist>
         <listitem>
-          <para>[bdubbs] - Updated to bind-9.9.1-P2.  Fixes
+          <para>[bdubbs] - Updated to bind-9.9.1-P2. Fixes
           <ulink url="&blfs-ticket-root;3416">#3416</ulink>.</para>
         </listitem>
         <listitem>
-          <para>[bdubbs] - Updated to emacs-23.4.  Fixes
+          <para>[bdubbs] - Updated to emacs-23.4. Fixes
           <ulink url="&blfs-ticket-root;3409">#3409</ulink>.</para>
         </listitem>
         <listitem>

Modified: trunk/BOOK/server/databases/mysql.xml
===================================================================
--- trunk/BOOK/server/databases/mysql.xml       2012-08-14 22:00:47 UTC (rev 
10519)
+++ trunk/BOOK/server/databases/mysql.xml       2012-08-15 06:01:58 UTC (rev 
10520)
@@ -4,9 +4,9 @@
   <!ENTITY % general-entities SYSTEM "../../general.ent">
   %general-entities;
 
-  <!ENTITY mysql-download-http 
"&sources-anduin-http;/m/mysql-&mysql-version;.tar.gz">
-  <!ENTITY mysql-download-ftp  
"&sources-anduin-ftp;/m/mysql-&mysql-version;.tar.gz">
-  <!ENTITY mysql-md5sum        "0841fbc79872c5f467d8c8842f45257a">
+  <!ENTITY mysql-download-http 
"http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-&mysql-version;.tar.gz/from/http://cdn.mysql.com/";>
+  <!ENTITY mysql-download-ftp  " ">
+  <!ENTITY mysql-md5sum        "82baf46acfced6eef072e9d8a479c86e">
   <!ENTITY mysql-size          "24 MB">
   <!ENTITY mysql-buildsize     "930 MB (additional 170 MB to run the test 
suite)">
   <!ENTITY mysql-time          "4.4 SBU (Test suite is an additional 45 
minutes, only partially CPU dependent)">
@@ -33,12 +33,6 @@
     database server. It is a client/server implementation that consists of a
     server daemon and many different client programs and libraries.</para>
 
-    <para>There may be a more recent release available from the
-    <application>MySQL</application> home page. You can check
-    <ulink url="http://dev.mysql.com/"/> and probably use the
-    existing BLFS instructions. Note that versions other than the one shown
-    in the download URLs have not been tested in a BLFS environment.</para>
-
     &lfs71_checked;
 
     <bridgehead renderas="sect3">Package Information</bridgehead>
@@ -66,18 +60,19 @@
     <bridgehead renderas="sect3">Additional Downloads</bridgehead>
     <itemizedlist spacing="compact">
       <listitem>
-        <para>Optional patch: <ulink
-       
url="&patch-root;/mysql-&mysql-version;-embedded-library-shared-1.patch"/></para>
+        <para>Optional patch (required if building for Amarok): <ulink
+        
url="&patch-root;/mysql-&mysql-version;-embedded_library_shared-1.patch"/></para>
       </listitem>
       <listitem>
+        <para>Optional patch (required if building only the client): <ulink
+        
url="&patch-root;/mysql-&mysql-version;-client_only_fix-1.patch"/></para>
+      </listitem>
+      <listitem>
         <para>Optional Documentation (see tip below):
           <ulink url="http://dev.mysql.com/doc/"/>
         </para>
        </listitem>
     </itemizedlist>
-
-    <note><para>The patch is required only if you plan to install <application>
-    Amarok</application>.</para></note>
     
     <bridgehead renderas="sect3">MySQL Dependencies</bridgehead>
 
@@ -96,67 +91,75 @@
     <ulink url="&blfs-wiki;/mysql"/></para>
 
   </sect2>
-
+  
   <sect2 role="installation">
     <title>Installation of MySQL</title>
 
+    <sect3>
+    <title>Building</title>
+   
     <para>For security reasons, running the server as an unprivileged user
-    and group is strongly encouraged:</para>
+    and group is strongly encouraged. Issue the following (as
+    <systemitem class="username">root</systemitem>) to create the user and
+    group:</para>
 
 <screen role="root"><userinput>groupadd -g 40 mysql &amp;&amp;
 useradd -c "MySQL Server" -d /dev/null -g mysql -s /bin/false -u 40 
mysql</userinput></screen>
 
-    <note><para>There are a great many options available to
-    <userinput>cmake</userinput>.  Check the output of the `<userinput>cmake .
-    -LH</userinput>` for additional customization options.  See the <ulink
-    
url="http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html";>MySQL
-    Documentation</ulink> for a full listing of all options.</para></note>
+    <para>If the MySQL server is not needed, it is possible to build only the
+    client libraries of MySQL. To do this you need to apply the optional patch,
+    use the cmake option <parameter>-DWITHOUT_SERVER=ON</parameter> and the
+    client-only installation instructions below.</para>
 
- <note><para>If you plan to install <application>Amarok</application>, you 
need to 
- apply the optional patch, add the cmake option 
- <userinput>-DWITH_EMBEDDED_SERVER=ON</userinput> and add 
- <userinput>Embedded</userinput> to the <userinput>SEGMENTS</userinput> 
variable 
- below.</para></note>
+    <para>MySQL contains an embedded server library which can be enabled with
+    the cmake option <parameter>-DWITH_EMBEDDED_SERVER=ON</parameter>. By 
default
+    this server is built as a statically linked library,
+    <filename>libmysqld.a</filename>, but by applying the optional patch, a
+    shared version of this library can be built. The shared library is needed
+    by certain applications, such as <application>Amarok</application>.</para>
     
-    <para>Apply the optional patch:</para>
+    <para>There are numerous options available to
+    <userinput>cmake</userinput>. Check the output of the `<userinput>cmake .
+    -LH</userinput>` for additional customization options. See the <ulink
+    
url="http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html";>MySQL
+    Documentation</ulink> for a full listing of all options.</para>
     
- <screen><userinput>patch -Np1 -i 
../mysql-&mysql-version;-embedded-library-shared-1.patch</userinput></screen>   
 
+    <para>If you want the shared version of the embedded server library, apply
+    the patch:</para>
     
-    <para>Build and install <application>MySQL</application> by
+<screen><userinput>patch -Np1 -i 
../mysql-&mysql-version;-embedded_library_shared-1.patch</userinput></screen>
+
+     <para>If building the client-only, apply the patch:</para>
+
+<screen><userinput>patch -Np1 -i 
../mysql-&mysql-version;-client_only_fix-1.patch</userinput></screen>
+    
+    <para>Configure and build <application>MySQL</application> by
     running the following commands:</para>
     
-<screen><userinput> mkdir build &amp;&amp;                                 \
-cd    build &amp;&amp;                                 \
-cmake ..                                          \
-      -DSYSCONFDIR=/etc                           \
-      -DMYSQL_DATADIR=/srv/mysql                  \
-      -DINSTALL_MYSQLDATADIR=/srv/mysql           \
-      -DCMAKE_INSTALL_PREFIX=/usr                 \
-      -DINSTALL_BINDIR=bin                        \
-      -DINSTALL_SBINDIR=sbin                      \
-      -DINSTALL_DOCDIR=share/doc/mysql            \
-      -DINSTALL_DOCREADMEDIR=share/doc/mysql      \
-      -DINSTALL_INCLUDEDIR=include/mysql          \
-      -DINSTALL_INFODIR=share/info                \
-      -DINSTALL_LIBDIR=lib                        \
-      -DINSTALL_MANDIR=share/man                  \
-      -DINSTALL_MYSQLSHAREDIR=share/mysql         \
-      -DINSTALL_MYSQLTESTDIR=share/mysql-test     \
-      -DINSTALL_PLUGINDIR=lib/plugin              \
-      -DINSTALL_SCRIPTDIR=bin                     \
-      -DINSTALL_SHAREDIR=share/mysql              \
-      -DINSTALL_SQLBENCHDIR=share/mysql-bench     \
-      -DINSTALL_SUPPORTFILESDIR=share/mysql/support-files \
-      -DWITH_ZLIB=system                          \
-      -DWITH_SSL=system                           \
-      -DWITH_READLINE=system                      \
-      -DMYSQL_UNIX_ADDR=/var/run/mysql/mysql.sock \
-      -DWITH_ARCHIVE_STORAGE_ENGINE=1             \
-      -DWITH_FEDERATED_STORAGE_ENGINE=1           \
-      -DWITH_BLACKHOLE_STORAGE_ENGINE=1           \
-      -DMYSQL_MAINTAINER_MODE=OFF                 \
-      -DWITH_DEBUG=OFF                            &amp;&amp;
-
+<screen><userinput>mkdir build &amp;&amp;                                      
\
+cd build &amp;&amp;                                         \
+cmake -DCMAKE_INSTALL_PREFIX=/usr                   \
+      -DINSTALL_DOCDIR=share/doc/mysql              \
+      -DINSTALL_DOCREADMEDIR=share/doc/mysql        \
+      -DINSTALL_INCLUDEDIR=include/mysql            \
+      -DINSTALL_INFODIR=share/info                  \
+      -DINSTALL_MANDIR=share/man                    \
+      -DINSTALL_MYSQLDATADIR=/srv/mysql             \
+      -DINSTALL_MYSQLSHAREDIR=share/mysql           \
+      -DINSTALL_MYSQLTESTDIR=share/mysql/test       \
+      -DINSTALL_PLUGINDIR=lib/mysql                 \
+      -DINSTALL_SBINDIR=sbin                        \
+      -DINSTALL_SCRIPTDIR=bin                       \
+      -DINSTALL_SQLBENCHDIR=share/mysql/bench       \
+      -DINSTALL_SUPPORTFILESDIR=share/mysql/support \
+      -DMYSQL_DATADIR=/srv/mysql                    \
+      -DMYSQL_UNIX_ADDR=/var/run/mysql/mysql.sock   \
+      -DSYSCONFDIR=/etc                             \
+      -DWITH_PARTITION_STORAGE_ENGINE=OFF           \
+      -DWITH_PERFSCHEMA_STORAGE_ENGINE=OFF          \
+      -DWITH_READLINE=system                        \
+      -DWITH_SSL=system                             \
+      .. &amp;&amp;
 make</userinput></screen>
 
     <para>To test the results, issue: <command>make test-force 2>&amp;1 | tee
@@ -170,10 +173,15 @@
     fail.  Also, two tests will fail if ipv6 is not available in the kernel
     either as a module or built in.</para>
 
-    <note><para>The ssl tests may fail due to expired 
certifictes.</para></note>
+    <note><para>The SSL tests may fail due to expired 
certificates.</para></note>
+    </sect3>
+    
+    <sect3>
+      <title>Installation (server and client)</title>
+    
+      <para>To install the server and client, issue the following command (as
+      the <systemitem class="username">root</systemitem> user):</para>
 
-    <para>Now, as the <systemitem class="username">root</systemitem> 
user:</para>
-
 <screen role="root"><userinput>SEGMENTS="Client Server IniFiles ManPages 
SharedLibraries"
 SEGMENTS="$SEGMENTS Development Documentation Info Readme"
 
@@ -183,35 +191,60 @@
 
 unset SEGMENTS</userinput></screen>
 
-    <tip>
-      <para>The only documentation shipped in the source tarball are
+      <note><para>If you built the embedded server library add
+      <userinput>Embedded</userinput> to the <userinput>SEGMENTS</userinput>
+      variable above.</para></note>
+
+      <tip><para>The only documentation shipped in the source tarball are
       <filename>mysql.info</filename> and man pages. You can download various
       formats of the <application>MySQL</application> Reference Manual
-      from <ulink url="http://dev.mysql.com/doc/"/>.</para>
-    </tip>
+      from <ulink url="http://dev.mysql.com/doc/"/>.</para></tip>
 
-    <note><para>If you only want to build and install the 
-      <command>mysql</command> client, use:</para>
+    </sect3>
 
-      <screen><userinput>cmake . &amp;&amp;
-make mysqlclient libmysql</userinput></screen>
+    <sect3>
+      <title>Installation (client only)</title>
+      <para>If you would like to install the client software only, issue the
+      following (as <systemitem class="username">root</systemitem>):</para>
 
-      <para>Continue as root:</para>
+<screen role="root"><userinput>SEGMENTS="Client ManPages SharedLibraries"
+SEGMENTS="$SEGMENTS Development Documentation Info Readme"
 
-      <screen role="root"><userinput>make install</userinput></screen>
-    </note>
+for segment in $SEGMENTS; do
+   cmake -DCMAKE_INSTALL_COMPONENT=$segment -P cmake_install.cmake
+done
 
+unset SEGMENTS</userinput></screen>
+
+    </sect3>
+
   </sect2>
 
   <sect2 role="commands">
     <title>Command Explanations</title>
 
+    <para><parameter>-DWITH_&lt;engine&gt;_STORAGE_ENGINE=ON</parameter>: The 
default
+    instructions only build the innobase (InnoDB) storage engine. If other
+    storage engines are desired use this switch to enable them. Valid choices
+    are ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE, NDBCLUSTER,
+    PARTITION and PERFSCHEMA.</para>
+
+    <para><parameter>-DWITHOUT_SERVER=ON</parameter>: Use this switch if you 
don't
+    want the server and would like to build the client only.</para>
+
+    <para><parameter>-DWITH_EMBEDDED_SERVER=ON</parameter>: Use this switch to 
build
+    the embedded server library.</para>
+    
+    <para><parameter>-DWITH_SSL=system</parameter>: Use this switch to build
+    against a system version of SSL.</para>
+
     <para><command>cmake -DCMAKE_INSTALL_COMPONENT=$segment ...</command>: This
-    command installs the appropriate portion of the package.  Different
-    segemnts may be added or deleted as desired.  Valid segments are listed
-    with `<command>make list_install_components</command>`.  Note that the
-    'DataFiles' install segment does not honor the -DMYSQL_DATADIR or
-    -DINSTALL_MYSQLDATADIR statements.</para>
+    command installs the appropriate portion of the package. Different
+    segments may be added or deleted as desired.  Valid segments are listed
+    with `<command>make list_install_components</command>`.
+    Note that the 'DataFiles' install segment does not honor the
+    -DMYSQL_DATADIR or -DINSTALL_MYSQLDATADIR statements and installs datafiles
+    in <filename class="directory">/usr/data</filename>.</para>
 
   </sect2>
 
@@ -304,22 +337,19 @@
       <segtitle>Installed Directories</segtitle>
 
       <seglistitem>
-        <seg>comp_err, innochecksum, msql2mysql, my_print_defaults,
-        myisam_ftdump, myisamchk, myisamlog, myisampack, mysql,
-        mysql_client_test, mysql_config, mysql_convert_table_format,
-        mysql_create_system_tables, mysql_explain_log, mysql_find_rows,
-        mysql_fix_extensions, mysql_fix_privilege_tables, mysql_install_db,
-        mysql_secure_installation, mysql_setpermission, mysql_tableinfo,
-        mysql_tzinfo_to_sql, mysql_waitpid, mysql_zap, mysqlaccess, mysqladmin,
+        <seg>innochecksum, msql2mysql, my_print_defaults, myisam_ftdump,
+        myisamchk, myisamlog, myisampack, mysql, mysql_client_test,
+        mysql_config, mysql_convert_table_format, mysql_find_rows,
+        mysql_fix_extensions, mysql_install_db, mysql_plugin,
+        mysql_secure_installation, mysql_setpermission, mysql_tzinfo_to_sql,
+        mysql_upgrade, mysql_waitpid, mysql_zap, mysqlaccess, mysqladmin,
         mysqlbinlog, mysqlbug, mysqlcheck, mysqld, mysqld_multi, mysqld_safe,
-        mysqldump, mysqldumpslow, mysqlhotcopy, mysqlimport, mysqlmanager,
-        mysqlshow, mysqltest, mysqltestmanager, mysqltestmanager-pwgen,
-        mysqltestmanagerc, perror, replace, resolve_stack_dump, and
+        mysqldump, mysqldumpslow, mysqlhotcopy, mysqlimport, mysqlshow,
+        mysqlslap, mysqltest, perror, replace, resolve_stack_dump and
         resolveip</seg>
-        <seg>libdbug.a, libheap.a, libmyisam.a, libmyisammrg.a,
-        libmysqlclient.{so,a}, libmysqlclient_r.{so,a}, libmystrings.a,
-        libmysys.a, and libvio.a</seg>
-        <seg>/srv/mysql, /usr/include/mysql, /usr/lib/plugin, /usr/share/mysql 
and
+        <seg>libmysqlclient.{so,a}, libmysqlclient_r.{so,a}, libmysqlservices.a
+        and several in /usr/lib/mysql</seg>
+        <seg>/srv/mysql, /usr/include/mysql, /usr/lib/mysql, /usr/share/mysql 
and
         /var/run/mysql</seg>
       </seglistitem>
     </segmentedlist>
@@ -329,7 +359,7 @@
     <para>Descriptions of all the programs and libraries would be several
     pages long. Instead, consult the <filename>mysql.info</filename>
     documentation or the on-line reference manual at <ulink
-    url="http://dev.mysql.com/doc/refman/5.1/en/index.html"/>.</para>
+    url="http://dev.mysql.com/doc/refman/5.5/en/index.html"/>.</para>
 
     <para>The <application>Perl</application> DBI modules must be installed
     for some of the <application>MySQL</application> support programs to

-- 
http://linuxfromscratch.org/mailman/listinfo/blfs-book
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to