无法使用命令行提供的密码执行mysql命令

时间:2014-12-12 07:30:35

标签: mysql

我必须执行MySQL命令而不进入MySQL提示任何交互。为此,我必须在命令行中指定密码,例如

mysql -u 'user' -p'password' command;

虽然我的root用户没有密码(在mysql.user表中检查)但是我无法使用它在命令行运行MySQL命令而不能进入提示符。

我尝试过使用以下内容:

mysql -u root 'followed by query'
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

mysql -u root -p 'followed by query'

提示输入密码,当我按下输入时,会进入提示符。

请建议如何在没有任何交互的情况下执行此操作(使用Enter键)。

2 个答案:

答案 0 :(得分:1)

应使用-e选项指定查询,因此您应尝试以下操作:

mysql -u root -e 'followed by query'

答案 1 :(得分:0)

首先确保您使用的MySQL用户可以访问您尝试连接的数据库。要在MySQL提示符下输入执行MySQL命令,还要更改您的查询,如下所示。

mysql --user=mysql_username --password=mysql_password -e "select *  from database.table";