Mysql

MariaDB:使用 unix 套接字外掛(無密碼)創建和授予新使用者

  • November 16, 2020

我剛剛在 Kubuntu 15.10 上安裝了 MariaDB。我可以通過從作業系統對使用者進行身份驗證的外掛以 root 使用者身份登錄。(這對我來說是新的,所以我正在學習它,而不是像大多數教程似乎推薦的那樣刪除外掛身份驗證。)

現在我想創建一個非 root 使用者並授予該使用者所有權限,並允許使用者在沒有密碼的情況下登錄 mysql(在 localhost 上)(僅使用外掛)。我該怎麼做?我也需要給使用者一個密碼嗎?

找到了答案。我需要的部分是“IDENTIFIED VIA unix_socket”,如下所示:

MariaDB [(none)]> CREATE USER serg IDENTIFIED VIA unix_socket;
MariaDB [(none)]> GRANT ALL PRIVILEGES on mydatabase.* to 'serg'@'localhost';

MariaDB [(none)]> select user, host, password, plugin from mysql.user;
+--------------+-----------+----------+-------------+
| user         | host      | password | plugin      |
+--------------+-----------+----------+-------------+
| root         | localhost |          | unix_socket |
| root         | mitra     |          | unix_socket |
| root         | 127.0.0.1 |          | unix_socket |
| root         | ::1       |          | unix_socket |
| serg         | localhost |          | unix_socket |
+--------------+-----------+----------+-------------+
5 rows in set (0.00 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;

然後在外殼中:

sudo service mysql restart

要使用使用者 ‘serg’ 登錄,請不要使用 sudo。只需使用mysql -u serg.

引用自:https://unix.stackexchange.com/questions/252267