Wenn Sie die Aufwärts-Taste in einem Linux-Terminal verwenden, können Sie die vorherigen Befehle erneut verwenden. Tolles Feature. Ich habe jedoch begonnen, MySQL mit den vertraulichen Details im Befehl in MySQL zu protokollieren.
Wie kann ich diesen Verlauf löschen?
export HISTFILE=/dev/null
Antworten:
Sie können Ihren Bash-Verlauf folgendermaßen löschen:
history -cw
quelle
.bash_history
, sodass die Shell neu gestartet werden muss, damit sie wirksam wird.>~/bash_history
. Dafür muss das Terminal allerdings neu gestartet werden.~/.bash_profile
:export SHELL_SESSION_HISTORY=0
, dann tun einsource ~/.bash_profile
und bis Ende beenden und starten Sie den Terminal - App. Wenn Sie verstehen möchten, was dieser Exportbefehl bewirkt, sollten Sie unbedingt den folgenden Link überprüfen: superuser.com/questions/950403/…Wenn Sie bash verwenden, wird der Terminalverlauf in einer Datei namens .bash_history gespeichert. Löschen Sie es und die Geschichte wird verschwunden sein.
Für MySQL ist es jedoch besser, das Kennwort nicht in die Befehlszeile einzugeben. Wenn Sie nur die Option -p ohne Wert angeben, werden Sie zur Eingabe des Kennworts aufgefordert und es wird nicht protokolliert.
Wenn Sie Ihr Kennwort nicht jedes Mal eingeben möchten, können Sie es auch in einer my.cnf-Datei speichern. Erstellen Sie eine Datei mit dem Namen ~ / .my.cnf mit folgenden Elementen:
Stellen Sie sicher, dass Sie die Dateiberechtigungen so ändern, dass nur Sie die Datei lesen können.
Auf diese Weise wird Ihr Passwort natürlich immer noch in einer Klartextdatei in Ihrem Home-Verzeichnis gespeichert, so wie es zuvor in .bash_history gespeichert wurde.
quelle
-p
. Dies ist völlig der richtige Ansatz für dieses Problemunset HISTFILE
damit der aktuelle Verlauf nicht gespeichert wird.