Commit 9e31c34b authored by unknown's avatar unknown

Fix RPM to be able to build MySQL-Max


Docs/manual.texi:
  Added information about mysqld-max
sql/gen_lex_hash.cc:
  Smaller table
support-files/mysql.spec.sh:
  Fix RPM
parent 9e4f92ec
...@@ -529,10 +529,10 @@ GEMINI Tables ...@@ -529,10 +529,10 @@ GEMINI Tables
INNODB Tables INNODB Tables
* INNODB overview:: * INNODB overview::
* INNODB start:: INNODB startup options * INNODB start:: INNODB startup options
* Using INNODB tables:: Using INNODB tables * Using INNODB tables:: Using INNODB tables
* INNODB restrictions:: Some restrictions on @code{INNODB} tables: * INNODB restrictions:: Some restrictions on @code{INNODB} tables:
MySQL Tutorial MySQL Tutorial
...@@ -648,6 +648,7 @@ Speed of Queries that Access or Update Data ...@@ -648,6 +648,7 @@ Speed of Queries that Access or Update Data
MySQL Utilites MySQL Utilites
* Programs:: What do the executables do? * Programs:: What do the executables do?
* mysqld-max::
* safe_mysqld:: safe_mysqld, the wrapper around mysqld * safe_mysqld:: safe_mysqld, the wrapper around mysqld
* mysqld_multi:: Program for managing multiple @strong{MySQL} servers * mysqld_multi:: Program for managing multiple @strong{MySQL} servers
* mysql:: The command line tool * mysql:: The command line tool
...@@ -5065,6 +5066,21 @@ If you want to install @strong{MySQL} at some explicit location. (The standard ...@@ -5065,6 +5066,21 @@ If you want to install @strong{MySQL} at some explicit location. (The standard
binary distributions are 'ready to run' at any place, but you may want binary distributions are 'ready to run' at any place, but you may want
to get even more flexibility). to get even more flexibility).
@item
To be able to satisfy different user requirements, we are providing two
different binary versions; One compiled with the non-transactional table
handlers, (a small, fast binary), and one configurated with the most
important extended options like transaction safe tables. Both versions
are compiled from the same source distribution. All native @code{MySQL}
clients can connect to both @strong{MySQL} versions.
The extended @strong{MySQL} binary distribution is marked with the
@code{-max} suffix and is configured with the same options as
@code{mysqld-max}. @xref{mysqld-max}.
If you are want to use the @code{MySQL-Max} RPM, you must first
install the standard @code{MySQL} RPM.
@item @item
If you want to configure @code{mysqld} with some extra feature that is NOT in If you want to configure @code{mysqld} with some extra feature that is NOT in
the standard binary distributions. Here is a list of the most common the standard binary distributions. Here is a list of the most common
...@@ -5398,6 +5414,12 @@ archives and have names like @file{mysql-VERSION-OS.tar.gz}, where ...@@ -5398,6 +5414,12 @@ archives and have names like @file{mysql-VERSION-OS.tar.gz}, where
indicates the type of operating system for which the distribution is intended indicates the type of operating system for which the distribution is intended
(for example, @code{pc-linux-gnu-i586}). (for example, @code{pc-linux-gnu-i586}).
@item
If you see a binary distribution marked with the @code{-max} prefix, this
means that the binary has support for transaction safe tables and other
features. @xref{mysqld-max}. Note that all binaries are built from
the same @strong{MySQL} source distribution.
@item @item
Add a user and group for @code{mysqld} to run as: Add a user and group for @code{mysqld} to run as:
...@@ -23174,7 +23196,7 @@ of both worlds. ...@@ -23174,7 +23196,7 @@ of both worlds.
* HEAP:: HEAP tables * HEAP:: HEAP tables
* BDB:: BDB or Berkeley_db tables * BDB:: BDB or Berkeley_db tables
* GEMINI:: GEMINI tables * GEMINI:: GEMINI tables
* INNODB:: INNODB tables * INNODB:: INNODB tables
@end menu @end menu
@node MyISAM, MERGE, Table types, Table types @node MyISAM, MERGE, Table types, Table types
...@@ -24169,10 +24191,10 @@ NuSphere is working on removing these limitations. ...@@ -24169,10 +24191,10 @@ NuSphere is working on removing these limitations.
@section INNODB Tables @section INNODB Tables
@menu @menu
* INNODB overview:: * INNODB overview::
* INNODB start:: INNODB startup options * INNODB start:: INNODB startup options
* Using INNODB tables:: Using INNODB tables * Using INNODB tables:: Using INNODB tables
* INNODB restrictions:: Some restrictions on @code{INNODB} tables: * INNODB restrictions:: Some restrictions on @code{INNODB} tables:
@end menu @end menu
@node INNODB overview, INNODB start, INNODB, INNODB @node INNODB overview, INNODB start, INNODB, INNODB
...@@ -30234,6 +30256,7 @@ We can find the result from crash-me on a lot of different databases at ...@@ -30234,6 +30256,7 @@ We can find the result from crash-me on a lot of different databases at
@menu @menu
* Programs:: What do the executables do? * Programs:: What do the executables do?
* mysqld-max::
* safe_mysqld:: safe_mysqld, the wrapper around mysqld * safe_mysqld:: safe_mysqld, the wrapper around mysqld
* mysqld_multi:: Program for managing multiple @strong{MySQL} servers * mysqld_multi:: Program for managing multiple @strong{MySQL} servers
* mysql:: The command line tool * mysql:: The command line tool
...@@ -30252,7 +30275,7 @@ to use it, and what you should use it for. ...@@ -30252,7 +30275,7 @@ to use it, and what you should use it for.
@cindex environment variables @cindex environment variables
@cindex programs, list of @cindex programs, list of
@node Programs, safe_mysqld, Tools, Tools @node Programs, mysqld-max, Tools, Tools
@section Overview of the Different MySQL Programs @section Overview of the Different MySQL Programs
All @strong{MySQL} clients that communicate with the server using the All @strong{MySQL} clients that communicate with the server using the
...@@ -30375,10 +30398,36 @@ shell> replace a b b a -- file1 file2 ... ...@@ -30375,10 +30398,36 @@ shell> replace a b b a -- file1 file2 ...
@end example @end example
@end table @end table
@cindex @code{mysqld-max}
@node mysqld-max, safe_mysqld, Programs, Tools
@section mysqld-max, An extended mysqld server
@code{mysqld-max} is the MySQL server (@code{mysqld}) configured with
the following configure options:
@multitable @columnfractions .3 .7
@item @strong{Option} @tab @strong{Comment}
@item --with-server-suffix=-max @tab Add a suffix to the @code{mysqld} version string.
@item --with-bdb @tab Support for Berkeley DB (BDB) tables
@item --with-innodb @tab Support for InnoDB tables.
@item CFLAGS=-DUSE_SYMDIR @tab Symbolic links support for Windows.
@end multitable
@code{safe_mysqld} will automaticly try to start any @code{mysqld} binary
with the @code{-max} prefix. This makes it very easy to test out a
another @code{mysqld} binary in an existing installation. Just
run @code{configure} with the options you want and then install the
new @code{mysqld} binary as @code{mysqld-max} in the same directory
where your old @code{mysqld} binary is. @xref{safe_mysqld}.
The @code{mysqld-max} RPM uses this @code{safe_mysqld} feature. It just
installs the @code{mysqld-max} executable and @code{safe_mysqld} will
automaticly use this when @code{mysqld} is restarted.
@cindex tools, safe_mysqld @cindex tools, safe_mysqld
@cindex scripts @cindex scripts
@cindex @code{safe_mysqld} @cindex @code{safe_mysqld}
@node safe_mysqld, mysqld_multi, Programs, Tools @node safe_mysqld, mysqld_multi, mysqld-max, Tools
@section safe_mysqld, the wrapper around mysqld @section safe_mysqld, the wrapper around mysqld
@code{safe_mysqld} is the recommended way to start a @code{mysqld} @code{safe_mysqld} is the recommended way to start a @code{mysqld}
...@@ -30386,6 +30435,13 @@ daemon on Unix. @code{safe_mysqld} adds some safety features such as ...@@ -30386,6 +30435,13 @@ daemon on Unix. @code{safe_mysqld} adds some safety features such as
restarting the server when an error occurs and logging run-time restarting the server when an error occurs and logging run-time
information to a log file. information to a log file.
If you don't use @code{--mysqld=#} or @code{--mysqld-version=#}
@code{safe_mysqld} will use an executable named @code{mysqld-max} if it
exists. If not, @code{safe_mysqld} will start @code{mysqld}.
This makes it very easy to test to use @code{mysqld-max} instead of
@code{mysqld}; Just copy @code{mysqld-max} to where you have
@code{mysqld} and it will be used.
Normally one should never edit the @code{safe_mysqld} script, but Normally one should never edit the @code{safe_mysqld} script, but
instead put the options to @code{safe_mysqld} in the instead put the options to @code{safe_mysqld} in the
@code{[safe_mysqld]} section in the @code{my.cnf} @code{[safe_mysqld]} section in the @code{my.cnf}
...@@ -30415,6 +30471,11 @@ Path to @code{mysqld} ...@@ -30415,6 +30471,11 @@ Path to @code{mysqld}
@item --log=path @item --log=path
@item --mysqld=mysqld-version @item --mysqld=mysqld-version
Name of the mysqld version in the @code{ledir} directory you want to start. Name of the mysqld version in the @code{ledir} directory you want to start.
@item --mysqld-version=version
Similar to @code{--mysqld=} but here you only give the suffix for mysqld.
For example if you use @code{--mysqld-version=max}, @code{safe_mysqld} will
start the @code{ledir/mysqld-max} version. If the argument to
@code{--mysqld-version} is empty, @code{ledir/mysqld} will be used.
@item --no-defaults @item --no-defaults
@item --open-files-limit=# @item --open-files-limit=#
Number of files @code{mysqld} should be able to open. Passed to @code{ulimit -n}. Note that you need to start @code{safe_mysqld} as root for this to work properly! Number of files @code{mysqld} should be able to open. Passed to @code{ulimit -n}. Note that you need to start @code{safe_mysqld} as root for this to work properly!
...@@ -42850,10 +42911,13 @@ not yet 100% confident in this code. ...@@ -42850,10 +42911,13 @@ not yet 100% confident in this code.
@appendixsubsec Changes in release 3.23.37 @appendixsubsec Changes in release 3.23.37
@itemize @bullet @itemize @bullet
@item @item
Added @code{--mysql-version} to @code{safe_mysqld}
@item
Changed @code{INNOBASE} to @code{INNODB} (because the @code{INNOBASE} Changed @code{INNOBASE} to @code{INNODB} (because the @code{INNOBASE}
name was already used). Note that all @code{configure} options and name was already used). All @code{configure} options and @code{mysqld}
@code{mysqld} start options are now using @code{innodb} instead of start options are now using @code{innodb} instead of @code{innobase}. This
@code{innobase}. means that you have to change any configuration files where you have used
@code{innobase} options before upgrading to this version!
@item @item
Fixed bug when using indexes on @code{CHAR(255) NULL} columns. Fixed bug when using indexes on @code{CHAR(255) NULL} columns.
@item @item
...@@ -472,7 +472,7 @@ int main(int argc,char **argv) ...@@ -472,7 +472,7 @@ int main(int argc,char **argv)
int error; int error;
MY_INIT(argv[0]); MY_INIT(argv[0]);
start_value=323040L; best_t1=8119093L; best_t2=4787828L; best_type=4; /* mode=4651 add=3 type: 0 */ start_value=6591595L; best_t1=6947666L; best_t2=6561864L; best_type=2; /* mode=4523 add=5 type: 0 */
if (get_options(argc,(char **) argv)) if (get_options(argc,(char **) argv))
exit(1); exit(1);
......
...@@ -211,6 +211,9 @@ mv Docs/manual.ps Docs/manual.ps.save ...@@ -211,6 +211,9 @@ mv Docs/manual.ps Docs/manual.ps.save
make distclean make distclean
mv Docs/manual.ps.save Docs/manual.ps mv Docs/manual.ps.save Docs/manual.ps
# RPM:s destroys Makefile.in files, so we generate them here
automake
BuildMySQL "--disable-shared" \ BuildMySQL "--disable-shared" \
"--with-mysqld-ldflags='-all-static'" \ "--with-mysqld-ldflags='-all-static'" \
"--with-client-ldflags='-all-static'" \ "--with-client-ldflags='-all-static'" \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment