(mysql.info.gz) Binary notes-Linux
Info Catalog
(mysql.info.gz) Linux-OS
(mysql.info.gz) Linux
(mysql.info.gz) Source notes-Linux
2.12.1.2 Linux Binary Distribution Notes
........................................
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.
The binary release is linked with `-static', 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
`-static' 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 can't use user-defined functions (UDFs). If
you are going to write or use UDFs (this is something for C or C++
programmers only), you must compile MySQL yourself using dynamic
linking.
A known issue with binary distributions is that on older Linux systems
that use `libc' (such as Red Hat 4.x or Slackware), you will get some
non-fatal problems with hostname resolution. If your system uses `libc'
rather than `glibc2', you probably will encounter some difficulties
with hostname resolution and `getpwnam()'. This happens because `glibc'
unfortunately depends on some external libraries to implement hostname
resolution and `getpwent()', even when compiled with `-static'. These
problems manifest themselves in two ways:
* You probably will see the following error message when you run
`mysql_install_db':
Sorry, the host 'XXXX' could not be looked up
You can deal with this by executing `mysql_install_db --force',
which will not execute the `resolveip' test in `mysql_install_db'.
The downside is that you can't use hostnames in the grant tables:
Except for `localhost', you must use IP numbers instead. If you
are using an old version of MySQL that doesn't support `--force',
you must manually remove the `resolveip' test in `mysql_install'
using an editor.
* You also may see the following error when you try to run `mysqld'
with the `--user' option:
getpwnam: No such file or directory
To work around this, start `mysqld' by using the `su' command
rather than by specifying the `--user' option. This causes the
system itself to change the user ID of the `mysqld' process so
that `mysqld' need not do so.
Another solution, which solves both problems, is to not use a binary
distribution. Get a MySQL source distribution (in RPM or `tar.gz'
format) and install that instead.
On some Linux 2.2 versions, you may get the error `Resource temporarily
unavailable' when clients make a lot of new connections to a `mysqld'
server over TCP/IP. The problem is that Linux has a delay between the
time that you close a TCP/IP socket and the time that the system
actually frees it. There is room for only a finite number of TCP/IP
slots, so you will encounter the resource-unavailable error if clients
attempt too many new TCP/IP connections during a short time. For
example, you may see the error when you run the MySQL `test-connect'
benchmark over TCP/IP.
We have inquired about this problem a few times on different Linux
mailing lists but have never been able to find a suitable resolution.
The only known "fix" is for the clients to use persistent connections,
or, if you are running the database server and clients on the same
machine, to use Unix socket file connections rather than TCP/IP
connections.
Info Catalog
(mysql.info.gz) Linux-OS
(mysql.info.gz) Linux
(mysql.info.gz) Source notes-Linux
automatically generated byinfo2html