web-dev-qa-db-fra.com

phpmyadmin # 1045 Impossible de se connecter au serveur MySQL. après avoir installé le client en ligne de commande mysql

J'ai installé wamp.phpmyadmin fonctionnant bien. Maintenant que j'ai installé le client en ligne de commande mysql, je ne parviens pas à me connecter à mes bases de données à partir de la ligne de commande mysql ou de phpmyadmin. Après le redémarrage, je n'ai pas pu accéder à phpmyadmin #1045 Cannot log in to the MySQL server. De plus, ma ligne de commande mysql n'accepte pas mon mot de passe et rejette mes fichiers de configuration:

C:\wamp\bin\mysql\mysql5.5.24

my.ini

port=3306

mon config.inc.php

$cfg['Servers'][$i]['verbose'] = 'localhost';
$cfg['Servers'][$i]['Host'] = 'localhost';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysql';
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'whtevr';
$cfg['Servers'][$i]['AllowNoPassword'] = false;

httpd.conf

listen port:80

C:\Program Files\MySQL\MySQL Server 5.0

my.ini

port:3306

Encore une fois, j'ai réinstallé la ligne de commande mysql avec le port modifié en 3307

port:3307

WAMP fonctionne très bien pour accéder à toutes les bases de données, mais à partir du client en ligne de commande mysql, je ne pouvais pas accéder à toutes mes bases de données. Il ne fait que montrer show databases;

information_schema 
mysql 
test
20
black

Dans le cas où MySQL Server est en service mais que vous obtenez toujours le message d'erreur:

Pour ceux qui ont encore ce problème, j'ai suivi un tutoriel génial http://coolestguidesontheplanet.com/get-Apache-mysql-php-phpmmin-working-osx-10-9-mavericks/

Cependant, j'ai toujours l'erreur # 1045. En réalité, l’astuce consistait à changer localhost en 127.0.0.1 à votre config.inc.php. Pourquoi échouait-il si locahost indiquait 127.0.0.1? Je ne sais pas. Mais cela a fonctionné.

===== EDIT =====

Longue histoire courte, c'est à cause des permissions dans mysql. Il peut être configuré pour accepter les connexions à partir de 127.0.0.1 mais pas de localhost.

La réponse réelle à la raison pour laquelle cela ne répond pas est la suivante: https://serverfault.com/a/29731

21
JGutierrezC

J'éprouvais le même problème sous OS X. Je l'ai résolu maintenant. Je publie ma solution ici pour quiconque a le même problème.

Premièrement, j'ai défini le mot de passe pour root dans mysql client:

Shell> mysql -u root
mysql> FLUSH PRIVILEGES;
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MY_PASSWORD');

Ensuite, j'ai vérifié les informations de version:

Shell> /usr/local/mysql/bin/mysqladmin -u root -p version
...
Server version    5.6.26
Protocol version  10
Connection        Localhost via UNIX socket
UNIX socket       /tmp/mysql.sock
Uptime:           11 min 0 sec
...

Finalement, j'ai changé le connect_type paramètre de tcp à socket et ajout du paramètre socket dans config.inc.php:

$cfg['Servers'][$i]['Host'] = 'localhost';
$cfg['Servers'][$i]['connect_type'] = 'socket';
$cfg['Servers'][$i]['socket'] = '/tmp/mysql.sock';
6
micmia

Si vous avez réinstallé le serveur, cela signifie que la nouvelle installation a probablement écrasé votre nom d'utilisateur et vos mots de passe. (Vous voudrez peut-être essayer loggin sans mot de passe pour voir si cela fonctionne).

S'il s'agit d'une installation propre, vous devez définir le mot de passe root .

Sinon, vous aurez nécessité de réinitialiser les autorisations root .

3
Ares

Après comme trois (3) heures de google..ing. C'est la solution au problème: Tout d'abord, je lance cette commande;

$mysqladmin -u root -p[your root password here] version Quelles sorties:

    Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.

    Server version      5.5.49-0ubuntu0.14.04.1
    Protocol version    10
    Connection      Localhost via UNIX socket
    UNIX socket     /var/run/mysqld/mysqld.sock
    Uptime:         1 hour 54 min 3 sec

Finalement, j'ai changé le connect_type paramètre de tcp à socket et ajout du paramètre socket dans config.inc.php:

    $cfg['Servers'][$i]['Host'] = 'localhost';
    $cfg['Servers'][$i]['connect_type'] = 'socket';
    $cfg['Servers'][$i]['socket'] = '/var/run/mysqld/mysqld.sock';

