建立新資料庫

1
CREATE DATABASE 'databaseName';

簡單粗暴,直接新增即可。

建立新使用者

1
CREATE USER 'user_name'@'localhost' IDENTIFIED BY 'password';
  • user_name 為新使用者名稱
  • 僅限本機登入則輸入localhost,若外部可登入則輸入%
  • password 為新使用者密碼

設定使用者權限

1
GRANT ALL PRIVILEGES ON `database` . * TO 'user'@'localhost';

這句意思是提升(所有權限) 在 (資料庫) 的 (所有資料表) 有效於 (使用者) @ (本機登入) 有括弧的地方都可以視情況更改。

例如 Read-Only 的權限如下,亦即僅開啟 SELECT 權限。

1
GRANT SELECT ON database.* TO 'user'@'localhost';

根據 StackOverflow PirrenCode 的回答 MySQL能使用的權限有這些

  • ALL PRIVILEGES – grants all privileges to the MySQL user
  • CREATE – allows the user to create databases and tables
  • DROP - allows the user to drop databases and tables
  • DELETE - allows the user to delete rows from specific MySQL table
  • INSERT - allows the user to insert rows into specific MySQL table
  • SELECT – allows the user to read the database
  • UPDATE - allows the user to update table rows

讀取修改資料

最後,使用 flush privileges 可以直接將修改後的內容讀取到記憶體,不須重新啟動 MySQL。


參考資料

  1. https://docs.rackspace.com/support/how-to/create-and-edit-users-in-mysql/