Detta är standard mysql (CLI) beteende varje gång användaren trycker på fliken nyckel (mysql använder den underliggande läsraden eller EditLine bibliotek (inte på Windows)).
Som standard, när användaren begär att use en databas, mysql läser tabeller och fältdefinitioner. Tryck sedan på fliken nyckel gör mysql erbjuder bekvämt komplettering av den aktuella inmatningen med de kända tabellerna och fälten.
Klistrar dock in lite text i mysql som innehåller TAB-tecken (\t eller 0x09 ) utlöser samma beteende - även om ingen Tab tangenten trycktes faktiskt ner från tangentbordet. Och detta kan vara irriterande.
Två alternativ ges till mysql kan dock förhindra det beteendet. Min favorit är --disable-auto-rehash . Den andra är --quiet eller -q .
-
--disable-auto-rehashför att förhindra komplettering av databas-, tabell- och kolumnnamn (som inte läses från databasen, användrehashkommandot om du senare behöver slutföra). Kommandohistoriken behålls dock (hämtad via ↑). och ↓ nycklar till exempel). Vilket är bekvämt. -
--quickeller-qvilket gör mysql använder inte historiken fil och ingen komplettering (läser inte databasdefinitionerna).
På Linux kan man lägga till ett alias i .bashrc för att använda --disable-auto-rehash automatiskt
alias mysql2='mysql --disable-auto-rehash'