2016-03-08 68 views
0

我想在我的Mac上更改mysql的密码。我相信我以前从未改变过它。用户和密码都是root用户,访问它时我没有问题。在Mac上无法更改mysql的密码

然而,当我按照说明我在网上找到,输入以下命令: /Applications/MAMP/Library/bin/mysqladmin -u root -p password [my new password]

然后我输入“root”它需要密码。

我得到这样的响应: “Access denied for user 'root'@'localhost' (using password: YES)

我试图与方法,我发现解决这个问题:

  1. 停止MYSQL:# /etc/init.d/mysql stop# stop mysql#service mysql stop
  2. 类型如下:# mysql_safe --user=mysql --skip-grant-tables --skip-networking &
  3. 登录MYSQL:#mysql -uroot mysql# mysql -uroot mysql -p 然后输入root p assword并进入MYSQL
  4. 重置root密码:mysql>UPDATE user SET Password=[new password] where USER = "root";

而且有几个,我没有测试更多的步骤。因为它没有从第一步开始工作。这让我觉得这可能不是解决我的问题的正确方法。

我一直在寻找几个小时的答案,现在只能尝试寻求解决方案。请给我一个手。

回答

0

在你的方法(步骤2)你不包括正确的用户:

--user=root 

它应该是root,虽然它目前指定mysql

+0

感谢您的更正。 事情是,即使我键入'#stop mysql'或其他两个,命令行没有显示任何东西回来! –

+0

@SamuelLin:您需要**在MAMP中停止服务器**,杀死它的MySQL进程,或尝试使用绝对MAMP路径停止服务; (第一种方式可能是最简单的) - 然后退出MAMP。这些命令应该使用MAMP路径(例如'/ Applications/MAMP/Library/bin/mysqld_safe'等)。 –

+0

我已经通过单击MAMP上的停止服务器按钮来停止服务器,并准确输入'/ Applications/MAMP/Library/bin/mysql_safe'或'/ Applications/MAMP/Library/bin/mysql_safe --user = root mysql - skip-grant-tables --skip-networking&' 但它的回应是:'没有这样的文件或目录' 我对此很陌生,抱歉我的问题的这些细节。 –