IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Voir le flux RSS

Séb.

Gestionnaire de profils mysql_config_editor

Note : 2 votes pour une moyenne de 2,50.
par , 29/03/2023 à 00h41 (2179 Affichages)
mysql_config_editor est un gestionnaire de profils livré avec MySQL et facilitant la connexion aux différents outils de la suite MySQL.

Exemple, pour se connecter au client de manière classique :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
$ mysql --host=localhost --user=my_username --password=my_password
Avec l'aide de mysql_config_editor et d'un profil my_profile_name préalablement créé :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
$ mysql --login-path=my_profile_name
mysql> select all user();
+-----------------------+
| user()                |
+-----------------------+
| my_username@localhost |
+-----------------------+
1 row in set (0.00 sec)
Comme on peut le voir, il n'est plus nécessaire de spécifier le nom d'utilisateur, le mot de passe et l'hôte. Les appels à mysql, mysqldump, ou plus généralement toute autre application MySQL supportant le paramètre --login-path, s'en trouvent grandement simplifiés :-)

L'application est simple à utiliser et supporte (entre autres) les commandes suivantes :

set Pour définir un profil, ou en écraser un précédent. Les paramètres sont --login-path, --host, --socket, --port, --user et --password
remove Pour supprimer un profil, selon son --login-path
print Pour afficher un profil selon son --login-path, ou tous les profils enregistrés avec --all

Pour illustrer l'exemple initial, création d'un profil my_profile_name donnant un accès à l'utilisateur my_username :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
$ mysql_config_editor set --login-path=my_profile_name --host=localhost --user=my_username --password
L'application demande le mot de passe, puis enregistre les informations sous forme binaire dans ~/.myconf.cnf, mot de passe obfusqué.

Consulter les profils enregistrés :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
$ mysql_config_editor print --all
[my_profile_name]
user = "my_username"
password = *****
host = "localhost"
Supprimer un profil :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
$ mysql_config_editor remove --login-path=my_profile_name

Envoyer le billet « Gestionnaire de profils mysql_config_editor » dans le blog Viadeo Envoyer le billet « Gestionnaire de profils mysql_config_editor » dans le blog Twitter Envoyer le billet « Gestionnaire de profils mysql_config_editor » dans le blog Google Envoyer le billet « Gestionnaire de profils mysql_config_editor » dans le blog Facebook Envoyer le billet « Gestionnaire de profils mysql_config_editor » dans le blog Digg Envoyer le billet « Gestionnaire de profils mysql_config_editor » dans le blog Delicious Envoyer le billet « Gestionnaire de profils mysql_config_editor » dans le blog MySpace Envoyer le billet « Gestionnaire de profils mysql_config_editor » dans le blog Yahoo

Mis à jour 29/03/2023 à 11h16 par Séb.

Catégories
Sans catégorie

Commentaires

  1. Avatar de CinePhil
    • |
    • permalink
    Pas mal cet outil !

    Est-ce seulement pour Oracle MySQL ou aussi pour MariaDB ?

    Est-ce que ça pourrait être utilisé pour initialiser une connexion en PHP via PDO (ou pour un autre langage de programmation) ? Ça permettrait d'éviter d'avoir à stocker le mot de passe de connexion dans un fichier de config de l'application utilisatrice.
  2. Avatar de Séb.
    • |
    • permalink
    Je ne crois pas que mysql_config_editor existe sur MariaDB, du moins l'option --login-path n'est pas documentée.

    Et à moins de décoder ~/.myconf.cnf, je ne pense pas qu'on puisse l'utiliser avec PHP/PDO & cie.

    Avec PHP/PDO, le plus approchant est la définition du DSN dans un fichier :

    /path/to/dsn :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql:host=localhost;dbname=my_db;user=my_username;password=MyPa55w0rd;charset=utf8mb4
    script.php :

    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    $pdo = new PDO('uri:file:///path/to/dsn');
    Mis à jour 29/03/2023 à 22h02 par Séb.