Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 02/10/2017, à 22:29

JujuLand

[Résolu] Impossible de donner les grants à un user mariadb

Salut,

Je veux créer un nouveau site local en Joomla.
J'ai un refus de connexion à mariadb lorsque j'utilise installation.php
Ca semble normal, vu que je n'arrive pas à donner les droits à mon utilisateur

MariaDB [mysql]> GRANT USAGE ON *.* TO 'juju-admin'@'localhost' IDENTIFIED BY PASSWORD '*8EE54EEF5CC43064488C1CB8975AEAA575CD4A68';
Query OK, 0 rows affected (0.00 sec)

MariaDB [mysql]> grant all privileges on *.* to 'juju-admin'@'localhost';
Query OK, 0 rows affected (0.00 sec)

MariaDB [mysql]> show grants for 'juju-admin'@'localhost';
ERROR 1141 (42000): There is no such grant defined for user 'juju-admin' on host 'localhost'
Error
Impossible de se connecter à la base de données. Le connecteur a renvoyé le numéro : Could not connect to MySQL.

Configuration de la base de données

Type de la base de données     [ MySQLi ]

Nom du serveur                 [ localhost ]

Nom d'utilisateur              [ juju-admin ]

Mot de passe                   [ ******** ]

Nom de la base de données      [ jujuland ]

Préfixe des tables             [ juju_ ]

Installation précédente        [ Supprimer ]

Je n'arrive pas à voir l'erreur (ou les erreurs) que je commets ...

Si quelqu'un peut me débloquer ...
Merci
A+

Dernière modification par JujuLand (Le 03/10/2017, à 11:39)


Xubuntu 16.04 > Dell DM061 (2007) + Dell Inspiron 531 (2008)
Xubuntu 16.04 > Asus X51L (2009) + MSI GX723 (2009)
Xubuntu 22.04 > HP 15BA048NF (2018)

Hors ligne

#2 Le 03/10/2017, à 08:59

bruno

Re : [Résolu] Impossible de donner les grants à un user mariadb

Bonjour,

Est-ce que tu as créé ton utilisateur d'abord ? Comme ceci :

CREATE USER 'juju-admin'@'localhost' IDENTIFIED VIA mysql_native_password USING 'mot_de_passe_en_clair';

Ensuite tu pourras lui accorder un droit d'usage sur les bases de données :

GRANT USAGE ON *.* TO 'juju-admin'@'localhost'

Créer la base 'jujuland' si elle n'existe pas :

CREATE DATABASE IF NOT EXISTS `jujuland`;

Et enfin accorder tous les droits à ton utilisateur sur cette base :

GRANT ALL PRIVILEGES ON `jujuland`.* TO 'juju-admin'@'localhost';

Hors ligne

#3 Le 03/10/2017, à 10:13

JujuLand

Re : [Résolu] Impossible de donner les grants à un user mariadb

Bonjour,

Non, j'avais utilisé un fichier sql, mais je pense que c'est identique:

use mysql;

INSERT INTO `user` (`Host`, `User`, `Password`, `Select_priv`, `Insert_priv`, `Update_priv`, `Delete_priv`, `Create_priv`, `Drop_priv`,
`Reload_priv`, `Shutdown_priv`, `Process_priv`, `File_priv`, `Grant_priv`, `References_priv`, `Index_priv`, `Alter_priv`, `Show_db_priv`,
`Super_priv`, `Create_tmp_table_priv`, `Lock_tables_priv`, `Execute_priv`, `Repl_slave_priv`, `Repl_client_priv`, `Create_view_priv`,
`Show_view_priv`, `Create_routine_priv`, `Alter_routine_priv`, `Create_user_priv`, `Event_priv`, `Trigger_priv`, `Create_tablespace_priv`,
`ssl_type`, `ssl_cipher`, `x509_issuer`, `x509_subject`, `max_questions`, `max_updates`, `max_connections`, `max_user_connections`,
`plugin`, `authentication_string`, `password_expired`, `is_role`)
VALUES
('localhost', 'juju-admin', '', 'Y', 'Y', 'Y', 'Y', 'Y', 'N', 'N',
'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N',
'N', 'N', 'N', 'N', 'N', 'N', 'N',
'N', 'N', 'N', 'N', 'N', 'N',
'', '', '', '', 0, 0, 0, 0,
'mysql_native_password', '*8EE54EEF5CC43064488C1CB8975AEAA575CD4A68', 'N', 'N');

