2.3 Installation de MySQL avec une distribution source
2 Installer MySQL
Manuel de Référence MySQL 4.1 : Version Française
. Installation depuis les sources : présentation . 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 . Compiler les clients MySQL sous Windows
|
2.3.3 Installer à partir de l'arbre source de développement
Attention
: Vous devez lire cette partie seulement si vous voulez nous aider
à tester notre nouveau code. Si vous souhaitez seulement faire fonctionner MySQL sur
votre système, vous devriez utiliser la distribution d'une version standard (que ce
soit une distribution sous forme de sources ou de binaire).
Pour obtenir notre arbre source de développement le plus réent, suivez les instructions suivantes :
- Téléchargez
BitKeeper
à partir de
http://www.bitmover.com/cgi-bin/download.cgi . Vous aurez besoin de
Bitkeeper
2.0 ou supérieur pour accéder à notre dépôt.
- Suivez les instructions pour l'installer.
- Après avoir installé
BitKeeper
, commencez par vous déplacer dans
le répertoire à partir duquel vous voulez travailler, et lancez l'une des
commandes suivantes pour dupliquer la branche MySQL de votre choix :Pour dupliquer la branche 3.23, utilisez cette commande :
shell> bk clone bk://work.mysql.com:7000 mysql-3.23
|
Pour dupliquer la branche 4.0, utilisez cette commande :
shell> bk clone bk://work.mysql.com:7001 mysql-4.0
|
Pour dupliquer la branche 4.1, utilisez cette commande :
shell> bk clone bk://work.mysql.com:7004 mysql-4.1
|
Pour dupliquer la branche 5.0, utilisez cette commande :
shell> bk clone bk://mysql.bkbits.net/mysql-5.0 mysql-5.0
|
Dans l'exemple précédent, les sources seront respectivement placées dans les dossiers
mysql-3.23/
,
mysql-4.0/
,
mysql-4.1/
ou
mysql-5.0/
,
de votre dossier courant.
Si vous êtes derrière un firewall et que vous ne pouvez utiliser que des
connexions HTTP, vous pouvez aussi accéder à
BitKeeper
via HTTP.
Si vous devez utiliser un serveur proxy, assignez la variable d'environnement
http_proxy
pour qu'elle pointe sur votre proxy :
shell> export http_proxy="http://your.proxy.server:8080/"
|
Puis, remplacez le protocole
bk://
par
http://
lors de votre
export. Par exemple :
shell> bk clone http://mysql.bkbits.net/mysql-4.1 mysql-4.1
|
Le premier téléchargement de l'arbre source peut prendre un certain temps,
selon la vitesse de votre connexion. Soyez patients.
- Vous aurez besoin de GNU
make
,
autoconf
2.53 (ou plus récent),
automake
1.5,
libtool
1.4 et
m4
pour lancer
la prochaine série de commandes. Même si la plupart des systèmes
d'exploitation sont livrés avec leur propre implémentation de
make
, les chances sont fortes pour que la compilation échoue
avec des messages d'erreur étranges. Par conséquent, il est fortement
recommandé d'utiliser GNU
make
(parfois aussi appelé
gmake
).Heureusement, d'autres systèmes d'exploitation sont livrés avec
les utilitaires GNU, ou propose des paquets facilement installables.
Dans tous les cas, vous pouvez les télécharger sur ces sites :
Si vous essayez ded configurer MySQL 4.1 ou plus récent, vous aurez besoin de
GNU
bison
1.75 ou plus récent. Les anciennes versions de
bison
peuvent indiquer cette erreur :
sql_yacc.yy:@: fatal error: maximum table size (32767) exceeded
|
Note : la taille maximale de la table n'est pas dépassée.
L'erreur est causée par un bug dans les versions plus anciennes
de
bison
.Les versions de MySQL avant la version 4.1 peuvent aussi se compiler avec
d'autres versions de
yacc
(par exemple, BSD
yacc
91.7.30).
Pour les versions plus récentes, GNU
bison
est une obligation.
Les commandes typiques nécessaires pour compiler MySQL sont présentées
ci-dessous. La première commande
cd
change le dossier de travail :
remplacez
mysql-4.0
avec le bon nom de dossier.
shell> cd mysql-4.0 shell> bk -r get -Sq shell> aclocal; autoheader; autoconf; automake; shell> ./configure # Ajoutez ici vos options favorites shell> make
|
Les lignes de commande qui passent dans les dossiers
innobase
et
bdb/dist
sont utilisées pour configurer
InnoDB
et
Berkeley DB (
BDB
). Vous pouvez omettre ces lignes si vous n'avez pas
besoin du support
InnoDB
ou
BDB
.
Si vous obtenez des erreurs étranges pendant cette étape, vérifiez bien
que vous avez vraiment installé
libtool
!
Une collection de nos scripts de configuration les plus courants de trouve dans le
sous-répertoire
BUILD/
. Si vous êtes fainéants, vous pouvez
utiliser
BUILD/compile-pentium-debug
. Pour compiler sur une architecture
différente, modifiez ce script en enlevant les drapeaux spécifiques au
Pentium.
- Quand la compilation est achevée, lancez
make install
. Prenez garde sur des
machines de production. Cette commande pourrait écraser votre installation actuelle.
Si vous avez une autre installation de MySQL, nous vous recommandons de lancer
./configure
avec des valeurs des options
prefix
,
with-tcp-port
, et
unix-socket-path
différentes de celles de votre serveur de production.
- Torturez votre nouvelle installation et tentez de faire planter les nouvelles
fonctionnalités. Commencez par lancer
make test
. Suites de tests MySQL .
- Si vous avez échoué avec l'étape
make
et que la distribution ne
compile pas, envoyez un rapport sur le site http://bugs.mysql.com/ . Si
vous avez installé la dernière version des indispensables outils GNU, et
qu'ils échouent dans l'analyse de vos fichiers de configuration, envoyez aussi un
rapport. D'autre part, si vous exécutez
aclocal
et que vous obtenez l'erreur
command not found
ou un problème du même type, n'envoyez pas de rapport.
A la place, assurez vous que les outils nécessaires sont bien installés et que
votre variable
PATH
est configurée de telle façon que votre
interpréteur de commandes les trouvent.
- Après la première opération
bk clone
pour obtenir l'arbre
source, vous devez lancer régulièrement
bk pull
pour obtenir les mises
à jour.
- Vous pouvez examiner l'historique des changements de l'arbre avec toutes les
différences en utilisant
bk sccstool
. Si vous apercevez des différences
anormales ou sur lesquelles vous avez des questions, n'hésitez pas à envoyer
un e-mail aux listes internes. Les listes de diffusion MySQL .
De même, si vous pensez avoir
une meilleure méthode pour traiter un problème, envoyez un e-mail
accompagné d'un patch à la même adresse.
bk diffs
vous fournira un patch après que vous ayez fait vos changements aux
sources. Si vous n'avez pas le temps de coder votre idée, envoyez en juste une
description.
- BitKeeper
dispose d'une aide agréable à laquelle vous pouvez
accéder via
bk helptool
.
- Veuillez noter que chaque commit (
bk ci
ou
bk citool
) postera un message avec
un aperçu des changements à notre liste de diffusion interne, à la
façon habituelle des propositions openlogging.org avec seulement les commentaires des
changements. Généralement, vous n'aurez pas besoin d'utiliser commit (l'arbre
public interdisant les
bk push
), mais plutôt d'utiliser la méthode
bk diffs
décrite plus haut.
Vous pouvez aussi naviguer dans les fichiers d'historiques, les commentaires
et le code source en ligne. Par exemple, pour lire ses informations pour
MySQL 4.1, allez à http://mysql.bkbits.net:8080/mysql-4.1 .
Le manuel est dans un module séparé, qui peut être obtenu comme ceci :
shell> bk clone bk://mysql.bkbits.net/mysqldoc mysqldoc
|
Il y a aussi des arbres BitKeeper pour
MySQL Control Center
et
Connector/ODBC
. Ils sont disponibles comme ceci :Pour obtenir le
MySQL Control Center
, utilisez cette commande :
shell> bk clone http://mysql.bkbits.net/mysqlcc mysqlcc
|
Pour obtenir le
Connector/ODBC
, utilisez cette commande :
shell> bk clone http://mysql.bkbits.net/myodbc3 myodbc3
|
|