Това е 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'