J'ai supprimé l'utilisateur et l'ai recréé en utilisant ta commande, mais j'ai eu une erreur à la création:

MariaDB [mysql]> CREATE USER 'juju-admin'@'localhost' IDENTIFIED VIA mysql_native_password USING '********';
ERROR 1396 (HY000): Operation CREATE USER failed for 'juju-admin'@'localhost'

En cherchant du coté des droits, j'ai trouvé des trucs pas sympas, créés lors de mes tâtonnements:

MariaDB [mysql]> show grants for 'juju-admin'@'localhost';
+----------------------------------------------------------------------------------------------------------------------------+
| Grants for juju-admin@localhost                                                                                            |
+----------------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'juju-admin'@'localhost' IDENTIFIED BY PASSWORD '*8EE54EEF5CC43064488C1CB8975AEAA575CD4A68' |
| GRANT ALL PRIVILEGES ON `jujuland`.* TO 'juju-admin'@'localhost'                                                           |
| GRANT ALL PRIVILEGES ON `mysql`.`jujuland` TO 'juju-admin'@'localhost'                                                     |
| GRANT ALL PRIVILEGES ON `jujuland`.`jujuland` TO 'juju-admin'@'localhost'                                                  |
| GRANT ALL PRIVILEGES ON `jujuland`.`localhost` TO 'juju-admin'@'localhost'                                                 |
+----------------------------------------------------------------------------------------------------------------------------+
5 rows in set (0.00 sec)

Mon problème maintenant est maintenant la révocation:

MariaDB [mysql]> REVOKE ALL PRIVILEGES on *.* from 'juju-admin'@'localhost';
ERROR 1141 (42000): There is no such grant defined for user 'juju-admin' on host 'localhost'

MariaDB [mysql]> REVOKE ALL PRIVILEGES on `jujuland`.* from 'juju-admin'@'localhost';
ERROR 1141 (42000): There is no such grant defined for user 'juju-admin' on host 'localhost'

MariaDB [mysql]> REVOKE ALL PRIVILEGES on `mysql`.`jujuland` from 'juju-admin'@'localhost';
ERROR 1141 (42000): There is no such grant defined for user 'juju-admin' on host 'localhost'

MariaDB [mysql]> REVOKE ALL PRIVILEGES on `jujuland`.`jujuland` from 'juju-admin'@'localhost';
ERROR 1141 (42000): There is no such grant defined for user 'juju-admin' on host 'localhost'

MariaDB [mysql]> REVOKE ALL PRIVILEGES on `jujuland`.`localhost` from 'juju-admin'@'localhost';
ERROR 1141 (42000): There is no such grant defined for user 'juju-admin' on host 'localhost'

Bon, d'accord, j'ai fait pas mal de conneries en essayant d'ajouter les droits, mais comment je fais maintenant pour les révoquer ?

Merci
A+

Dernière modification par JujuLand (Le 03/10/2017, à 10:16)


Xubuntu 16.04 > Dell DM061 (2007) + Dell Inspiron 531 (2008)
Xubuntu 16.04 > Asus X51L (2009) + MSI GX723 (2009)
Xubuntu 22.04 > HP 15BA048NF (2018)

Hors ligne

#4 Le 03/10/2017, à 10:31

bruno

Re : [Résolu] Impossible de donner les grants à un user mariadb

Le mieux est de commencer par supprimer ton utilisateur, cela devrait également supprimer ses droits :

DROP USER 'juju-admin'@'localhost';

Vérifier les droits (devrait maintenant renvoyer une erreur):

SHOW GRANTS FOR 'juju-admin'@'localhost';

Recréer l'utilisateur avec la procédure indiquée en #2 et utiliser la commande :

FLUSH PRIVILEGES;

après tout changement de droits.

Hors ligne

#5 Le 03/10/2017, à 11:38

JujuLand

Re : [Résolu] Impossible de donner les grants à un user mariadb

Nickel !!!

Mon erreur a été d'utiliser delete au lieu de drop user

Creation du site ok

Merci
A+


Xubuntu 16.04 > Dell DM061 (2007) + Dell Inspiron 531 (2008)
Xubuntu 16.04 > Asus X51L (2009) + MSI GX723 (2009)
Xubuntu 22.04 > HP 15BA048NF (2018)

Hors ligne