Unter OS X 10.11.6 habe ich --auto-rehash wie oben beschrieben eingestellt, aber es hat nicht funktioniert. (Dies ist OS X, daher wird MySQL mit der BSD- Bibliothek libedit kompiliert .)
Dann erinnerte ich mich, dass ich vi-Schlüsselbindungen für den MySQL-Client festgelegt hatte, indem ich ~ / .editrc erstellte, das eine Zeile enthielt: bind -v . Dies funktioniert hervorragend, um mir eine vi-ähnliche Navigation im MySQL-Client zu ermöglichen, hat jedoch die Vervollständigung des Spaltennamens unterbrochen (ich konnte dies durch Entfernen von .editrc überprüfen ).
Also habe ich ein bisschen recherchiert und festgestellt, dass ~ / .editrc mindestens die folgenden Zeilen haben sollte:
bind -v
bind \\t rl_complete
Mit dieser zusätzlichen Zeile funktioniert die Namensvervollständigung in MySQL korrekt und die vi-ähnliche Navigation funktioniert auch. (Es gibt andere .editrc-Einstellungen, die die MySQL-Client-Navigation erheblich verbessern, aber dies ist nicht der richtige Ort, um diesen Diskussionsthread zu starten.)