命令行登錄mysql時,出現ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO)的提示。查了不少教程,通過折騰找到下述解決方案:
解決方法:
1. 停掉mysql服務
2. 找到mysql安裝目錄下的my.ini,找到里面的[mysqld] 然后在下面加上skip_grant_tables(啟動MySQL服務的時候跳過權限表認證)
3. cmd -> net start mysql -> mysql回車 成功登錄后出現mysql提示符
4. 輸入use mysql (mysql的密碼存在於mysql表中,因此打開該表)
5. 修改密碼:update user set authentication_string = password("新設置的密碼") where user="root";(我這里mysql的版本是5.7,其中密碼列的屬性叫做authentication_string;5.1的是password);如果不清楚屬性可以用phpmyadmin等插件進入查看
6. 刷新權限:flush privileges;
7. 退出:quit;
8. 將my.ini中的skip_grant_tables去掉,恢復登錄時候的權限表認證
9. 重啟mysql服務,再使用root和修改的密碼登錄即可:mysql -u root -p 新設置的密碼