如何允許用戶在 Linux 上訪問 MySQL 數據庫?
在Linux 系統上安裝 MySQL并創建新數據庫后,您需要設置一個新用戶來訪問該數據庫,授予其讀取和/或寫入數據的權限。
不建議使用 root 帳戶,而是根據需要創建一個新帳戶并授予權限,在本教程中,您將看到如何允許用戶在 Linux 上訪問 MySQL 數據庫。
在本教程中,您將學習:
- 如何創建一個新的 MySQL 用戶
- 如何允許完全用戶訪問 MySQL 數據庫
- 如何允許某些類型的訪問 MySQL 數據庫
第一步
首先使用 root 帳戶打開 MySQL。
$ sudo mysql
或者,在某些配置中,您可能需要輸入以下命令并提供您的 root 密碼:
$ mysql -u root -p
第二步
如果您還沒有這樣做,請創建一個新用戶,我們將在后面的步驟中向其授予數據庫權限。以下示例創建用戶wljslmz,使用您自己的信息填寫占位符值。
mysql> CREATE USER 'wljslmz'@'localhost' IDENTIFIED BY 'password_here';
如果您還沒有創建數據庫,請同時創建:
mysql> CREATE DATABASE test;
第三步
現在是時候向我們的wljslmz用戶授予test數據庫權限了,以下是您向用戶授予完全權限的方式,這允許他們對數據庫執行任何操作。
mysql> GRANT ALL PRIVILEGES ON test.* TO 'wljslmz'@'localhost';
或者,如果您只想授予用戶訪問數據庫mytable內特定表的權限test:
mysql> GRANT ALL PRIVILEGES ON test.mytable TO 'wljslmz'@'localhost';
如果您不想將所有權限授予用戶,您也可以使用其他權限。
- CREATE - 允許用戶在數據庫中創建新表
- DROP - 允許用戶刪除表或數據庫本身
- DELETE - 允許用戶刪除表中的行
- INSERT - 允許用戶向表中插入新的數據行
- SELECT - 允許用戶讀取數據庫中的條目
- UPDATE - 允許用戶更新現有的數據庫行
第四步
最后一步是在完全退出 MySQL 之前刷新所有權限。
mysql> FLUSH PRIVILEGES;
mysql> exit
這里的所有都是它的,您的用戶現在應該能夠訪問數據庫或您授予訪問權限的數據庫內的任何表。
總結
在本教程中,我們了解了如何允許用戶訪問 Linux 系統上的 MySQL 數據庫。這比使用 root 帳戶執行所有操作更好、更安全,并且應該在任何 Linux 發行版上都可以正常工作。現在很容易授予更多特權或根據需要將其取消。