| 2.4.2 Procédures de post-installation sous Unix
 2.4 Procédure de post-installation
 2 Installer MySQL
 Manuel de Référence MySQL 4.1 : Version Française
 
 ->Problèmes d'exécution de mysql_install_db
 . Lancer et arrêter MySQL automatiquement
 . Problèmes de démarrage du serveur MySQL
 
 
 | 
  2.4.2.1 Problèmes d'exécution de mysql_install_db   
 
Le but du script  
mysql_install_db
  est de générer un nouveau
système de droits pour MySQL. Il ne modifiera aucune autre donnée!
Il ne fera rien du tout si vous avez des tables de droits installées.
Si vous voulez recréer vos tables de droits, vous devez éteindre le
serveur  
mysqld
 , s'il fonctionnait. Puis, renommez le dossier  
mysql
 
dans le dossier de données, sauvez le, et exécutez le script 
 
mysql_install_db
 . Par exemple : Cette section liste les problèmes que vous pourriez rencontrer lors
de l'exécution du script  
mysql_install_db
  :| 
shell> mv mysql-data-directory/mysql mysql-data-directory/mysql-oldshell> mysql_install_db --user=mysql
 | 
 
mysql_install_db
 n'installe pas les tables de droits
    
      
Vous réalisez que  
mysql_install_db
  n'arrive pas à installer les
tables de droits, et se termine sur ce message :  
Dans ce cas, examinez le fichier de log très attentivement! Le fichier
de log est situé dans le dossier  
XXXXXX
  indiqué dans le message d'erreur,
et il indiquera pourquoi  
mysqld
  n'a pas démarré. Si vous ne comprenez pas 
ce qui est arrivé, incluez le log dans votre message, lors de l'envoi du rapport
de bugs avec  
mysqlbug
 !
 Comment rapporter des bogues ou problèmes .| 
starting mysqld daemon with databases from XXXXXXmysql daemon ended
 | 
 
     Un démon 
mysqld
 fonctionne déjà
    
      
Dans ce cas, vous n'avez probablement pas exécuté  
mysql_install_db
  du tout.
Vous avez exécuté  
mysql_install_db
  une fois, lorsque vous avez installé
MySQL pour la première fois.
      
     Installer un second démon 
mysqld
 n'est pas possible lorsque le premier fonctionne.
    
      
Cela arrive lorsque vous avez une installation MySQL pre-existantes, mais que
vous voulez installer une autre version ailleurs (par exemple, pour faire des
tests ou simplement pour avoir deux installations). Généralement, le problème
survient lorsque le second serveur est démarré, et qu'il essaie d'utiliser
les mêmes ports et sockets que le premier. Dans ce cas, vous recevez des
message d'erreur tels que  :  
Pour des instructions sur la configuration de serveurs multiples, voyez
la section  Utiliser plusieurs serveurs sur la même machine .| 
Can't start server: Bind on TCP/IP port:Address already in use
 Can't start server: Bind on unix socket...
 | 
 
You don't have write access to 
/tmp
   Si vous n'avez pas les droits d'accès suffisant pour créer un fichier de socket
à l'endroit prévu ou les permissions pour créer un fichier temporaire
dans  
/tmp,
  vous allez avoir une erreur lors de l'utilisation de 
 
mysql_install_db
  ou avec  
mysqld
 .
 
Vous pouvez spécifier une socket différente et un dossier temporaire différent
avec les options suivantes : 
 some_tmp_dir
  doit être le chemin complet d'un dossier dans lequel
vous avez les droits en écriture.| 
shell> TMPDIR=/some_tmp_dir/shell> MYSQL_UNIX_PORT=/some_tmp_dir/mysql.sock
 shell> export TMPDIR MYSQL_UNIX_PORT
 | 
 
Après cela, vous devriez être capable d'exécuter  
mysql_install_db
  et
lancer le serveur avec ces commandes :
 Si  
mysql_install_db
  est situé dans le dossier  
scripts
 ,
modifiez la première commande pour utiliser  
scripts/mysql_install_db
 .| 
shell> bin/mysql_install_db --user=mysqlshell> bin/mysqld_safe --user=mysql &
 | 
 
Voyez  Comment protéger 
/tmp/mysql.sock
 .
 Variables d'environnement MySQL .
 |