Tout le mérite revient à cette personne: C'est la bonne solution

1
Meshack Mbuvi

Je viens de résoudre cette erreur pour moi-même, mais c'était un peu bête de ma part. Cela vaut toujours la peine de vérifier si ce qui précède ne vous aide pas.

Dans mon cas, je modifiais les fichiers de configuration dans /etc/phpmyadmin, Mon installation était située dans /usr/share/phpmyadmin Et mon installation n'ouvrait pas réellement les fichiers de configuration /etc/phpmyadmin, ce serait. Alors j'ai juste fait cette commande:

ln -s /etc/phpmyadmin/conf* /usr/share/phpmyadmin

Pour ceux qui ne sont pas au courant, ln -s Crée un lien souple (essentiellement un raccourci). Cette commande crée donc des raccourcis depuis les fichiers de configuration de /etc Vers l’installation /usr/share.

En passant, j’ai compris cela après avoir utilisé le programme opensnoop, qui indique les fichiers ouverts (techniquement, traces open() et appels système, tels qu’ils se produisent). , que vous pouvez installer sur Ubuntu avec apt-get install perf-tools-unstable, ou vous pouvez l’obtenir ici.

1
apricot boy

Vous devez accéder à vos paramètres mySQL et modifier les paramètres pour l'authentification héritée. J'utilise l'installateur de la communauté mysql et il vous permet de revenir en arrière et de reconfigurer les paramètres. Créez un nouvel utilisateur et choisissez l'authentification standard, choisissez un mot de passe, c'est tout. C'est si simple!!!

1
Mike Przybylski

J'ai aussi eu cette erreur. Cela a fonctionné normalement après que je nettoie les cookies.

1
藍劍樟

Allez dans le répertoire phpMyAdmin de votre logiciel Localhost comme Xampp, Mamp ou autres. Puis changez l'hôte de localhost en 127.0.0.1 et changez le port en 07. Après cela, accédez à votre répertoire de données et supprimez tous les fichiers du journal des erreurs, à l'exception de ibdata1, fichier important pour le lien créé avec la table de la base de données. Enfin, redémarrez mysql.Je pense que votre problème sera résolu.

0

L'ajout du $ cfg suivant permet de réduire le problème

$cfg['Error_Handler']['display'] = true;
$cfg['Error_Handler']['gather'] = true;

N'oubliez pas pour supprimer ces $ cfg après avoir terminé le débogage!

0
Yohanip

Avant de commencer, allez dans le répertoire "phpMyAdmin" de préférence celui de votre localhost , effacez tous vos cookies et faites fonctionner votre SQL en entrant:

Sudo /usr/local/mysql/support-files/mysql.server start

Pour corriger l'erreur, vous devrez exécuter les commandes suivantes dans votre terminal:

export PATH=$PATH:/usr/local/mysql/bin/

puis:

mysql -u root

après quoi, vous devrez modifier vos autorisations dans mySQL Shell:

UPDATE user SET Password=PASSWORD('YOURNEWPASSWORD') WHERE User='root'; FLUSH PRIVILEGES; exit;

Actualisez votre fenêtre phpMyAdmin, entrez à nouveau le nom d'utilisateur "racine" (ou selon le cas), ainsi que votre mot de passe et vous devriez être prêt à partir. Vérifiez http://machiine.com/2013/how-to-setup-phpmyadmin-on-a-mac-with-osx-10-8-mamp-part-3/ si vous le souhaitez mettre en place à partir de zéro.

0
Cos

Comme le nom d'utilisateur et le mot de passe sont ajoutés dans config.inc.php, vous devez changer:

$cfg['Servers'][$i]['auth_type'] = 'cookie';

À:

$cfg['Servers'][$i]['auth_type'] = 'config';

Et sauvegardez le fichier.

Vous devrez ensuite redémarrer WAMP après avoir apporté les modifications ci-dessus.

0
AndrewL64

J'ai aussi eu cette erreur une fois, mais seulement avec un utilisateur spécifique. Donc ce que j'ai fait est de supprimer l'utilisateur et de le recréer avec le même nom et le même mot de passe.

Ensuite, après avoir réimporté la base de données, cela a fonctionné.

0
bytecode77

Je suggérerais 3 choses:

  1. Essayez d'abord de vider le cache du navigateur
  2. Essayez d’attribuer de manière statique le nom d’utilisateur et le mot de passe dans config.inc.php
  3. Une fois l'installation terminée, supprimez le fichier config.inc.php du dossier "phpmyadmin".

Le dernier a fonctionné pour moi.

0
Tanmoy Kundu