mysql數(shù)據(jù)庫鏈接失敗常見問題及解決
錯誤提示
1045-Access denied for user ‘root‘ ‘localhost‘(using password: YES)
1、找到mysql的my.ini文件,在mysqld關(guān)鍵字下面添加skip-grant-tables,如下圖所示:
該命令作用是跳過授權(quán)表,也就是輸入任意字符賬號密碼都可以進入mysql看到所有數(shù)據(jù)表。
當忘記賬號密碼時可以使用改命令修改密碼,但是要隨用隨關(guān),重啟mysql,不然服務器上會有很大的風險。
2、重啟MySQL服務
3、在終端中輸入mysql -u root mysql,連接數(shù)據(jù)庫
4、修改密碼
在終端進入中輸入:
update user set password=password("123456") where user="root";
如果有報錯
“ERROR 1054 (42S22): Unknown column 'password' in 'field list'”
那么就輸入:
update user set authentication_string=password('123456') where user='root';
輸入exit退出,再重新連接數(shù)據(jù),即可連接成功。
mysql數(shù)據(jù)庫只能本機連接,不能遠程鏈接
進入mysql數(shù)據(jù)庫 $mysql -u root -p >use mysql; 1.>select host,user from user; //查看用戶 MySQL建用戶的時候會指定一個host,默認是127.0.0.1/localhost只能本機訪問; 其它機器用這個用戶帳號訪問會提示沒有權(quán)限,host改為%,表示允許所有機器訪問。 2.設(shè)置host為% >update user set host='%' where user = 'root'; %為任意用戶都有權(quán)限連接,localhost為只能本機連接,配置完host為%這一步就已經(jīng)能外網(wǎng)訪問了 3.授權(quán)用戶具體權(quán)限 >grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option; >flush privileges;//刷新權(quán)限 注意: 一定要重啟mysql: # systemctl restart mysqld
qiqushuge_comy用戶有兩個,針對不同的針對不同的主機來控制用戶的訪問的。
授權(quán)的時候grant all privileges on *.* to 'qiqushuge_com'@'localhost' identified by '123456' with grant option;
- all privileges:表示將所有權(quán)限授予給用戶。也可指定具體的權(quán)限,如:SELECT、CREATE、DROP等。
- on:表示這些權(quán)限對哪些數(shù)據(jù)庫和表生效,格式:數(shù)據(jù)庫名.表名,這里寫“*”表示所有數(shù)據(jù)庫,所有表。如果我要指定將權(quán)限應用到test庫的user表中,可以這么寫:test.user
- to:將權(quán)限授予哪個用戶。格式:”用戶名”@”登錄IP或域名”。%表示沒有限制,在任何主機都可以登錄。比如:”yangxin”@”192.168.0.%”,表示yangxin這個用戶只能在192.168.0IP段登錄
- identified by:指定用戶的登錄密碼
- with grant option:表示允許用戶將自己的權(quán)限授權(quán)給其它用戶
可以使用GRANT給用戶添加權(quán)限,權(quán)限會自動疊加,不會覆蓋之前授予的權(quán)限,比如你先給用戶添加一個SELECT權(quán)限,后來又給用戶添加了一個INSERT權(quán)限,那么該用戶就同時擁有了SELECT和INSERT權(quán)限。
查看數(shù)據(jù)庫授權(quán)的方法:
SHOW GRANTS FOR 'root'@'localhost';
寶塔沒有放行端口,云服務器沒有添加安全組
在寶塔安全里添加端口規(guī)則,放行數(shù)據(jù)庫默認端口3306
在服務器阿里云、騰訊云等放行端口3306
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Windows Server 2003下修改MySQL 5.5數(shù)據(jù)庫data目錄
這篇文章主要介紹了Windows Server 2003下修改MySQL 5.5數(shù)據(jù)庫data目錄,需要的朋友可以參考下2016-04-04MySQL外鍵關(guān)聯(lián)操作的實現(xiàn)
本文主要介紹了MySQL外鍵關(guān)聯(lián)操作的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-07-07使用innodb_force_recovery解決MySQL崩潰無法重啟問題
這篇文章主要介紹了使用innodb_force_recovery解決MySQL崩潰無法重啟問題,這只一個成功案例,并不是萬能的解決方法,需要酌情考慮,需要的朋友可以參考下2015-05-05