Това е mysql по подразбиране (CLI) поведение всеки път, когато потребителят натисне Tab ключ (mysql използва основната readline или Редактиране на ред библиотеки (не в Windows)).
По подразбиране, когато потребителят поиска use база данни, mysql чете дефинициите на таблици и полета. След това натиснете Tab ключ прави mysql удобно предлага завършване на текущото въвеждане с известни таблици и полета.
Въпреки това, поставяне на текст в mysql който съдържа TAB символи (\t или 0x09 ) задейства същото поведение - въпреки че няма Tab клавишът всъщност беше натиснат от клавиатурата. И това може да е досадно.
Две опции, дадени на mysql може обаче да предотврати това поведение. Моят любим е --disable-auto-rehash . Другият е --quiet или -q .
-
--disable-auto-rehashза да предотвратите довършването на името на база данни, таблица и колона (които не се четат от базата данни, използвайтеrehashкоманда, ако по-късно имате нужда от завършване). Историята на командите обаче се запазва (извлича се чрез ↑ и ↓ ключове например). Което е удобно. -
--quickили-qкоето прави mysql не използва историята файл и няма завършване (не чете дефинициите на базата данни).
В Linux може да се добави псевдоним в .bashrc да използвате --disable-auto-rehash автоматично
alias mysql2='mysql --disable-auto-rehash'