MySQL requière au moins la version 2.0 de Linux.
Attention : Certains utilisateurs de MySQL nous ont avertis qu'ils ont rencontré de graves problèmes de stabilité avec MySQL et le noyau 2.2.14 de Linux. Si vous utilisez ce noyau, vous devez mettre à jour à la 2.2.19 (ou plus récent) ou a un noyau 2.4. Si vous utilisez un ordinateur multi-processeurs, vous devriez sérieusement songer à passer au noyau 2.4 qui vous apportera de grandes performances niveau vitesse.
La version binaire est liée avec -static
,
ce qui signifie que normalement vous n'avez pas besoin de vous
soucier des versions des bibliothèques système que vous
avez. Vous n'avez pas besoin d'installer
LinuxThreads
non plus. Un programme lié
avec -static
est légèrement plus grand
qu'un programme liée dynamiquement mais aussi un peu plus
rapide (3-5%). Un problème, toutefois, est que vous ne pouvez
utiliser de fonctions définies par l'utilisateur avec un
programme lié statiquement. Si vous allez écrire ou utiliser
des fonctions UDF
(c'est réservé aux
développeurs C ou C++), vous devez compiler MySQL vous-même,
en utilisant les liaisons dynamiques.
Si vous utilisez un système basé sur libc
(au lieu de glibc2
), vous aurez
probablement quelques problèmes de résolution des noms
d'hôtes et des problèmes avec getpwnam()
avec les versions binaires. (Cela vient du fait que
glibc
dépend malheureusement de quelques
bibliothèques externes pour résoudre les noms d'hôtes et
getpwent()
, même quand elle est compilée
avec -static
). Dans ce cas, vous obtiendrez
probablement l'erreur suivante quand vous exécuterez
mysql_install_db
:
Sorry, the host 'xxxx' could not be looked up
ou l'erreur suivante quand vous essayez de démarrer
mysqld
avec l'option
--user
:
getpwnam: No such file or directory
Vous pouvez résoudre ce problème de la fa¸on suivante :
Obtenez une distribution des sources MySQL (un
distribution RPM
ou le
tar.gz
) et installez la à la place.
Exécutez mysql_install_db --force
;
cela n'exécutera pas le test resolveip
dans mysql_install_db
. Le mauvais
côté est que vous ne pourrez pas utiliser de noms
d'hôtes dans les tables de droits; vous devez utiliser
les adresses IP à la place (sauf pour
localhost
). Si vous utilisez une vielle
version de MySQL qui ne supporte pas
--force
, vous devez supprimer le test
resolveip
dans
mysql_install
à l'aide d'un éditeur.
Démarrez mysqld
avec
su
au lieu d'utiliser
--user
.
Le binaire Linux-Intel et les RPM
de MySQL
sont configurés pour la vitesse la plus grande possible. Nous
essayons toujours d'utiliser le compilateur le plus rapide
disponible.
Le support Perl de MySQL requière la version 5.004_03 de Perl ou plus récent.
Sur quelques version de Linux 2.2, vous pouvez obtenir
l'erreur Resource temporarily unavailable
quand vous faites beaucoup de nouvelles connexions à un
serveur mysqld
en utilisant TCP/IP.
Le problème est que Linux possède un délai entre votre
fermeture de la socket TCP/IP et sa libération par le
système. Vu qu'il y a un nombre fini de places pour les
branchements TCP/IP, vous obtiendrez l'erreur précédente si
vous essayez de faire beaucoup de connexions TCP/IP en peu de
temps, comme quand vous exécutez le benchmark MySQL
test-connect
via TCP/IP.
Nous avons envoyé des questions plusieurs fois à propos de ce problème à différentes listes de diffusions Linux mais n'avons jamais réussi à résoudre ce problème proprement.
Le seul correctif connu pour ce problème est d'utiliser des
connexions persistantes dans vos clients ou d'utiliser les
sockets, si vous utilisez le serveur de bases de données et
le client sur la même machine. Nous espérons que le noyau de
Linux 2.4
corrigera ce problème bientôt.
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.