如何将mysql输出重定向到文件?

时间:2018-09-24 10:20:15

标签: mysql bash mysql-workbench

当我在mysql工作台中运行任何选择或更新查询时,它都会显示

enter image description here或返回的行数。

在我的脚本中,我使用mysql -u user -h ip db -se"select * from.."

我尝试重定向mysql输出:

./script.sh >> script.log 2>&1

但是它仅显示错误消息,无法成功运行。

它不显示27 row(s) returned。因此,在那种情况下,我无法检查是否有任何更新语句,选择或过程成功运行。

如何获取成功运行的输出?

2 个答案:

答案 0 :(得分:2)

我在mysql的选项中找到了解决方案。

像这样运行它:

mysql -u USER -h HOST -p PORT --password -vv -se "YOUR QUERY" >output.txt 2>errors.txt

添加-vv参数将为您提供受影响的行数。 -vvv还将告诉您运行查询所花费的时间。

例如:我跑了这个

mysql -u Nic3500-h localhost -P 3306 --password -vv -se "INSERT INTO stackoverflow.activity (activity_id, activity_name) VALUES ('10', 'testtest');" >output.txt 2>&1

output.txt是:

-------------- 
INSERT INTO stackoverflow.activity (activity_id, activity_name) VALUES ('10', 'testtest')
--------------

Query OK, 1 row affected

Bye

答案 1 :(得分:0)

您可以使用INTO OUTFILE进行查询,如mysql documentation

所示
相关问题