Services webmasters
Partenaires
Jeux concours gratuits
 
Installation de MySQL
<<<
Problèmes d'exécution de mysql_install_db Problèmes de démarrage du serveur MySQL
>>>

2.4 Configuration après l'installation, et tests
2 Installation de MySQL
 Manuel de Référence MySQL 4.1 : Version Française

->Problèmes d'exécution de mysql_install_db
Problèmes de démarrage du serveur MySQL
Lancer et arrêter MySQL automatiquement.

2.4.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 , si il fonctionnait, et faire ceci :


mv mysql-data-directory/mysql mysql-data-directory/mysql-old
mysql_install_db
Cette section liste les problèmes que vous pourriez rencontrer lors de l'exécution du script mysql_install_db :
    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 :
    
    starting mysqld daemon with databases from XXXXXX
    mysql daemon ended
    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 .
    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 pré-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 : Can't start server: Bind on TCP/IP port: Address already in use ou Can't start server: Bind on unix socket... . Installer plusieurs serveurs sur la même machine .
    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 (dans /tmp ) 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 :

    
    shell> TMPDIR=/some_tmp_dir/
    shell> MYSQL_UNIX_PORT=/some_tmp_dir/mysqld.sock
    shell> export TMPDIR MYSQL_UNIX_PORT
    Voir Comment protéger /tmp/mysql.sock .

    some_tmp_dir doit être un chemin vers un dossier dans lequel vous avez les permissions d'écriture. Variables d'environnement MySQL .

    Après cela, vous devriez être capable d'exécuter mysql_install_db et démarrer le serveur avec ces commandes :
    
    shell> scripts/mysql_install_db
    shell> BINDIR/safe_mysqld &
    mysqld crashes immediately
    Si vous utilisez RedHat version 5.0 avec une version de glibc plus ancienne que 2.0.7-5, assurez vous que vous avez installé les patchs glibc ! Il y a beaucoup de littérature à ce propos dans les archives de listes de diffusion. Des liens vers les archives sont disponibles à http://lists.mysql.com/ . Voir aussi Notes relatives à Linux (toutes les versions de Linux) .

    Vous pouvez aussi démarrer mysqld manuellement avec l'option --skip-grant-tables puis ajouter les tables de droits avec S mysql :

    
    shell> BINDIR/safe_mysqld --skip-grant-tables &
    shell> BINDIR/mysql -u root mysql
    Dans la base mysql , exécutez manuellement les commandes SQL disponibles dans mysql_install_db . Assurez vous que vous n'oubliez pas la commande mysqladmin flush-privileges ou mysqladmin reload pour dire au serveur de prendre en compte les tables de droits.

<< Problèmes d'exécution de mysql_install_db >>
Installation de MySQL Configuration après l'installation, et tests Problèmes de démarrage du serveur MySQL
Services webmasters
Les manuels
 
CoursPHP.com - Reproduction interdite -