Ceci est une ancienne révision du document !
Table des matières
Outils
Utilisation du client
Affichage des options utilisées par défaut
mysql --print-defaults
Ouverture d'une connexion
mysql --user=<username> --password --host=<hostname>
Depuis la version 5.6.7, l'option secure-auth
est activé par défaut.
Il faut la désactiver cette option en utilisant l'option skip-secure-auth
si l'erreur suivante apparait :
ERROR 2049 (HY000): Connection using old (pre-4.1.1) authentication protocol refused (client option 'secure_auth' enabled)
S'il y a des options inconnues dans les fichiers de configuration, l'ouverture de la connexion échouera. Pour ne pas utiliser ces options, il faut utiliser l'option no-defaults
.
Il faut noter que le fichier .mylogin.cnf
est chargé quoiqu'il arrive.
Import de base de données
Comme pour l'exportation d'une base de données, il est possible de le faire avec PhpMyAdmin mais il vaut mieux utiliser directement mysql. Voici un exemple d'utilisation :
# avec une redirection mysql --password --user=<username> --database=<database> < <filename> # avec un "pipe" cat <filename> | mysql --password --user=<username> --database=<database>
--password
indique le mot de passe à utiliser.--user
indique l'utilisateur à utiliser.--database
indique la base de données à utiliser.
Changement du mot de passe root (Ubuntu 16.04)
Sur Ubuntu 16.04, le mécanisme de gestion des mots de passe ne permet pas d'avoir un mot de passe vide lors de l'installation. Pour pouvoir quand même utiliser un mot de passe vide, il faut réaliser les quelques manipulations suivantes :
# Arrêt de mysql sudo service mysql stop # Démarrage de mysql en "safe-mode" sudo mysqld_safe --skip-grant-tables & # Mise à jour du mot de passe mysql -u root -e 'update user set authentication_string="" where User="root"' mysql # Mise à jour du mécanisme de gestion des mots de passe mysql -u root -e 'update user set plugin="mysql_native_password" where User="root"' mysql # Remise à zéro des privilèges mysql -u root -e 'FLUSH PRIVILEGES' mysql # Démarrage de mysql sudo service mysql start
Cette manipulation n'est pas recommandée et sera à refaire à chaque mise à jour de MySql