解決centos下MySQL登錄1045問題
由于需要在centos下部署整個應(yīng)用,自然少不了對數(shù)據(jù)庫的操作。但很多人可能會遇到一些問題,比如創(chuàng)建用戶成功,但是卻無法登錄。
無法登陸一般就兩個原因。第一,遠(yuǎn)程訪問端口沒開,第二個原因就是密碼錯誤了(很奇怪,我們登錄時的密碼明明是正確的,但還是會提示密碼錯誤,我也不知道這是什么原因,有可能是編碼之類的吧)
遠(yuǎn)程訪問端口沒開這種情況比較好解決,如果用的云服務(wù)器,在控制臺去配置安全組,打開相應(yīng)端口就可以了。
這里說一下第二種錯誤,這個比較坑。
第二種情況往往會報錯顯示:1045 Access denied for user 'root'@'%' (using password:YES)。
我把完整流程大致寫一遍。我的操作系統(tǒng)是centos7.4,MySQL版本是5.7。
首先登陸mysql,我的是root用戶。登錄命令是
mysql -u root -p
輸入登錄密碼后,窗口變化如下圖:
首先看一下現(xiàn)在系統(tǒng)里面有哪些用戶,以及用戶的具體權(quán)限,具體命令:
查看用戶:
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
查看具體用戶的權(quán)限:
show grants for 'root'@'%';
窗口變化如下圖:
接下來我要創(chuàng)建一位用戶,讓改用戶能夠遠(yuǎn)程訪問數(shù)據(jù)庫,并對其進行操作。具體命令如下:
create user zhangsanidentified by 'zhangsan.CQU.2020.lisi'; grant all privileges on *.* to zhangsan@'%' identified by 'zhangsan.CQU.2020.lisi';
或者一條命令直接搞定:
grant all privileges on *.* to 'zhangsan'@'%' identified by 'zhangsan.CQU.2020.lisi' with grant option;
操作完成后,千萬記得刷新,否則可能不生效,命令如
flush privileges;
此時再查看用戶,就能發(fā)現(xiàn)多了一位用戶,也就是我們剛才創(chuàng)建的用戶。
輸入exit,退出MySQL,然后試著用zhangsan這個賬戶登錄一下。
問題順利出現(xiàn)了,就是登不上去,接下來去解決這個問題咯。
首先,找到自己的MySQL的my.cnf文件,(我的在etc文件夾下面,不同的人可能不一樣,用Linux命令按條件查找即可)
打開文件后(vi my.cnf),進入編輯模式(a)找到mysqld關(guān)鍵字,在mysqld下面添加skip-grant-tables,保存退出(先esc,再:wq),如圖:
將注釋去掉即可。
然后重啟mysql,命令如下:
service mysqld restart
接下來就是重新登錄,然后修改密碼啦。
提示輸入密碼那里,直接enter,跳過密碼驗證,登陸成功。接下來進入mysql數(shù)據(jù)庫,然后修改密碼,命令如下。
use mysql
修改密碼:
update user set authentication_string=password("zhangsan.CQU.2020.lisi") where user="zhangsan";
如圖:
然后退出mysql,將剛剛修改過的my.cnf文件改回來,并重新啟動mysql。
可以看到登錄已經(jīng)成功了,遠(yuǎn)程連接也能成功,就不演示了,如果遠(yuǎn)程登錄還不成功,檢查一下端口設(shè)置,是否開啟了遠(yuǎn)程訪問。
總結(jié)
以上所述是小編給大家介紹的解決centos下MySQL登錄1045問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
- 解決mysql ERROR 1045 (28000)-- Access denied for user問題
- mysql ERROR 1045 (28000)問題的解決方法
- mysql數(shù)據(jù)庫中1045錯誤的解決方法
- MySQL忘記root密碼錯誤號碼1045的解決辦法
- 解決MySQL添加新用戶-ERROR?1045?(28000)的問題
- 全面分析MySQL?ERROR?1045出現(xiàn)的原因及解決
- MySQL8.0+版本1045錯誤的問題及解決辦法
- Navicat連接MySQL提示1045錯誤解決(重置MySQL密碼)
- MySQL報1045錯誤的幾種可能場景
- mysql錯誤碼1045解決方案
相關(guān)文章
MySQL5.7.27-winx64版本win10下載安裝教程圖解
這篇文章主要介紹了MySQL5.7.27-winx64版本win10下載安裝教程,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-09-09MySQL JOIN關(guān)聯(lián)查詢的原理及優(yōu)化
這篇文章主要介紹了MySQL JOIN關(guān)聯(lián)查詢的原理及優(yōu)化,文章圍繞主題展開詳細(xì)的內(nèi)介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-08-08mysql中如何判斷當(dāng)前是字符 mysql判斷字段中有無漢字
這篇文章主要介紹了mysql如何判斷字段中有無漢字的方法,使用length與char_length兩個函數(shù)就可以完成2014-01-01