2011-09-04 54 views
2

几个月前,我开发了一个C程序,它与MySQL数据库进行交互,并在Ubuntu上运行。MySQL用户密码问题

可惜我忘记了用户的密码,现在每当我运行程序我得到:

拒绝访问用户USER1'@“localhost”的(使用密码:YES)

这很奇怪,因为密码是正确的,而且它的根密码显然与'yes'不匹配。

我该如何解决问题?谢谢。

+0

你能用'root'帐户登录到mysql吗?如果是这样,您可以重置user1的密码。 –

+0

'是'表示使用了密码,而不是使用的实际密码。看看这里重置你的root密码 - http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html – arunkumar

+0

'使用password:YES'只是表示你使用密码进行身份验证,不是密码实际上是“是”。这意味着你提供了错误的密码。 –

回答

2

using password: YES意味着你tryied使用密码登录(不是你使用的密码YES

尝试改变用户的密码:

UPDATE mysql.user SET Password=PASSWORD('new password') WHERE Name = 'user1'; 
FLUSH PRIVILEGES; 
1

您需要登录为root(或作为另一具有足够权限的用户),然后更改用户user1的密码。您有几个选项可以更改密码(使用SET PASSWORD,使用GRANT或对mysql.user发出更新查询)。例如,检查here