Ответы:
mysql -u <user> -p -e "select * from schema.table"
mysql -u <user> -p -B --disable-column-names -e 'select * from schema.table'
*
раскрывается во все файлы в текущем каталоге, в то время как это расширение не происходит в одинарных кавычках, вот почему. Двойные кавычки будут работать для запросов без *
.
mysql.exe -u root -e "my query"
mysql -uroot -p -hslavedb.mydomain.com mydb_production -e "select * from users;"
Из распечатки использования:
-e
,--execute=name
Выполните команду и выйдите. (Отключает--force
и файл истории)
вот как вы можете сделать это с помощью классного трюка с оболочкой:
mysql -uroot -p -hslavedb.mydomain.com mydb_production <<< 'select * from users'
«<<<» указывает оболочке принимать все, что следует за ней, как stdin, аналогично передаче из echo.
используйте флаг -t, чтобы включить вывод в формате таблицы
Если вы часто выполняете запрос, вы можете сохранить его в файле. Тогда в любое время вы хотите запустить его :
mysql < thefile
(со всеми флагами входа и базы данных, конечно)