Lorsque vous utilisez la touche haut dans un terminal Linux, vous pouvez à nouveau utiliser les commandes précédentes. Excellente fonctionnalité. Cependant, j'ai commencé à connecter mysql dans mysql avec les détails sensibles de la commande.
Comment puis-je supprimer cet historique?
export HISTFILE=/dev/null
Réponses:
Vous pouvez effacer votre historique de bash comme ceci:
history -cw
la source
.bash_history
ce qui nécessite le redémarrage du shell pour prendre effet.>~/bash_history
. Je dois redémarrer le terminal pour cela.~/.bash_profile
:,export SHELL_SESSION_HISTORY=0
puis faites unsource ~/.bash_profile
et pour terminer, quittez et redémarrez votre application Terminal. Si vous voulez comprendre ce que fait cette commande d'exportation, vous devez absolument vérifier ce lien suivant: superuser.com/questions/950403/…Si vous utilisez bash, l'historique du terminal est enregistré dans un fichier appelé .bash_history. Supprimez-le et l'historique sera parti.
Cependant, pour MySQL, la meilleure approche consiste à ne pas entrer le mot de passe dans la ligne de commande. Si vous spécifiez simplement l'option -p, sans valeur, vous serez invité à entrer le mot de passe et il ne sera pas enregistré.
Une autre option, si vous ne souhaitez pas saisir votre mot de passe à chaque fois, est de le stocker dans un fichier my.cnf. Créez un fichier nommé ~ / .my.cnf avec quelque chose comme:
Assurez-vous de modifier les autorisations du fichier afin que vous seul puissiez lire le fichier.
Bien sûr, de cette façon, votre mot de passe est toujours enregistré dans un fichier en clair dans votre répertoire personnel, tout comme il était précédemment enregistré dans .bash_history.
la source
-p
. C'est tout à fait la bonne approche pour ce problèmeunset HISTFILE
sorte que l'historique actuel ne soit pas enregistré.