Services webmasters
Partenaires
Jeux concours gratuits
 
Appliquer des patches
<<<
Options habituelles de configure Installer à partir de l'arbre source de développement
>>>

2.3 Installer MySQL à partir des sources
2 Installation de MySQL
 Manuel de Référence MySQL 4.1 : Version Française

Vue d'ensemble de l'installation rapide
Appliquer des patches
->Options habituelles de configure
Installer à partir de l'arbre source de développement
Problèmes de compilation?
Notes relatives aux MIT-pthreads
La distribution source Windows

2.3.3 Options habituelles de configure

Le script configure vous donne un bon moyen de contrôler la configuration de votre distribution MySQL. Habituellement, vous faites cela en spécifiant les options dans la ligne de commande de configure . Vous pouvez aussi affecter le comportement de configure en utilisant certaines variables d'environnement. Variables d'environnement MySQL . Pour une liste des options supportées par configure , exécutez cette commande :

shell> ./configure --help
Les options de configure les plus utilisées sont décrites ici :
  • Pour ne compiler que les librairies et programmes clients, et non le serveur, utilisez l'option --without-server :
    
    shell> ./configure --without-server
    
    Si vous n'avez pas de compilateur C++, mysql ne compilera pas (c'est le programme client qui requière C++). Dans ce cas, vous pouvez supprimer la partie de code dans configure qui vérifie l'existence d'un compilateur C++, puis exécuter ./configure avec l'option --without-server . La compilation essaiera encore de construire mysql , mais vous pouvez ignorer les messages d'erreurs concernant mysql.cc . (Si make stoppe, essayez make -k pour dire de continuer même si on rencontre des erreurs.)
  • Si vous voulez obtenir une librairie MySQL embarquée ( libmysqld.a ) vous devez utiliser l'option --with-embedded-server .
  • Si vous ne voulez pas que vos fichiers de log et bases de données soient dans /usr/local/var , utiliser une commande configure se rapprochant de l'une des commandes suivantes :
    
    shell> ./configure --prefix=/usr/local/mysql
    shell> ./configure --prefix=/usr/local \
               --localstatedir=/usr/local/mysql/data
    La première change le préfixe de l'installation pour que tout soit installé dans /usr/local/mysql au lieu de /usr/local par défaut. La seconde commande préserve le préfixe d'installation par défaut mais change le répertoire par défaut pour les bases de données (normalement /usr/local/var ) en /usr/local/mysql/data . Après que vous ayez compilé MySQL, vous pouvez changer ces options dans les fichiers d'options. Fichier d'options my.cnf .
  • Si vous utilisez Unix et que vous voulez que la socket de MySQL soit à un autre endroit que celui par défaut (normalement /tmp ou /var/run ) utilisez une commande configure comme celle-ci :
    
    shell> ./configure --with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock
    
    Notez que le fichier donné doit avoir un chemin absolu ! Vous pourrez aussi changer le chemin vers mysql.sock plus tard en utilisant les fichiers d'options de MySQL. Comment protéger /tmp/mysql.sock .
  • Si vous voulez compiler des programmes liés statiquement (par exemple, pour créer une distribution binaire, pour obtenir plus de vitesse, ou pour résoudre des problèmes avec quelques distributions RedHat Linux), exécutez configure de la manière suivante :
    
    shell> ./configure --with-client-ldflags=-all-static \
               --with-mysqld-ldflags=-all-static
  • Si vous utilisez gcc et n'avez pas libg++ ou libstdc++ d'installés, vous pouvez dire à configure d'utiliser gcc en tant que compilateur C++ :
    
    shell> CC=gcc CXX=gcc ./configure
    
    Quand vous utilisez gcc en tant que compilateur C++, aucune tentative de liaison avec libg++ ou libstdc++ ne sera effectuée. Il peut être bon d'utiliser cette méthode même si vous avez les librairies citées, car quelques versions de celles-ci ont causé des problèmes à des utilisateurs MySQL par le passé.Voici quelques variables d'environnement à définir selon le compilateur que vous utilisez :
    Compilateur Options recommandées
    gcc 2.7.2.1 CC=gcc CXX=gcc CXXFLAGS="-O3 -felide-constructors"
    egcs 1.0.3a CC=gcc CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti"
    gcc 2.95.2 CFLAGS="-O3 -mpentiumpro" CXX=gcc CXXFLAGS="-O3 -mpentiumpro \ -felide-constructors -fno-exceptions -fno-rtti"
    pgcc 2.90.29 ou plus récent CFLAGS="-O3 -mpentiumpro -mstack-align-double" CXX=gcc \ CXXFLAGS="-O3 -mpentiumpro -mstack-align-double -felide-constructors \ -fno-exceptions -fno-rtti"
    Dans la plupart des cas, vous pouvez obtenir un binaire MySQL raisonnablement optimal en utilisant les options de la table précédente et en ajoutant les options suivantes aux lignes de configuration :
    
    --prefix=/usr/local/mysql --enable-assembler \
    --with-mysqld-ldflags=-all-static
    En d'autres termes, la ligne de configuration ressemble à ce qui suit pour les versions récentes de gcc :
    
    CFLAGS="-O3 -mpentiumpro" CXX=gcc CXXFLAGS="-O3 -mpentiumpro \
    -felide-constructors -fno-exceptions -fno-rtti" ./configure \
    --prefix=/usr/local/mysql --enable-assembler \
    --with-mysqld-ldflags=-all-static
    Les binaires que nous fournissons sur le site de MySQL à http://www.mysql.com/ sont tous compilés avec une optimisation totale et devraient être parfaits pour la plupart des utilisateurs. Binaires MySQL compilés par MySQL AB . Il y'a quelques choses que vous pouvez modifier pour rendre le binaire encore plus rapide, mais cela est réservé aux utilisateurs avancés. Comment la compilation et les liaisons affectent la vitesse de MySQL .

    Si la génération échoue et produit des erreurs disant que votre compilateur ou outil de liaison n'est pas capable de créer la librairie partagée libmysqlclient.so.# ( '#' étant un numéro de version), vous pouvez contourner ce problème en donnant l'option --disable-shared à configure . Dans ce cas, configure ne générera pas de librairie partagée libmysqlclient.so.# .

  • Vous pouvez configurer MySQL pour qu'il n'utilise pas les valeurs DEFAULT pour les colonnes non- NULL (c'est à dire, les colonnes qui ne peuvent être NULL ). Cela fait générer des erreurs aux requêtes INSERT si vous ne spécifiez pas explicitement une valeur pour toutes les colonnes non- NULL . Pour supprimer l'utilisation des valeurs par défaut, exécutez configure de cette façon :
    
    shell> CXXFLAGS=-DDONT_USE_DEFAULT_FIELDS ./configure
    
  • Par défaut, MySQL utilise le jeu de caractères ISO-8859-1 (Latin1). Pour changer le jeu par défaut, utilisez l'option --with-charset :
    
    shell> ./configure --with-charset=CHARSET
    
    CHARSET peut être l'un des big5 , cp1251 , cp1257 , czech , danish , dec8 , dos , euc_kr , gb2312 , gbk , german1 , hebrew , hp8 , hungarian , koi8_ru , koi8_ukr , latin1 , latin2 , sjis , swe7 , tis620 , ujis , usa7 , ou win1251ukr . Le jeu de caractères utilisé pour les données et le stockage .Si vous voulez convertir les caractères entre le serveur et le client, regardez du côté de la commande SET CHARACTER SET . Syntaxe de SET .

    Attention : Si vous changez les jeux de caractères après avoir crée des tables, vous devrez exécuter myisamchk -r -q --set-character-set=charset sur chaque table. Vous index pourraient être stockés de manière incorrecte sinon. (Cela peut survenir si vous installez MySQL, créez quelques tables, puis reconfigurez MySQL pour qu'il utilise un jeu de caractères différent et le réinstallez.)

    Avec l'option --with-extra-charsets=LIST vous pouvez définir les jeux de caractères additionnels à compiler dans le serveur.

    Ici LIST est soit une liste de jeux de caractères séparés par des espaces, soit complex pour inclure tous les jeux de caractères ne pouvant être chargés dynamiquement, ou encore all pour inclure tous les jeux de caractères dans les binaires.

  • Pour configurer MySQL avec le code de débogage, utilisez l'option --with-debug :
    
    shell> ./configure --with-debug
    
    Cela alloue un vérificateur d'allocation de mémoire qui peut trouver quelques erreurs et qui fournit des informations sur ce qui se produit. Déboguer un serveur MySQL .
  • Si vos programmes clients utilisent les threads, vous avez besoin de compiler une version sûre pour les threads de la librairie du client MySQL avec l'option de configuration --enable-thread-safe-client . Cela créera une librairie libmysqlclient_r avec laquelle vous devez lier vos applications threadées. Comment créer un client thréadé .
  • Les options relatives à un système d'exploitation particulier peuvent être trouvées dans la section spécifique aux systèmes de ce manuel. Remarques spécifiques aux systèmes d'exploitation .

<< Options habituelles de configure >>
Appliquer des patches Installer MySQL à partir des sources Installer à partir de l'arbre source de développement
Services webmasters
Les manuels
 
CoursPHP.com - Reproduction interdite -