ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'

请执行以下步骤(如果您确实忘记了密码并且可以随时尝试,即使您目前不在这种情况下也可能会有帮助):

  1. 停止 mysql

    sudo /etc/init.d/mysql stop

    或其他发行版本:

    sudo /etc/init.d/mysqld stop
  2. 以安全模式启动MySQL

    sudo mysqld_safe --skip-grant-tables &
  3. 使用root登录到MySQL

    mysql -uroot
  4. 选择要使用的MySQL数据库

    use mysql;
  5. 重设密码

    -- MySQL version < 5.7
    update user set password=PASSWORD("mynewpassword") where User='root';
    
    -- MySQL 5.7, mysql.user table "password" field -> "authentication_string"
    
    update user set authentication_string=password('mynewpassword') where user='root';
  6. 冲洗特权

    flush privileges;
  7. 重新启动服务器

    quit
  8. 停止并再次启动服务器

    Ubuntu和Debian:

    sudo /etc/init.d/mysql stop
    ...
    sudo /etc/init.d/mysql start

    在CentOS,Fedora和RHEL上:

    sudo /etc/init.d/mysqld stop
    ...
    sudo /etc/init.d/mysqld start
  9. 使用新密码登录

    mysql -u root -p
  10. 输入新密码,然后再次使用服务器,就像什么也没发生

posted @ 2019-11-13 10:49  阿拉善的樵夫  阅读(204)  评论(0编辑  收藏  举报