Как вы запускаете один запрос через MySQL из командной строки? - PullRequest
119 голосов
/ 21 октября 2009

Я надеюсь, что смогу выполнить один запрос на удаленном сервере в скриптовой задаче.

Например, интуитивно, я мог бы представить, что это будет что-то вроде:

mysql -uroot -p -hslavedb.mydomain.com mydb_production "select * from users;"

Ответы [ 5 ]

199 голосов
/ 21 октября 2009
mysql -u <user> -p -e "select * from schema.table"
20 голосов
/ 21 октября 2009
mysql -uroot -p -hslavedb.mydomain.com mydb_production -e "select * from users;"

Из распечатки использования:

-e, --execute=name
Выполните команду и выйдите. (Отключает --force и файл истории)

9 голосов
/ 21 октября 2009

Если это частый запрос, вы можете сохранить его в файле. Затем в любое время вы хотите запустить его :

mysql < thefile

(со всеми флагами входа и базы данных, конечно)

9 голосов
/ 21 октября 2009

вот как вы можете сделать это с помощью классного трюка с оболочкой:

mysql -uroot -p -hslavedb.mydomain.com mydb_production <<< 'select * from users'

'

используйте флаг -t для включения вывода в табличном формате

5 голосов
/ 21 октября 2009
echo "select * from users;" | mysql -uroot -p -hslavedb.mydomain.com mydb_production
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...