从终端运行MySql命令不起作用

时间:2014-02-10 13:28:58

标签: mysql linux terminal

所以我想将我的netstat输出管道输入到mysql数据库

计划是将其作为连续的crontab事件。这样我就可以存储这些数据并轻松地在其他地方使用它。

我想到之前我可以想出那个部分,虽然我需要弄清楚如何从终端运行SQL命令。

看起来非常简单

sudo mysql -u username -pMYPassword -e "SQL COMMAND"

然而,这不起作用......

当我运行它时会打印MYSQL帮助

我跑的时候

sudo mysql -u username -p -e "SQL COMMAND"

一切都很完美,它只是提示我输入密码

现在我不知道它是否有所作为,但我的数据库密码确实有感叹号。它也超过15个字符

这些都可能是个问题吗?

2 个答案:

答案 0 :(得分:1)

mysql -u user -p -e 'SQL Query' database

其中,

-u : Specify mysql database user name
-p : Prompt for password
-e : Execute sql query
database : Specify database name

所以选项-p是 PROMPT ,密码不需要链接,但要与之分开:

sudo mysql -u username -p'PassWord' -e 'SELECT COUNT(*) FROM my_table'

编辑:如果您的真实密码包含特殊字符,则需要将其转义。

答案 1 :(得分:0)

也许尝试:sudo mysql -u username -p'MYPassword' -e "SQL COMMAND"

或者:sudo mysql -u username --password=MyPassword -e "SQL COMMAND"