2009-10-21 153 views

回答

108
mysql -u <user> -p -e "select * from schema.table" 
+1

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

+0

这应该是谷歌搜索的第一个结果为“从命令行mysql执行SQL”),而不是巨大的MySQL网站! – 2017-04-04 17:48:13

+0

我不知道为什么,但双引号不是为我工作,不得不把它们变成单引号 – tinybyte 2017-04-27 08:19:23

2
echo "select * from users;" | mysql -uroot -p -hslavedb.mydomain.com mydb_production 
8
mysql -uroot -p -hslavedb.mydomain.com mydb_production -e "select * from users;" 

从使用打印输出:

-e--execute=name
EXEC ute命令并退出。 (禁用--force和历史文件)

5

这里是你如何可以与一个很酷的外壳把戏做到这一点:

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

“< < <”指示shell把它后面的任何内容作为标准输入,类似来自回声的管道。

使用-t标志来启用表格式输出

5

如果这是你经常运行查询,你可以将其存储在一个文件中。那么任何时候你要run it

mysql < thefile 

(当然是在所有登录和数据库标志)