MySQL needs at least Linux 2.0.
The binary release is linked with -static
, which means you not
normally need not worry about which version of the system libraries you
have. You need not install LinuxThreads, either. A program linked with
-static
is slightly bigger than a dynamically-linked program but
also slightly faster (3-5%). One problem however is that you can't use
user definable functions (UDFs) with a statically-linked program. If
you are going to write or use UDF functions (this is something only for
C or C++ programmers) you must compile MySQL yourself, using
dynamic linking.
If you are using a libc
-based system (instead of a glibc2
system), you will probably get some problems with hostname resolving and
getpwnam() with the binary release. (This is because glibc
unfortunately depends on some external libraries to resolve hostnames
and getwpent() , even when compiled with -static
). In this case
you probably get the following error message when you run
mysql_install_db
:
Sorry, the host 'xxxx' could not be looked up
or the following error when you try to run mysqld with the --user
option:
getpwnam: No such file or directory
You can solve this problem one of the following ways:
-
Get a MySQL source distribution (an RPM or the
tar
distribution) and install this instead.
-
Execute
mysql_install_db --force
; This will not execute the
resolveip
test in mysql_install_db
. The downside is that
you can't use host names in the grant tables; you must use IP numbers
instead (except for localhost
). If you are using an old MySQL
release that doesn't support --force
you have to remove the
resolveip
test in mysql_install
with an editor.
-
Start mysqld with
su
instead of using --user
.
The Linux-Intel binary and RPM releases of MySQL are configured
for the highest possible speed. We are always trying to use the fastest
stable compiler available.
MySQL Perl support requires Perl 5.004_03 or newer.