如何通过命令行通过mysql运行单个查询?
问题描述:
我期望能够在脚本任务中的远程服务器上运行单个查询。如何通过命令行通过mysql运行单个查询?
例如,直觉,我会想象它会去是这样的:
mysql -uroot -p -hslavedb.mydomain.com mydb_production "select * from users;"
答
mysql -u <user> -p -e "select * from schema.table"
答
echo "select * from users;" | mysql -uroot -p -hslavedb.mydomain.com mydb_production
答
mysql -uroot -p -hslavedb.mydomain.com mydb_production -e "select * from users;"
从使用打印输出:
-e
,--execute=name
EXEC ute命令并退出。 (禁用--force
和历史文件)
答
这里是你如何可以与一个很酷的外壳把戏做到这一点:
mysql -uroot -p -hslavedb.mydomain.com mydb_production <<< 'select * from users'
“< < <”指示shell把它后面的任何内容作为标准输入,类似来自回声的管道。
使用-t标志来启用表格式输出
C:\ Program Files文件(x86)的\的MySQL \ MySQL服务器5.7 \ BIN>的mysql.exe - u root -p -e“我的查询”---->错误1045(28000):拒绝用户'root'@'localhost'的访问(使用密码:YES) – 2017-03-12 11:38:40
这应该是谷歌搜索的第一个结果为“从命令行mysql执行SQL”),而不是巨大的MySQL网站! – 2017-04-04 17:48:13
我不知道为什么,但双引号不是为我工作,不得不把它们变成单引号 – tinybyte 2017-04-27 08:19:23