2012-01-06 39 views
1

我使用完全相同的凭据连接到远程mysql服务器。 主机%给予用户。php可以连接到远程sql服务器,但命令行不能

我可以在本地主机上通过我的PHP应用程序连接到远程MySQL服务器

但是每当我在本地主机上执行命令行

mysql -u username -p'password' -h remoteserver.domain.com 

它抛出我是什么错误

ERROR 1045 (28000): Access denied for user 'username'@'10.50.2.4' (using 
password: YES) 

在这里失踪?

+0

你的用户名是否真的以'@'结尾? '用户名@'? – 2012-01-06 03:28:13

+0

我在我的命令和错误消息中有一个错字。 – flyclassic 2012-01-06 07:33:18

回答

1

你的mysql命令行是错误的。 MySQL已经的时髦语法:

mysql -u username -ppassword -h remoteserver.domain.com 

,而不是

mysql -u username -p password -h remoteserver.domain.com 

注意p标签和密码的位置。

+0

在第二种情况下,MySQL将“password”视为您尝试连接的数据库模式。正如我记得的那样,它会让用户有机会在下一步输入密码。 – 2012-01-06 04:16:54

+0

正确,如果您只发出没有附加密码的-p,它会提示输入pw。 – 2012-01-07 18:10:49

0

证明,我应该为基于Windows的MySQL命令做掉在我的密码单引号

,而不是

 
mysql -u username -p'password' -h remoteserver.domain.com

这种实际工作

 
mysql -u username -ppassword -h remoteserver.domain.com

原因,我用单引号,因为我的密码包含非alpha字符,它可以在linux中工作,但不能在基于windows的命令行上使用

相关问题