phpmyadmin創建數據庫無權限


問題描述:

在使用wamps時,登錄localhost/phpmyadmin后,在數據庫頁面創建一個新的數據庫時,1.顯示“無權限操作”,2.“賬戶”頁面無法修改權限操作,且最底端的注意顯示用戶權限不夠。

解決方法:

1.嘗試了網上說的修改配置文件config.inc.php(修改phpmyadmin的登陸方式:cookie和http、添加 $cfg['Servers'][$i]['DisableIS'] = true;)都無效以后,在MySQL官網上找到了答案:

https://dev.mysql.com/doc/refman/5.7/en/creating-accounts.html#creating-accounts-granting-privileges

打開MySQL的終端,查看root用戶的權限:

show grants for 'root'@'localhost';

 

 如果報錯的話:The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

2.刷新一下權限表:

flush privileges;

 

3.把在所有數據庫的所有表的所有權限賦值給位於所有IP地址的root用戶

grant all on cactidb.* to root@'localhost' identified by 'psaaword'

 

4.刷新一下,然后show一下root用戶的權限

 

 

 有全部權限了,且可以授權。因此,在我看來,MySQL里,里面的super權限<all privileges。有個問題就是,在頁面中,root顯示的也是all privileges權限,但是權力不到位啊,可能顯示的是個寂寞吧。

【這里有一篇MySQL的權限詳解文章:https://cloud.tencent.com/developer/article/1056271】

5.這里有個小插曲,我在輸入命令時,輸錯一個字符,創建了一個新的用戶,並將用戶賦予所有權限,因此再次查詢root用戶時,顯示的root為代理狀態。

 

 

 因此,清除一下代理就行了,原來美少女的煩惱真的多,輸入錯也是一種痛苦。。。【老實人.jpg】

truncate table mysql.proxies_priv;

 

6.回到phpmyadmin頁面,頁面如果還沒有改的。查看賬戶狀態下面的提示,如果有重新載入,則點擊;如果沒有,則會提示缺少的具體的權限。比如我的顯示的是無RELAOD權限。那我就直接在MySQL終端添加權限:

grant all ON *.* to 'root'@'localhost' with grant option;#保險起見,all一下

 

flush privileges;
show grants for 'root'@'localhost';#每次操作完看看
grant all on cactidb.* to root@'localhost' identified by 'root';#添加cactibd權限

 

show一下,然后flush

 

 

 繼續添加權限:

grant all on reload.* to root@'localhost' identified by 'root';
grant all on process.* to root@'localhost' identified by 'root';

 

查看:

 

 

 7.查看登錄頁面,問題解決,可以新建數據庫啦!賬戶也沒有問題啦!

 

 

 原因:

我找了好多資料,貌似都沒有說到底層的真正原因。猜想要么又是我的環境問題,要么就是軟件本身版本問題。

收獲:

  • 無論是遇到什么問題,頁面會提供官網鏈接的,一般都可以在官網找到答案。[mysql參考手冊]
  • 遇到的大的問題單獨記下來
  • phpmyadmin登錄方式:https://blog.csdn.net/gigijingjing/article/details/53216179
  • MySQL錯誤:https://www.cnblogs.com/kingxiaozi/p/10619680.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM