MariaDB: User doesn't get all privileges
SenojLuap opened this issue · 2 comments
According to the README.md, you should be able to create a new user (via MARIADB_USER / MYSQL_USER, MARIADB_PASSWORD / MYSQL_PASSWORD environment variables), and that user should be granted all privileges. However, after making the attempt, my experience was that the user was created, but it had no access.
My docker-compose.yml file:
version: "3"
services:
mariadb:
image: mariadb:10.9.3
environment:
MARIADB_ROOT_PASSWORD: dev
MARIADB_USER: taskman
MARIADB_PASSWORD: taskman
volumes:
- ./mariadb:/var/lib/mysql
ports:
- 3306:3306
Output from running 'SELECT * FROM user;' (with the mysql database active):
+-----------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+---------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+--------------+--------------------+
| Host | User | Password | Select_priv | Insert_priv | Update_priv | Delete_priv | Create_priv | Drop_priv | Reload_priv | Shutdown_priv | Process_priv | File_priv | Grant_priv | References_priv | Index_priv | Alter_priv | Show_db_priv | Super_priv | Create_tmp_table_priv | Lock_tables_priv | Execute_priv | Repl_slave_priv | Repl_client_priv | Create_view_priv | Show_view_priv | Create_routine_priv | Alter_routine_priv | Create_user_priv | Event_priv | Trigger_priv | Create_tablespace_priv | Delete_history_priv | ssl_type | ssl_cipher | x509_issuer | x509_subject | max_questions | max_updates | max_connections | max_user_connections | plugin | authentication_string | password_expired | is_role | default_role | max_statement_time |
+-----------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+---------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+--------------+--------------------+
| localhost | mariadb.sys | | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | | | | | 0 | 0 | 0 | 0 | mysql_native_password | | Y | N | | 0.000000 |
| localhost | root | *27AEDA0D3A56422C3F1D20DAFF0C8109058134F3 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | | | | | 0 | 0 | 0 | 0 | mysql_native_password | *27AEDA0D3A56422C3F1D20DAFF0C8109058134F3 | N | N | | 0.000000 |
| % | root | *27AEDA0D3A56422C3F1D20DAFF0C8109058134F3 | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | | | | | 0 | 0 | 0 | 0 | mysql_native_password | *27AEDA0D3A56422C3F1D20DAFF0C8109058134F3 | N | N | | 0.000000 |
| % | taskman | *90BEB5440D4F48129D0A4BFFF9297A8090B770ED | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | N | | | | | 0 | 0 | 0 | 0 | mysql_native_password | *90BEB5440D4F48129D0A4BFFF9297A8090B770ED | N | N | | 0.000000 |
+-----------+-------------+-------------------------------------------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+---------------+--------------+-----------+------------+-----------------+------------+------------+--------------+------------+-----------------------+------------------+--------------+-----------------+------------------+------------------+----------------+---------------------+--------------------+------------------+------------+--------------+------------------------+---------------------+----------+------------+-------------+--------------+---------------+-------------+-----------------+----------------------+-----------------------+-------------------------------------------+------------------+---------+--------------+--------------------+
Maybe I configured something incorrectly?
This user will be granted all access (corresponding to
GRANT ALL
) to theMARIADB_DATABASE
database
So you need to also specify which database the user should have all access to.
Crap. For whatever reason my brain just decided not to process the 'to the MARIADB_DATABASE' bit.
Well, at least I'm consistent ;)
Thanks!