你如何通过命令行通过mysql运行一个单一的查询?
我期望能够在脚本任务中的远程服务器上运行单个查询。
例如,直觉上,我会想象它会像这样:
mysql -uroot -p -hslavedb.mydomain.com mydb_production "select * from users;"
mysql -u <user> -p -e "select * from schema.table"
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'
'<<<'指示shell将其后的任何内容作为标准input,类似于echo的pipe道。
使用-t标志来启用表格格式输出
如果是经常运行的查询,则可以将其存储在文件中。 然后,任何时候你想运行它 :
mysql < thefile
(所有的login和数据库标志当然)
echo "select * from users;" | mysql -uroot -p -hslavedb.mydomain.com mydb_production