Je souhaite modifier le mot de passe root de MySQL, j'ai décommenté "password" et j'ai mis mon pass mais PMP m'indique toujours que je n'est pas de mot de passe ... Après reboot des services bien sûr.
2e question : Est-il possible de profiter de WAMP en production ? Après modification de la configuration est-ce que wamp peux convenir ? Aussi est-ce qu'il est possible de mettre WAMP en service pour qu'il soit démarré au boot, sans avoir besoin d'ouvrir une session.
Pour faire l'association entre phpmyadmin et mysql, il y a le fichier config.inc.php Il contient l'utilisateur et le mot de passe root. il suffit de mettre à jour le pass pour se connecter directement..
Changer ou mettre un mot de passe à root@localhost pour MySQL ne se fait pas en décommentant quoi que ce soit.
Il y a deux possibilités :
- 1 - Via PhpMyAdmin, l'onglet Privilèges et l'icône Changer les privilèges associée à la ligne root.
- 2 - Par la console MySql accessible via l'icône Wampserver, MySQL, Console MySQL et par une commande du genre : SET PASSWORD FOR root@localhost = PASSWORD('mot_de_passe_en_clair') ;
Dans les deux cas, après avoir mis un mot de passe à root, il faut « dire » au fichier de configuration de PhpMyAdmin qu'il y a un mot de passe. Modifier ou ajouter dans le fichier wamp\apps\phpmyadmin3.2.0.1\config.inc.php : - a - Soit indiquer, en clair, quel est le mot de passe : $cfg['Servers'][$i]['auth_type'] = 'config'; $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = 'mot_de_passe_en_clair';
- b - Soit obtenir un formulaire demandant nom utilisateur et mot de passe : $cfg['Servers'][$i]['auth_type'] = 'http'; $cfg['Servers'][$i]['user'] = ''; //Vide $cfg['Servers'][$i]['password'] = ''; //Vide
------- En cas de « gros » problèmes de mot de passe --------- - Réinitialisation du mot de passe root MySQL sous Windows - Création d'un utilisateur avec tous les privilèges
Malgré toutes les opérations que vous avez effectuées, vous n'arrivez plus à vous connecter à MySQL (et PhpMyAdmin) en tant que root@localhost, avec ou sans mot de passe ou vous avez oublié votre mot de passe ou, par inadvertance, vous avez supprimé tous les utilisateurs. Les procédures ci-dessous vous permettront de mettre un autre mot de passe pour tous les comptes root ou de créer un utilisateur avec tous les privilèges et sans mot de passe. Le nouveau mot de passe choisi doit être simple et surtout, comme la procédure utilise la ligne de commande, ne pas comporter de caractères accentués ni « exotiques ». Vous pourrez le modifier une fois que les connexions MySQL seront possibles via PhpMyAdmin. Il est même souhaitable d'utiliser un mot de passe dont on connait le cryptage tel qu'il sera écrit dans la table users de la base mysql qui, depuis MySQL 4.1, sont toujours constitués d'un astérisque suivi de 40 chiffres hexadécimaux. Ainsi, pour MySQL le mot de passe "secret" est codé "*14E65567ABDB5135DOCFD9A7083032C179A49EE7". Dans les exemples suivants, Wampserver est supposé avoir été installé dans G:\wamp. Il vous faudra adapter vos chemins en fonction de votre propre installation, ainsi que le numéro de version de MySQL que vous utilisez.
--- Prérequis --- - a - Tout d'abord, vous devez étre dans une session Windows en tant qu'administrateur, si ce n'est pas le cas, redémarrer Windows pour ouvrir une session Administrateur. - b - Connaître comment lancer une fenêtre de commande : Démarrer, Exécuter, taper cmd puis Entrée. - c - Connaître quelques commandes de la ligne de commande comme cd, dir ; si vous ne savez pas, une fois la fenêtre de commande ouverte, taper help puis Entrée vous donnera la liste de toutes les commandes puis le nom d'une commande suivi de /? par exemple cd /? vous donnera la syntaxe et les paramètres de la commande cd Changer de dossier. - d - Savoir et noter où est situé le fichier mysqld.exe de la version de MySQL utilisée. En principe, pour Wampserver G:\wamp\bin\mysql\mysql5.1.36\bin\mysqld.exe - e - Savoir et noter où est situé le fichier my.ini de configuration de la version de MySQL utilisée. En principe, pour Wampserver G:\wamp\bin\mysql\mysql5.1.36\my.ini
--- Procédure --- 1. Quitter Wampserser si il était actif et vérifier dans le gestionnaire de tâches qu'aucun service ou tâche wampmysql ou mysqld.exe n'est activé. Si une tâche mysqld.exe est activée, il faut l'arrêter par : - Menu Démarrer -> Panneau de configuration -> Outils d'administration -> Services Puis, trouver le service MySQL dans la liste, et l'arrêter. Si la tâche MySQL ne fonctionnait pas comme un service, il faut utiliser le Gestionnaire des tâches pour la forcer à s'arrêter par Terminer le processus ou Fin de tâche
2. Créez un fichier texte, avec notepad, et placez les déclarations suivantes dans celui-ci. (Ne pas oublier le point-virgule ( à la fin de chaque ligne) 2.1 Pour changer le mot de passe affecté à root :
UPDATE mysql.user SET Password = PASSWORD ('secret') WHERE User = 'root'; FLUSH PRIVILEGES;
Éventuellement, remplacer secret par le mot de passe que vous souhaitez utiliser, mais vous pourrez le changer après que la connexion à MySQL et PhpMyAdmin sera possible.
2.2 Pour ajouter un utilisateur avec tous les privilèges : (On peut remplacer toto par un autre nom et même mettre root si on avait supprimé tous les utilisateurs par inadvertance)
CREATE USER toto@localhost; GRANT ALL ON *.* TO toto@localhost WITH GRANT OPTION; FLUSH PRIVILEGES;
Les commandes UPDATE, FLUSH, CREATE et GRANT doivent être écrites chacune sur une seule ligne, commencer au début de la ligne et se terminer par un saut à la ligne.
3. Enregistrez le fichier. Pour cet exemple, le fichier sera nommé C:\mysql-init.txt.
4. Ouvrez une fenêtre de commande pour accéder à l'invite de commande : Menu Démarrer -> Exécuter -> cmd
5. Par la commande cd placez vous dans le dossier noté qui contient mysqld.exe. Par exemple : cd /d "G:\wamp\bin\mysql\mysql5.1.36\bin\"
6. Il va falloir démarrez le serveur MySQL avec les options : --defaults-file pour le fichier my.ini de configuration --init-file pour le fichier de commande --console pour que les commandes apparaissent dans la fenêtre de commande plutôt que dans un fichier journal, ce qui permettra de voir les erreurs éventuelles par la commande : (Bien noter les doubles tirets --)
Si vous avez sauvegardé le fichier mysql-init.txt à un endroit autre que C:\ modifiez la commande en conséquence. Le serveur exécute le contenu du fichier désigné par l'option --init-file lors du démarrage : changement de mot de passe du compte root ou création d'un utilisateur.
7. Quittez la console de commande MySql par Ctrl-C puis la fenêtre de commande par la commande exit.
9. Vérifier, via le gestionnaire de tâches, qu'il n'existe plus de processus mysqld, sinon Terminer la processus.
Vous pouvez supprimer le fichier C:\mysql-init.txt.
Vous devriez maintenant être en mesure de vous connecter à MySQL en tant que root en utilisant le nouveau mot de passe ou par le nouvel utilisateur ajouté, mais sans mot de passe.
Remarque : Comme pour toutes les contributions que j'écris (Sauf indication contraire dûment explicitée), cette procédure a été essayée en grandeur réelle sous : - Windows XP Home SP3 [à jour] - Wampserver 2.0 - Apache 2.2.11 - PHP 5.2.9.2/5.2.10/5.3.0 - MySQL 5.1.34/5.1.35/5.1.36/5.1.37 - PhpMyAdmin 3.1.5/3.2.0/3.2.0.1 Mon mot de passe affecté à root@localhost a bien été remplacé par "secret" sans que j'ai eu besoin de donner le mot de passe qui existait avant. Un nouvel utilisateur à bien été ajouté, avec tous les privilèges sans avoir eu besoin de donner le mot de passe root.
La principale réserve pour utiliser Wampserver en production est qu'il est indispensable d'avoir de sérieuses notions de sécurité de serveur pour paramétrer Apache, PHP et MySQL correctement.
Que ça fonctionne, je n'en doute pas. par contre niveau sécurité c'est moyen...
Un exemple : [forum.wampserver.com] et sur le site VirusList ils disent de passer à Apache 2.2.13.
Donc si tu veux vraiment utiliser Wamp en prod, j'espère que tu sais compiler ton Apache/MySQL/PHP pour avoir les dernières versions corrigées (+ toutes les librairies éventuelles...).