mysql遠程登錄root賬戶報錯1045的解決
目錄
- mysql遠程登錄root賬戶報錯1045
- 錯誤提示:1045-Access denied for user‘root‘ ‘localhost‘(using password: YES)
- 總結
mysql遠程登錄root賬戶報錯1045
默認情況下mysql不允許遠程登錄到root用戶,遠程登錄報錯1045容易造成密碼錯誤的錯覺。
要實現的話需要另外授權。
本地登錄到mysql的root用戶,再輸入如下命令即可(中間的*號為密碼):
GRANT ALL PRIVILEGES ON *.* TO "root"@"%" IDENTIFIED BY "******" WITH GRANT OPTION;FLUSH PRIVILEGES;
錯誤提示:1045-Access denied for user‘root‘ ‘localhost‘(using password: YES)
navicat連接MySQL數據時遇到1045錯誤,一般是因為輸入的用戶名或者密碼錯誤被拒絕訪問,此時可以重置MySQL數據庫的密碼解決。
在windows的操作步驟如下:
1、找到mysql的my.ini文件,在mysqld關鍵字下面添加skip-grant-tables,如下圖所示:
該命令作用是跳過授權表,也就是輸入任意字符賬號密碼都可以進入mysql看到所有數據表。
當忘記賬號密碼時可以使用改命令修改密碼,但是要隨用隨關,重啟mysql,不然服務器上會有很大的風險。
2、重啟MySQL服務
3、在命令提示符(cmd)中輸入mysql -u root mysql
4、修改密碼
在命令提示符(cmd)中輸入:
- update user set password=password("root123") where user="root";
- 如果有報錯“ERROR 1054 (42S22): Unknown column 'password' in 'field list'”
- 那么就輸入:update user set authentication_string=password('root22') where user='root';
- 輸入exit退出,再重新連接數據,即可連接成功。
注意:
1、要是找不到my.ini文件位置,可打開服務管理器中找到MySQL服務,右鍵屬性,在“可執行文件的路徑”中看到my.ini的位置。如果安裝時是默認的安裝路徑,那么一般是在"C:\ProgramData\MySQL\MySQL Server 5.7"文件夾中,這里需要注意的是,有可能"ProgramData"文件夾會被隱藏。
2、要把mysql的安裝路徑下的bin目錄配置到環境變量中,否則會提示"命令行輸入mysql -u -root -mysql顯示不是內部或外部命令也不是可運行的程序"。
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持。