Accès refusé pour l'utilisateur: 'root'@'localhost'

Résolu
LoloLaSaumur Messages postés 32 Date d'inscription   Statut Membre Dernière intervention   -  
brucine Messages postés 21694 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,

J'essaye de mettre en place un site internet avec une base de données. Le site est 100% fonctionnel en local via Wampserver. Cependant j'aimerai l'héberger sur mon Raspberry Pi afin de pouvoir y accéder hors réseau local. J'ai donc installé sur mon RPi PHP, Mysql et phpMyAdmin. Je peux y accéder en utilisant l'adresse de mon RPi suivi de /phpmydamin. cependant quand je veux importer ma base de donnée, j'ai ce message d'erreur (voir photo). Je me suis renseigné sur internet mais je n'ai rien trouvé qui résolve mon problème.


Windows / Chrome 103.0.5060.134

A voir également:

6 réponses

oakthunder Messages postés 29 Date d'inscription   Statut Membre Dernière intervention   1
 

J'ai hébergé plusieurs sites sur mon raspberrypi4 et j'ai toujours réussit à importer des bdd sur phpmyadmin.

Peux-tu me détailler ton problème et me montrer le contenu du fichier que tu veux importer dans phpmyadmin.

A tu vérifié les identifiants et les mots de passe de mysql.

0
LoloLaSaumur Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 

Bonjour, pour j'ai suivis ce tuto afin de configurer (https://raspberry-pi.fr/installer-serveur-web-raspberry-lamp/). J'ai donc modifié le mdp de root. Et je l'utilise pour me connecter sur phpmyadmin.

Sinon pour ce qui est du contenu de ma base de donnée, cela reste assez basique. je ne pense pas que cela soit la source de mon problème. Mais je vais quand même partager le code : 

-- phpMyAdmin SQL Dump
-- version 5.1.1
-- https://www.phpmyadmin.net/
--
-- Hôte : 127.0.0.1:3306
-- Généré le : dim. 10 avr. 2022 à 09:56
-- Version du serveur : 5.7.36
-- Version de PHP : 7.4.26

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";

-- -----------------------------------------------------
-- Schema db_heh_music
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS db_heh_music DEFAULT CHARACTER SET utf8 ;
USE db_heh_music ;


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

--
-- Base de données : `db_heh_music`
--

-- --------------------------------------------------------

--
-- Structure de la table `client`
--

