解決MySQL添加新用戶-ERROR?1045?(28000)的問題
MySQL添加新用戶,見文章底部。
按照正常思維,創(chuàng)建用戶和設(shè)置密碼什么的,應(yīng)該是一個動作完成的。然而事實并非如此。
我每次都是通過在網(wǎng)上找代碼來創(chuàng)建MySQL的用戶。如果無效,就再搜一段。
現(xiàn)在我心累了,必須寫個自己的教程。
1,先要連接到MySQL,工具就是在終端上輸入mysql。
一般來說可以設(shè)置幾個參數(shù),重要的是-u代表用戶,比如root,或者guest,-p代表密碼,-h代表地址,如果是localhost,可以省略。
例子 mysql --user user --host localhost --port 3306 --password
回車之后輸入密碼即可。
偶爾會遇到直接使用sudo mysql可以登錄的情況。
2,選擇mysql數(shù)據(jù)庫。
use mysql;
3,創(chuàng)建用戶,比如用戶名是demo,則使用
create user demo;
4,給用戶權(quán)限。
grant all on *.* to 'demo'@'localhost' identified by 'password' ;
這里是把操作數(shù)據(jù)庫的所有權(quán)限給了demo,并且設(shè)置密碼是password
如果希望該用戶可以創(chuàng)建新的用戶,并授權(quán),就使用添加with grant option
grant all on *.* to 'demo'@'localhost' identified by 'password' with grant option;
5,刷新下。flush privileges;
問題:ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO)
很久沒用這臺電腦的mysql了,今天需要連接數(shù)據(jù)庫,啟動數(shù)據(jù)庫報錯:
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO)
解決方法:
查閱資料后知道了,應(yīng)該使用已知的用戶名和密碼登陸
mysql -u root -p
然而密碼忘了,試了好幾遍終于試出來了:
然后修改成通用的密碼,不亂折騰了:
發(fā)現(xiàn)很多教程都過時了,我的版本是Server version: 8.0.19 MySQL ,最新的方法:
mysql> use mysql; mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123'; mysql> flush privileges;
退出驗證下看看有沒有成功:
可以看到修改密碼成功了。
然后呢,我又假裝密碼忘了,把忘記密碼的修改密碼方法演示一下:
第一步:關(guān)閉Mysql服務(wù)
首先先停止mysql服務(wù)??赏ㄟ^net stop mysql或者任務(wù)管理器中關(guān)閉。
以管理員權(quán)限操作:(這是第一個窗口)
第二步:跳過Mysql密碼驗證
進入命令提示符(管理員登陸)操作,進入mysql目錄中bin文件夾下,mysql8.0與其他版本不同的地方在于無法直接使用mysqld --skip-grant-tables來跳過密碼登錄。在這我們使用mysqld -console --skip-grant-tables --shared-memory來跳過權(quán)限驗證。
輸入執(zhí)行后沒有反饋,新開一個管理員窗口重新執(zhí)行。(這是第二個窗口)
進入目錄后,確保自己已經(jīng)關(guān)閉了Mysql的服務(wù):net stop mysql
關(guān)閉Mysql服務(wù)之后,繼續(xù)在D:\mysql-8.0.19-winx64\bin目錄下進行操作:
輸入
mysqld --console --skip-grant-tables --shared-memory
在輸入這行代碼之后,如下顯示,我們就已經(jīng)成功跳過Mysql的密碼登錄了:
第三步:無密碼方式進入Mysql
在上述步驟之后,再打開一個管理員模式運行的cmd.exe (這是第三個窗口)
進入mysql下的bin目錄后,直接登錄mysql
不需要通過net start mysql打開mysql服務(wù)
在命令行中輸入以下代碼
d: cd D:\mysql-8.0.19-winx64\bin(此處輸入自己電腦上的安裝目錄) mysql -u root -p
如圖:
此時會顯示讓你輸入密碼,直接回車,就可以成功連接Mysql。
第四步:將登陸密碼設(shè)置為空
輸入代碼,將密碼設(shè)置為空(此時還不能直接修改密碼,必須先設(shè)置為空,否則會報錯)
輸入:
use mysql; (使用mysql數(shù)據(jù)表) update user set authentication_string='' where user='root';(將密碼置為空) quit; (然后退出Mysql)
操作如圖:
第五步:更改自己的登陸密碼
這里分為兩個部分
1.關(guān)閉前兩個cmd窗口(一定要關(guān)閉!);
2.在第三個窗口中輸入代碼;
net stop mysql(關(guān)閉mysql服務(wù),雖然會顯示沒有開啟服務(wù),但是以防萬一) net start mysql(再打開mysql服務(wù))
(這里不要嫌麻煩,如果上一個mysql服務(wù)沒關(guān)閉,我們依舊是無密碼登陸)
操作如圖:
接著輸入:
cd D:\mysql-8.0.19-winx64\bin (此處輸入自己電腦上的安裝目錄) mysql -u root -p
(此處會顯示輸入密碼,直接回車就好了,第四步我們已經(jīng)將他置為空了)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';(更改密碼)
如圖:
最后一步:驗證密碼是否修改成功
輸入:
quit(退出mysql) mysql -u root -p
(輸入新密碼,再次登錄)
圖示:
補充:下面看下MySQL添加新用戶
按照正常思維,創(chuàng)建用戶和設(shè)置密碼什么的,應(yīng)該是一個動作完成的。然而事實并非如此。
我每次都是通過在網(wǎng)上找代碼來創(chuàng)建MySQL的用戶。如果無效,就再搜一段。
現(xiàn)在我心累了,必須寫個自己的教程。
1,先要連接到MySQL,工具就是在終端上輸入mysql。
一般來說可以設(shè)置幾個參數(shù),重要的是-u代表用戶,比如root,或者guest,-p代表密碼,-h代表地址,如果是localhost,可以省略。
例子 mysql --user user --host localhost --port 3306 --password
回車之后輸入密碼即可。
偶爾會遇到直接使用sudo mysql可以登錄的情況。
2,選擇mysql數(shù)據(jù)庫。
use mysql;
3,創(chuàng)建用戶,比如用戶名是demo,則使用
create user demo;
4,給用戶權(quán)限。
grant all on *.* to 'demo'@'localhost' identified by 'password' ;
這里是把操作數(shù)據(jù)庫的所有權(quán)限給了demo,并且設(shè)置密碼是password
如果希望該用戶可以創(chuàng)建新的用戶,并授權(quán),就使用添加with grant option
grant all on *.* to 'demo'@'localhost' identified by 'password' with grant option;
5,刷新下。flush privileges;
參考地址:https://bytes.com/topic/mysql/answers/614815-creating-new-mysql-user
到此這篇關(guān)于MySQL添加新用戶-ERROR 1045 (28000)解決辦法的文章就介紹到這了,更多相關(guān)MySQL ERROR 1045 (28000)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- MYSQL ERROR 1045 (28000): Access denied for user (using password: YES)問題的解決
- mysql登錄遇到ERROR 1045問題解決方法
- mysql登錄報錯提示:ERROR 1045 (28000)的解決方法
- MySQL ERROR 1045 (28000): Access denied for user ''root''@''localhost'' (using password: NO) 的原因分解決辦法
- MySQL ERROR 1045 (28000) 錯誤的解決辦法
- 解決mysql安裝時出現(xiàn)error Nr.1045問題的方法
- 解決mysql ERROR 1045 (28000)-- Access denied for user問題
- mysql ERROR 1045 (28000)問題的解決方法
- 解決Mysql:ERROR?1045?(28000):Access?denied?for?user?‘root‘@‘localhost‘?(using?password:?NO)的方法
- 全面分析MySQL?ERROR?1045出現(xiàn)的原因及解決
- MySQL登錄時出現(xiàn)ERROR 1045: Access denied for user ‘root‘@‘localhost‘ (using password: YES)無法打開解決方法匯總
- mysql 登錄報錯:ERROR 1045 (28000):Access denied for user ‘root‘@‘localhost‘ (using password: Yes)
相關(guān)文章
MySQL 數(shù)據(jù)庫約束、聚合查詢和聯(lián)合查詢使用案例
這篇文章主要介紹了MySQL 數(shù)據(jù)庫約束、聚合查詢和聯(lián)合查詢使用案例,本文給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧2024-08-08將.sql文件導(dǎo)入到MySQL數(shù)據(jù)庫具體步驟
MySQL有多種方法導(dǎo)入多個.sql文件,下面這篇文章主要介紹了將.sql文件導(dǎo)入到MySQL數(shù)據(jù)庫的具體步驟,文中將實現(xiàn)步驟介紹的非常詳細,需要的朋友可以參考下2023-10-10CentOS6.9下mysql 5.7.17安裝配置方法圖文教程
這篇文章主要為大家詳細介紹了CentOS6.9下mysql 5.7.17安裝配置方法圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-10-10MySQL?數(shù)據(jù)庫范式化設(shè)計理論總結(jié)
這篇文章主要介紹了MySQL?數(shù)據(jù)庫范式設(shè)計理論總結(jié),數(shù)據(jù)庫的規(guī)劃化范式設(shè)計,在邏輯結(jié)構(gòu)上可以讓結(jié)構(gòu)更加細粒度,容易理解,下文我們就來了解具體的內(nèi)容介紹吧2022-04-04MySQL如何實現(xiàn)快速插入大量測試數(shù)據(jù)
這篇文章主要介紹了MySQL如何實現(xiàn)快速插入大量測試數(shù)據(jù)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-11-11MySQL存儲過程的創(chuàng)建使用以及實現(xiàn)數(shù)據(jù)快速插入
因最近想要測試一下MySQL百萬級數(shù)據(jù)處理過程,所以要一次對數(shù)據(jù)庫快速插入大量數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于MySQL存儲過程的創(chuàng)建使用以及實現(xiàn)數(shù)據(jù)快速插入的相關(guān)資料,需要的朋友可以參考下2023-03-03MySQL中的count(*)?和?count(1)?區(qū)別性能對比分析
這篇文章主要介紹了MySQL中的count(*)和count(1)區(qū)別性能對比,本節(jié)還介紹了我們常說的索引下推,結(jié)合實例代碼給大家介紹的非常詳細,需要的朋友可以參考下2023-05-05