管理員拒絕使用者訪問
對不起我的英語,我對伺服器的了解非常少……
我在我的電腦上安裝了 Mysql、Adminer、php-7.3 和 Apache2。我想嘗試建立一個數據庫,但為了得到這個警告,
使用者 ‘me’@’localhost’ 拒絕訪問數據庫 ‘mela’
mela是我嘗試建立的新數據庫,我是我在 Adminer 上的使用者名。當用 登錄 Mysql 時
sudo mysql -u root
,在SELECT User,Host FROM mysql.user;
我來這個,SELECT User,Host FROM mysql.user; +------------------+-----------+ | User | Host | +------------------+-----------+ | root | % | | me | localhost | | mysql.infoschema | localhost | | mysql.session | localhost | | mysql.sys | localhost | +------------------+-----------+
隨著
sudo sudo journalctl -xe
來,pam_unix(sudo:session): 由 (uid=0) 為 root 使用者打開的會話
與
sudo systemctl -l status apache2.service
1 月 31 日 17:24:00 debian systemd 1:啟動 Apache HTTP 伺服器… Jan 31 17:24:00 debian systemd 1:啟動 Apache HTTP 伺服器。
有了
sudo systemctl status mysql
這張圖片, 這張圖片展示了mysql是如何啟動的來
Show grants;
這個圖像 這個命令有什麼請任何人用簡單的話解釋我,我的錯誤在哪裡?
新安裝Mysql並以****root身份登錄,現在可以在Adminer上打開數據庫…,我要說我的步驟…,我使用 Debian。
1 -停止Apache2
sudo systemctl stop apache2.service
2 - 從我的電腦上的Mysql中刪除所有內容
注意:這可能會刪除一堆其他任何連結到 MySQL 的包,請仔細閱讀將刪除的內容。
sudo apt-get remove --purge *mysql\* sudo apt-get autoremove sudo apt-get autoclean
3 -因為我從MySQL中刪除了所有內容,所以現在安裝它們……
sudo apt-get install mysql-server
4 -另外,安裝Mysqli,因為我的電腦上有php7.3 ,所以我用php7.3安裝Mysql。
sudo apt-get install php7.3-mysqli
5 -有時我不知道為什麼..後來安裝了Mysql,來了這個警告,
連接錯誤:SQLSTATE
$$ HY000 $$ $$ 2054 $$伺服器請求客戶端未知的身份驗證方法
正如這裡所說,預設情況下,由於某種原因,mysql 8 預設外掛是 auth_socket。應用程序大多數時候都希望使用 密碼登錄到您的數據庫。我這樣做了,我登錄到Mysql,我給出了我在安裝時寫的root 密碼……
~$ mysql -u root -p
並寫下他要說的命令,
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
6 -重啟Mysql,
sudo systemctl restart mysql
7 -重新啟動Apache2
sudo systemctl restart apache2.service
8 -在Adminer登錄視窗,以root身份登錄,以及視窗如何顯示,我可以建立mela數據庫… 視窗來顯示我的mela數據庫
@Abhijith,感謝您的回答,祝您有美好的一天!
由於錯誤表明使用者“我”沒有數據庫“mela”的權限
要確認這一點,請以 mysql 使用者“me”身份執行以下命令
顯示贈款;
如果使用者對數據庫有權限,它將顯示