1. 程式人生 > >ERROR 1045 (28000): Access denied for user 'xxx'@'localhost' (using password: YES)

ERROR 1045 (28000): Access denied for user 'xxx'@'localhost' (using password: YES)

發生 lower 無意中 sta tro delet 過程 匿名 周末

# Bug描述

今天周末,在家裏學點新技術,雖然公司分配的任務沒有完成(滑稽滑稽)

我先創建了一個mysql數據庫,用root用戶創建一個新用戶,畢竟項目中使用root是非常危險的,尤其是我這樣的實習生(再次滑稽)。然後愉快的給它賦予了權限,切換用戶

然而,不愉快的事情發生了:

ERROR 1045 (28000): Access denied for user ‘xxx‘@‘localhost‘ (using password: YES)

  密碼錯了?

    算了,再敲一遍

      fuck,還是錯了

        可能設密碼的時候手抖了

          那我就重設下密碼吧

            update user set password=password(‘密碼‘) where user=‘用戶名‘ ;

              然後,看到 0 行被更新???

  然後懷著懷疑人生的態度搜了很久,前一頁的博客都是一樣的,唉~

  一通亂操作之後還是沒有x用,都是說改密碼,還有扯php的。。。

# 解決過程

  後來無意中進入stackoverflower,然後一看提問,發現碰到的情況和我一模一樣:

## 提問

技術分享圖片

## 回答

技術分享圖片

大意就是你有一個用戶名為空的賬戶,mysql會先匹配它,然後就一直提示你密碼錯誤,刪掉這個匿名用戶,然後執行 FLUSH PRIVILEGES;

Delete FROM user Where User=‘‘ and Host=localhost;
flush privileges;

# 總結        

    然後就可以愉快的登陸成功,開始光榮的增刪改查之旅了

    技術分享圖片

ERROR 1045 (28000): Access denied for user 'xxx'@'localhost' (using password: YES)