Connexion à la base de données impossible (erreur 1044)

Virginie

New Member
#1
Bonjour,
J'ai créé une BDD, nommée lacuccck_BDD1, à l'aide du CPanel (onglets Bases de données MySQL) puis un utilisateur nommé, lacuccck_ninou, avec son mot de passe.
Par contre, il n'y a pas sur cette page la rubrique comportant les droits de l'utilisateur mentionnée ici (https://my.planethoster.net/knowled...oenes-cpanel-bases-de-donnees-mysql-databases)
Lorsque j'essaie de me connecter à la BDD via PHP avec le code ci-dessous (qui fonctionne parfaitement sur une autre base sur un autre site hébergé également chez PlanetHoster) j'ai systématiquement l'erreur 1044 : SQLSTATE[HY000] [1044] Access denied for user 'lacuccck_ninou'@'localhost' to database 'lacuccck_BDD1' (N° : 1044)
Comment résoudre ce problème ?
Merci d'avance.

Code : (j'y ai évidemment caché le mot de passe pour l'afficher ici)
function connexionBDD()
{
$PARAM_hote = 'localhost';
$PARAM_dbnom = 'lacuccck_BDD1';
$PARAM_id = 'lacuccck_ninou';
$PARAM_pswd = '****';
try
{
//global $bdd;
$bdd = new PDO('mysql:host='.$PARAM_hote.';dbname='.$PARAM_dbnom, $PARAM_id, $PARAM_pswd, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING, PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''));
return $bdd;
}
// Gestion de l'erreur éventuelle
catch(PDOException $e)
{
echo 'Erreur de connexion à la BDD (message erreur) : '.$e->getMessage().' (N° : '.$e->getCode().')'.chr(10);
}
}
 

Virginie

New Member
#2
Je viens de trouver la solution ; je la donne car cela peut aider.
En fait, sur la page Bases de données MySQL du CPanel, la présentation est trompeuse.
Quand on créé un nouvel utilisateur, il apparaît aussitôt dans les utilisateurs actuels et on pourrait croire qu'il est réellement créé, mais... et c'est là le problème, ce n'est pas vrai ! Encore faut-il cliquer sur AJOUTER l'utilisateur pour avoir accès à la page de ses droits qu'il faut alors renseigner.
Cette présentation n'est pas claire et est donc trompeuse.
 
#3
Bonjour Virginie,
Lorsque l'on créé un utilisateur il est bel et bien automatiquement créé, MAIS il faut lui attribuer les droits sur une ou des bases de données.
Et c'est effectivement l'étape à ne pas rater et que vous avez identifié ("Ajouter un utilisateur à la base de données").

En effet vous pouvez très bien avoir 1 utilisateur et lui attribuer l’accès (avec des droits différents ou non) sur 1 ou plusieurs bases de données ;)
 

Danielos

New Member
#6
Oui, bien sûr, mais cela devrait être indiqué sur la page. C'est pourquoi je dis qu'elle est trompeuse...
Un grand merci Virginie.
Voilà une personne bien qui revient donner la solution trouvée. Dommage que ce ne soit pas fait systématiquement.
Et je confirme que ça pourrait être un peu mieux indiqué voire même au moment de déclarer l'utilisateur d'aller tout de suite sur la page des droits... Il faut toujours avoir des axes de progrès ;-)
 

PH-Marc-André.B.

Modérateur
Membre du personnel
#7
Bonjour,

Afin d'éviter de se mélanger les développeurs du système cPanel vous offrent dorénavant l'assistant de base de donnnées MySQL qui va vous guider pas à pas à travers les étapes requises pour créer un contenant MySQL, un utilisateur MySQL et l'associer au contenant créé avec les privilèges désirés.
 

arttan

New Member
#8
Bonjour, je me permet de remonter ce sujet car je rencontre actuellement le même genre de soucis depuis ce matin... Je ne comprends pas tout à fait la différence entre :

Depuis Panel world>>Base de données>>Base de données SQL :
- Bases de données actuelles : Créer une base de données en même temps qu'un nom d'utilisateur, puis lui accorder par la suite les droits nécessaires.
- Utilisateurs actuels : créer un utilisateur. La seule modification possible par la suite est le nom, aucune mention de droits.
bddpanelworld.jpeg


Ou bien effectivement comme précédemment mentionné, aller dans l'onglet CPanel, qui constitue une nouvelle interface, pour suivre le dit assistant.
ET il semble également possible de faire la même chose en cliquant simplement sur "Bases de données MYSQL".
bddcpanel.jpeg

Désolé pour cette probable redondance dans les questionnements, mais j'avoue qu'après plusieurs années sans mettre la main au cambouis, je me retrouve complètement perdu pour trouver les infos de connexion nécessaires pour récupérer des infos dans la BDD. Les interfaces me semblent dire presque la même chose mais en même temps pas tout à fait, et à des endroits différents... ce qui est pour le moins confusant :)

Mes divers essais n'ont menés qu'à un joli message : Erreur : SQLSTATE[HY000] [1045] Access denied for user 'arttrpdp_admin'@'localhost' (using password: YES)

Merci de m'éclairer, ça serait super chouette! :cool: Bonne soirée.

Edit : j'ai supprimé mes tables et utilisateurs déja crées auparavant pour suivre l'assistant du CPanel et tout est finalement bien qui finit bien!! Malgré tout je serai curieux de comprendre ces différences!
 
Dernière édition:

PH-Marc-André.B.

Modérateur
Membre du personnel
#9
Bonjour,

Notre panneau World est en quelque sorte une interface simplifiée du cPanel.

Les deux panels vous sont offert.


Pour créer un mot de passe pour un usager SQL via le panneau World il faut avoir préalablement créé la base de données et l'utilisateur.

Ensuite vous verrez le bouton Ajouter un utilisateur à la DB. voir la pièce jointe
 

Fichiers joints

arttan

New Member
#10
Merci de votre réponse.
Oui tout à fait, aucun soucis de ce côté, j'avais pu faire quelques essais avant de poster ici.
Curieusement cela n'avait pas marché, bien que j'ai théoriquement suivi la même marche à suivre que l'assistant, mais depuis votre interface (avec exactement les même identifiants et mdp, d'autant plus) : création d'une base, puis d'un utilisateur auquel j'ai par la suite permit tous les droits.

Mon problème initial de connexion a été finalement résolu grâce a l'assistant : mon même code a fonctionné immédiatement.
Mais je me permet tout de même d'insister (désolé...) sur la confusion provoquée par ces multiples interfaces, et qui m'a mené précisément au sujet initié par Virginie.
Peut-être serait-il souhaitable pour les prochains utilisateurs que vous indiquiez cela plus clairement dès les premiers pas dans le panel? A moins qu'il ne s'agisse seulement de moi ?
Bonne soirée! :)
 
Haut