DROP TABLE IF EXISTS `client`;
CREATE TABLE IF NOT EXISTS `client` (
  `ncli` int(11) NOT NULL AUTO_INCREMENT,
  `nom` varchar(255) NOT NULL,
  `prenom` varchar(255) NOT NULL,
  `mail` varchar(255) NOT NULL,
  `password` varchar(255) NOT NULL,
  `admin` int(11) NOT NULL,
  `visible` tinyint(4) NOT NULL,
  PRIMARY KEY (`ncli`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

--
-- Déchargement des données de la table `client`
--

INSERT INTO `client` (`ncli`, `nom`, `prenom`, `mail`, `password`, `admin`, `visible`) VALUES
(1, 'Vandermiers', 'Loïc', '***@***', '$2y$10$.7.8mmKpBx//4lwN0DJmuu6gMUY1n4zKLRGqjUJgjpWV3bcyXEZsS', 1, 1);

-- --------------------------------------------------------

--
-- Structure de la table `commande`
--

DROP TABLE IF EXISTS `commande`;
CREATE TABLE IF NOT EXISTS `commande` (
  `ncom` int(11) NOT NULL,
  `nprod` int(11) NOT NULL,
  `quantité` int(11) NOT NULL,
  `date` datetime DEFAULT NULL,
  `ncli` int(11) DEFAULT NULL,
  PRIMARY KEY (`ncom`,`nprod`),
  KEY `ncli_idx` (`ncli`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Structure de la table `panier`
--

DROP TABLE IF EXISTS `panier`;
CREATE TABLE IF NOT EXISTS `panier` (
  `nprod` int(11) NOT NULL,
  `quantité` int(11) NOT NULL,
  `ncli` int(11) NOT NULL,
  PRIMARY KEY (`nprod`,`ncli`),
  KEY `ncli_idx` (`ncli`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- --------------------------------------------------------

--
-- Structure de la table `produits`
--

DROP TABLE IF EXISTS `produits`;
CREATE TABLE IF NOT EXISTS `produits` (
  `nprod` int(11) NOT NULL AUTO_INCREMENT,
  `nom_produit` varchar(255) NOT NULL,
  `artiste` varchar(255) NOT NULL,
  `prix` float NOT NULL,
  `visible` tinyint(4) NOT NULL,
  PRIMARY KEY (`nprod`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8;

--
-- Déchargement des données de la table `produits`
--

INSERT INTO `produits` (`nprod`, `nom_produit`, `artiste`, `prix`, `visible`) VALUES
(1, 'Batterie faible','Damso', 14.99, 1),
(2, 'Ipséité','Damso', 6.99, 1),
(3, 'Lithopedion','Damso', 9.99, 1),
(4, 'Qalf infinity','Damso', 19.99, 1),
(5, 'Civilisation','Orelsan', 14.99, 1),
(6, 'La fête est finie','Orelsan', 17.99, 1),
(7, 'Étrange histoire de Mr Anderson','Laylow', 11.99, 1),
(8, 'Freestyle covid','Menace Santana', 19, 1),
(9, '13','Indochine', 8.99, 1),
(10, 'La vraie vie','Bigflo et Oli', 4.99, 1),
(11, 'Les étoiles vagabondes','Nekfeu', 22.99, 1),
(12, 'The 2nd law','Muse', 9.99, 1);

--
-- Contraintes pour les tables déchargées
--

--
-- Contraintes pour la table `commande`
--
ALTER TABLE `commande`
  ADD CONSTRAINT `ncli_commande` FOREIGN KEY (`ncli`) REFERENCES `client` (`ncli`) ON DELETE NO ACTION ON UPDATE NO ACTION;

--
-- Contraintes pour la table `panier`
--
ALTER TABLE `panier`
  ADD CONSTRAINT `ncli_panier` FOREIGN KEY (`ncli`) REFERENCES `client` (`ncli`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  ADD CONSTRAINT `nprod` FOREIGN KEY (`nprod`) REFERENCES `produits` (`nprod`) ON DELETE NO ACTION ON UPDATE NO ACTION;
COMMIT;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
0
oakthunder Messages postés 29 Date d'inscription   Statut Membre Dernière intervention   1
 

Je pense avoir trouvé le problème.

Va sur ton pi allume le et connecte toi, ouvre un terminal.

Entre les commandes suivantes :

sudo mysql --user=root

Une fois connecté fais ceci :

DROP USER 'root'@'localhost';

CREATE USER 'root'@'localhost' IDENTIFIED BY 'ton mdp';

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;

Lors de tes prochaines connexions avec le terminal utilise :

sudo mysql --user=root --password=ton mdp

Pour phpmyadmin j'ai eu des problèmes avec apt install phpmyadmin.

Je te recommande de faire ceci les commentaires sont entre parenthèses ne les entres pas dans le terminal:

cd /var/www/html (pour accéder au répertoire du serveur)

sudo rm -R phpmyadmin (pour supprimer l'ancien dossier phpmyadmin)

sudo wget https://files.phpmyadmin.net/phpMyAdmin/5.2.0/phpMyAdmin-5.2.0-all-languages.zip (pour telecharger phpmyadmin)

sudo unzip phpMyAdmin-5.2.0-all-languages.zip (pour dézipper le fichier)

sudo mv phpMyAdmin-5.2.0-all-languages phpmyadmin (pour renommer le dossier)

sudo rm phpMyAdmin-5.2.0-all-languages.zip (pour supprimer le zip)

Maintenant vas sur ip de ton pi/phpmyadmin et connecte toi.

0
LoloLaSaumur Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 

J'avais déjà modifier le mdp de mysql. Donc ici je me suis connecter avec le 

sudo mysql --user=root --password=ton mdp

Mais quand je veux effectuer le 

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;

J'ai ce message d'erreur

0
oakthunder Messages postés 29 Date d'inscription   Statut Membre Dernière intervention   1
 

Cela doit être un problème de mariadb, essaie de désinstaller puis de réinstaller mariadb avec ces commandes ensuite suis les commandes de ma précédente réponse :

sudo apt remove mariadb

sudo apt update

sudo apt upgrade

sudo apt install mariadb-server
0
LoloLaSaumur Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 

J'ai désinstallé puis réinstallé mariadb, cependant je ne peux plus me connecter avec 

sudo mysql --user=root

J'ai ce message d'erreur " Access denied for user 'root'@'localhost' (using password: NO)"

0
oakthunder Messages postés 29 Date d'inscription   Statut Membre Dernière intervention   1
 

Je pense avoir enfin trouvé le problème utilise :

sudo mysql --user=root --password=ton mdp

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'ton mdp';

FLUSH PRIVILEGES;

quit
0
LoloLaSaumur Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 

Vu que j'ai désinstallé et réinstallé mariadb, mon ancien mdp n'est plus valable. Et si je me connecte avec 

sudo mysql --user=root

ca ne fonctionne pas

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
oakthunder Messages postés 29 Date d'inscription   Statut Membre Dernière intervention   1
 

Ton fichier .sql fonctionne parfaitement quand je l'importe dans phpmyadmin.

Pour mariadb essaie :

sudo mysql --user=root --password=ton acien mdp

ou

sudo mysql

puis :

DROP USER 'root'@'localhost';

CREATE USER 'root'@'localhost' IDENTIFIED BY 'ton mdp';

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'ton mdp';

FLUSH PRIVILEGES;

quit
0
LoloLaSaumur Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 

J'ai réussis à me connecter mais les commandes renvoient des erreurs quand même

0
brucine Messages postés 21694 Date d'inscription   Statut Membre Dernière intervention   3 427 > LoloLaSaumur Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 

Bonjour,

Ne me sautez pas dessus, je n'y comprends pas grand-chose, je me contente si ça peut faire avancer les débats de vous soumettre une configuration test fonctionnelle MariaDB/Adminer que j'avais réalisée (pas pour moi, je ne m'en sers pas), et où le déblocage est probablement du au fait que l'on se sert non pas de root mais d'un utilisateur spécifique et où on aura noté que le mot de passe MariaDB n'est pas par défaut celui du Pi.

1 Raspberry pi 4 4GO, installation Raspbian Buster standard, pi adresse 192.168.1.29

Aspect logiciel
Raspbian Buster embarque par défaut Apache 2 sur le pi 4, restent à installer MariaDB et Adminer.

Installation de MariaDB
sudo apt update
sudo apt upgrade
sudo apt install mariadb-server

sudo mysql_secure-installation

A toutes les questions posées, colonne de gauche, entrée utilisateur, colonne de droite:

Enter current password			(entrée à blanc)
Set root password			    Y 
New password				    (celui de votre choix) 
Re-enter new password			(confirmer)
Remove anonymous users			Y
Disallow root login remotely	Y
Remove the test database		Y
Reload privileges tables		Y

MariaDB a ses propres identifiants et mots de passe, qui ne sont pas ceux du pi.
Par défaut, MariaDB se connectera à la boucle locale (localhost ou 127.0.0.1) et s'adressera donc à root@localhost. Des conflits sont documentés quand on utilise l'utilisateur root

sudo mysql -uroot -p
password: monmdp

CREATE DATABASE test;

Pendant que l'on y est, et pour les raisons évoquées précédemment, on va créer un utilisateur dédié:

CREATE USER 'toto' IDENTIFIED BY 'monmdp';
GRANT ALL PRIVILEGES ON test.* TO 'toto'@'localhost';

On ressort, on vérifie si ça fonctionne:

sudo mysql -utoto -p

Installation de Adminer.

Je ne me suis pas enquiquiné, je suis allé dans Add/Remove Software et j'ai installé adminer (4.7.1.1.) mais rien n'interdit:

sudo apt install adminer

Téléchargeons maintenant notre fichier adminer.php sur le pi dans le dossier qui convient:

sudo wget "http://www.adminer.org/latest.php" -O/var/www/html/adminer.php

Il ne reste plus qu'à contrôler en local puis à partir du PC Windows client.

http://192.168.1.29/adminer.php
0
oakthunder Messages postés 29 Date d'inscription   Statut Membre Dernière intervention   1
 

Adminer peut fonctionner.

Mais il faut que utilise raspberrypi imager pour graver un nouvel OS sut ta carte SD, chosis raspberrypi OS other puis raspberrypi OS 64 bit, ensuite grave la micro SD.Puis execute ses commandes une fois que tu auras connecté ton pi à internet.

sudo apt update

sudo apt upgrade

sudo apt update

sudo apt install apache2 mariadb-server libapache2-mod-php

sudo apt install php-gd php-json php-mysql php-curl php-mbstring php-intl php-imagick php-xml php-zip

cd /var/www/html

sudo wget https://files.phpmyadmin.net/phpMyAdmin/5.2.0/phpMyAdmin-5.2.0-all-languages.zip 

sudo unzip phpMyAdmin-5.2.0-all-languages.zip

sudo mv phpMyAdmin-5.2.0-all-languages phpmyadmin

sudo rm phpMyAdmin-5.2.0-all-languages.zip

sudo mysql --user=root

DROP USER 'root'@'localhost';

CREATE USER 'root'@'localhost' IDENTIFIED BY 'ton mdp';

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'ton mdp';

FLUSH PRIVILEGES;

quit

Maintenant tu peut utiliser phpmyadmin

0
LoloLaSaumur Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 

J'espérai ne pas en arriver là mais je pense que en effet je n'aurai pas d'autres solutions. Je vais essayer ça demain je tiendrai au courant de l'évolution.

0
brucine Messages postés 21694 Date d'inscription   Statut Membre Dernière intervention   3 427 > LoloLaSaumur Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 

Pour PhpMyAdmin, je n'en sais rien, je ne me suis pas servi du Pi depuis un moment, et on ne sait pas quelle mouture LoloLaSaumur embarque sur son Pi.

Mais toujours de mémoire, si on ne veut pas s'enquiquiner à faire une nouvelle carte SD avec une nouvelle mouture via Raspberry Pi Imager (et surtout y remettre tout ce qu'on y avait), les Pi 4 sont chargés par défaut avec Raspbian/Raspberry Pi OS, où Apache 2 est pré-installé et MariaDB également directement disponible via les dépôts pré-paramétrés (ou par le gestionnaire de paquets graphique pour ceux qui préfèrent).

1
LoloLaSaumur Messages postés 32 Date d'inscription   Statut Membre Dernière intervention  
 

Je viens de tout refaire comme demander. Tout fonctionne nickel sans erreurs. Cependant quand je veux accéder à phpmyadmin avec l'adresse "IP de mon raspberry/phpmyadmin", j'ai un écran blanc sans aucun message.

UPDATE : grace à cette commande la page d'accueil de phpmyadmin s'est affichée

sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

UPDATE numéro 2 : j'ai bel et bien réussi à importer ma base de données. Merci beaucoup pour ton temps et ton aide !

0