」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > MySQL 終端機:登入、使用者和權限

MySQL 終端機:登入、使用者和權限

發佈於2024-11-02
瀏覽:923

MySQL Terminal: Login, Users and Permissions

存取MySQL

sudo mysql -u root -p 

sudo mysql -u root -p 指令用於以具有管理權限的 root 使用者身分存取 MySQL。運行命令後,會提示輸入MySQL root用戶密碼。

  • sudo:以超級使用者權限執行指令。
  • mysql: 啟動 MySQL 用戶端。
  • -u root:指定您以「root」使用者身分連線。
  • -p:請求MySQL詢問指定使用者的密碼。

如果沒有為MySQL root使用者設定密碼,指令可能會失敗。如果是這種情況,您可以設定密碼或不使用 -p(無密碼)選項存取 MySQL。

建立一個新用戶

SQL CREATE USER 指令用於在 MySQL 中使用使用者名稱和密碼建立新使用者。

CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
  • 使用者名稱:您正在建立的新使用者的名稱。
  • localhost:指定使用者只能從執行 MySQL 的伺服器連線到 MySQL。如果要允許遠端連接,可以將 localhost 替換為 % 或特定的 IP 位址。
  • 密碼:將與該使用者關聯的密碼。

建立使用者後,需要為其授予權限。

授予使用者權限

  • 授予資料庫的所有權限

如果要授予特定資料庫的所有權限,請使用:

GRANT ALL PRIVILEGES ON database_name.* TO 'user_name'@'localhost';
  • 特定權限

也可以指定權限,如SELECT、INSERT、UPDATE、DELETE等

GRANT permission ON database_name.* TO 'user_name'@'localhost';
  • 特定表的權限

僅授予特定表格的權限

GRANT ALL PRIVILEGES ON database_name.table_name TO 'user_name'@'localhost';
  • 授予全域權限

授予所有資料庫的權限

GRANT ALL PRIVILEGES ON *.* TO 'user_name'@'localhost';
  • 允許使用者授予其他使用者權限
GRANT ALL PRIVILEGES ON *.* TO 'user_name'@'localhost' WITH GRANT OPTION;

更新權限

FLUSH PRIVILEGES 指令用於在 MySQL 中重新載入權限表,使您對使用者權限所做的變更生效,無論是使用 GRANT、REVOKE 或 CREATE USER 指令。

FLUSH PRIVILEGES;

檢查權限

SHOW GRANTS FOR 'username'@'localhost';

SHOW GRANTS FOR username'@'localhost;指令顯示與 MySQL 中指定使用者關聯的權限。它對於檢查使用者對資料庫擁有的權限很有用。

撤銷權限

REVOKE指令用於刪除MySQL中使用者的特定權限。

REVOKE ALL PRIVILEGES ON database_name.* FROM 'user_name'@'localhost';
  • 撤銷權限後,使用者仍然存在,但在指定資料庫中沒有權限。
  • 建議在撤銷權限後執行 FLUSH PRIVILEGES 命令,以確保變更立即套用。

列出用戶

SELECT User, Host FROM mysql.user;

SELECT User, Host FROM mysql.user;指令用於查詢MySQL中的mysql.user表,該表儲存了系統中建立的所有使用者的資訊。

了解哪個用戶已連接

SELECT USER();

選擇使用者(); MySQL 中的指令傳回您在目前工作階段中使用的使用者名稱和主機名稱。它是一個顯示使用哪個使用者帳號連接到資料庫的函數,格式為 user@host.

版本聲明 本文轉載於:https://dev.to/xxzeroxx/mysql-terminal-login-users-and-permissions-53ie?1如有侵犯,請聯絡[email protected]刪除
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3