水手辛巴dly吧 关注:1贴子:84
  • 4回复贴,共1

第一次打开mysqlshi报错“Accerss denied for user 'root'@local

只看楼主收藏回复

很多人说第一次打开事没有密码,直接点过就可了。不过我这不行,同样问题的人应该还不少。
可以依次执行下面几步:
1.Start the MySQL server instance or daemon with the --skip-grant-tables option (security setting).
$ mysqld --skip-grant-tables
2.Execute these statements.
$ mysql -u root mysql
$mysql> UPDATE user SET Password=PASSWORD('my_password') where USER='root';
$mysql> FLUSH PRIVILEGES;
3.Finally, restart the instance/daemon without the --skip-grant-tables option.
$ /etc/init.d/mysql restart
然后就可以了 stackoverflow的链接:http://superuser.com/questions/603026/mysql-how-to-fix-access-denied-for-user-rootlocalhost
windows 上没好用 -。- 我再找找


IP属地:江苏1楼2015-12-26 02:52回复
    前面步骤 其实可以的 不过要先关闭mysql 服务
    1. mysqld --skip-grant-tables
    2.mysql -u root
    3.use mysql;
    4.update user set password=PASSWORD("NEW-ROOT-PASSWORD") where User='root';
    5.flush privileges;
    6.quit
    然后,关闭mysql 服务
    5.7 mysql的密码字段改名了 “password” => "authentication_string"


    IP属地:江苏3楼2015-12-26 03:29
    收起回复
      mysql 5.7 是使用随机密码,linux是在 root/.mysql_secret 不过windows也有这个随机生成的密码 不过在哪呢 我擦


      IP属地:江苏5楼2015-12-26 03:36
      回复