web-dev-qa-db-fra.com

phpMyAdmin ERREUR: mysqli_real_connect (): (HY000/1045): Accès refusé pour l'utilisateur 'pma' @ 'localhost' (en utilisant le mot de passe: NO)

S'il vous plaît, ne marquez pas ceci comme un doublon. Je ne trouve pas la réponse partout, je ne sais pas quoi faire d'autre.

Je continue à avoir les erreurs suivantes avec la connexion mysql via XAMPP et je ne sais pas quoi faire:

 enter image description here

C'est le code dans le config.inc.php

<?php
/*
 * This is needed for cookie based authentication to encrypt password in
 * cookie
 */
$cfg['blowfish_secret'] = 'xampp'; /* YOU SHOULD CHANGE THIS FOR A MORE 
SECURE COOKIE AUTH! */

/*
 * Servers configuration
 */
$i = 0;

/*
* First server
*/
$i++;

/* Authentication type and info */
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassword'] = true;
$cfg['Lang'] = '';

/* Bind to the localhost ipv4 address and tcp */
$cfg['Servers'][$i]['Host'] = '127.0.0.1';
$cfg['Servers'][$i]['connect_type'] = 'tcp';

/* User for advanced features */
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = '';

/* Advanced phpMyAdmin features */
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
$cfg['Servers'][$i]['relation'] = 'pma__relation';
$cfg['Servers'][$i]['table_info'] = 'pma__table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma__column_info';
$cfg['Servers'][$i]['history'] = 'pma__history';
$cfg['Servers'][$i]['designer_coords'] = 'pma__designer_coords';
$cfg['Servers'][$i]['tracking'] = 'pma__tracking';
$cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
$cfg['Servers'][$i]['recent'] = 'pma__recent';
$cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
$cfg['Servers'][$i]['users'] = 'pma__users';
$cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
$cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
$cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
$cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
$cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
$cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
$cfg['Servers'][$i]['favorite'] = 'pma__favorite';

/*
 * End of servers configuration
 */

?>

J'ai déjà réinitialisé le mot de passe de MySql à partir de la ligne de commande à deux reprises et ajouté les modifications apportées à ce code ci-dessus et au fichier php.ini, mais chaque fois, l'erreur revient. De l'aide?

8
L'utilisatrice

vous devez créer l’utilisateur "pma" dans mysql ou changer cette ligne (mot de passe de l’utilisateur pour mysql):

/* User for advanced features */
$cfg['Servers'][$i]['controluser'] = 'pma'; 
$cfg['Servers'][$i]['controlpass'] = '';

Ajoutez cette ligne au fichier xampp\phpMyAdmin\config.inc:

$cfg['Servers'][$i]['port'] = '3307';

Ici, mon port est 3307, vous pouvez le changer pour le vôtre.

5
sam.stack

Je viens de terminer la configuration de mon XAMPP sur le MAC et j'ai eu le même problème. Je viens de le réparer. Le système d’exploitation que vous utilisez n’est pas tout à fait clair, mais vous devez exécuter la sécurité XAMPP. Vous indiquez que vous avez fait cela, mais le voilà quand même pour le MAC

Sudo /Applications/XAMPP/xamppfiles/xampp security 

Définissez votre mot de passe sur les questions que vous obtenez.

Dans phpmyadmin, importez le fichier "create_tables.sql" ... qui se trouve dans le dossier ./phpmyadmin/sql.

Ouvrez ensuite le fichier config.inc.php dans le dossier ./phymyadmin.

$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'you_password';

Assurez-vous de vous déconnecter et de vous connecter pour refléter les modifications apportées dans phpmyadmin.

1
Daniel

J'ai rencontré les mêmes erreurs lors d'une nouvelle installation de VestaCP. J'ai résolu les problèmes en suivant les instructions de cette vidéo .

  1. Accédez à phpmyadmin-fixer et exécutez la commande appropriée.
  2. Redémarrez les serveurs Apache, NGINX et MySQL.
  3. C'est tout!
1
nicozica

envisagez de modifier l'entrée d'hôte 127.0.0.1 en localhost ou même l'adresse IP du serveur.

$cfg['Servers'][$i]['Host']
1
TheSatinKnight

Pourrait être en retard à la fête - aussi, cette réponse est pour les utilisateurs de LAMP qui ont eu ce fil de Google, comme moi. 

Fondamentalement, le problème est que PMA tente de se connecter à SQL avec un utilisateur qui n’existe pas.

Dans /etc/phpmyadmin/config-db.php, vous trouverez 2 variables: $ dbuser et $ dbpass . Elles spécifient l’utilisateur MySQL et le mot de passe avec lesquels PMA tente de se connecter. 

Maintenant, connectez-vous avec un nom d’utilisateur/mot de passe qui fonctionne (ou simplement "root" si vous vous connectez à partir de localhost), créez un nouvel utilisateur avec des privilèges globaux ensemble de fichiers mentionné ci-dessus:
$ dbuser =% PMA User%;
$ dbpass =% Mot de passe aléatoire%; 

Vous pouvez également y modifier d'autres éléments, tels que l'adresse du serveur ($ dbserver), le port ($ dbport, qui n'est peut-être pas celui par défaut sur votre ordinateur), etc. 

0
ron wizzle

Dans le terminal, connectez-vous à MySQL en tant que root. Vous avez peut-être créé un mot de passe root lorsque vous avez installé MySQL pour la première fois ou le mot de passe peut être vide. Dans ce cas, vous pouvez simplement appuyer sur Entrée lorsque vous êtes invité à entrer un mot de passe.

 Sudo mysql -p -u root

Maintenant, ajoutez un nouvel utilisateur MySQL avec le nom d'utilisateur de votre choix. Dans cet exemple, nous l'appelons pmauser (pour l'utilisateur phpmyadmin). Assurez-vous de remplacer password_here par le vôtre. Vous pouvez générer un mot de passe ici. Le symbole% indique à MySQL d'autoriser cet utilisateur à se connecter à distance. Si vous souhaitez renforcer la sécurité, vous pouvez le remplacer par une adresse IP.

CREATE USER 'pmauser'@'%' IDENTIFIED BY 'password_here';

Nous allons maintenant accorder le privilège de superutilisateur à notre nouvel utilisateur.

GRANT ALL PRIVILEGES ON *.* TO 'pmauser'@'%' WITH GRANT OPTION;

Ensuite, allez à config.inc.php (sous ubuntu, /etc/phpmyadmin/config.inc.php)

/ * Utilisateur pour fonctions avancées * /

$cfg['Servers'][$i]['controluser'] = 'pmauser'; 
$cfg['Servers'][$i]['controlpass'] = 'password_here';
0
Wasim Khan