> For the complete documentation index, see [llms.txt](https://mariadb.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mariadb.com/docs/server/reference/system-tables/the-mysql-database-tables/mysql-db-table.md).

# mysql.db Table

The `mysql.db` table contains information about database-level privileges. The table can be queried and although it is possible to directly update it, it is best to use [GRANT](/docs/server/reference/sql-statements/account-management-sql-statements/grant.md) for setting privileges.

Note that the MariaDB privileges occur at many levels. A user may not be granted a privilege at the database level, but may still have permission on a table level, for example. See [privileges](/docs/server/reference/sql-statements/account-management-sql-statements/grant.md) for a more complete view of the MariaDB privilege system.

This table uses the [Aria](/docs/server/server-usage/storage-engines/aria.md) storage engine.

The `mysql.db` table contains the following fields:

| Field                    | Type          | Null | Key | Default | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ------------------------ | ------------- | ---- | --- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Host                     | char(60)      | NO   | PRI |         | Host (together with User and Db makes up the unique identifier for this record. Until MariaDB 5.5, if the host field was blank, the corresponding record in the [mysql.host](/docs/server/reference/system-tables/the-mysql-database-tables/obsolete-mysql-database-tables/mysql-host-table.md) table would be examined. From MariaDB 10.0, a blank host field is the same as the % wildcard.                                                                                                                                                 |
| Db                       | char(64)      | NO   | PRI |         | Database (together with User and Host makes up the unique identifier for this record.                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| User                     | char(80)      | NO   | PRI |         | User (together with Host and Db makes up the unique identifier for this record.                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| Select\_priv             | enum('N','Y') | NO   |     | N       | Can perform [SELECT](/docs/server/reference/sql-statements/data-manipulation/selecting-data/select.md) statements.                                                                                                                                                                                                                                                                                                                                                                                                                            |
| Insert\_priv             | enum('N','Y') | NO   |     | N       | Can perform [INSERT](/docs/server/reference/sql-statements/data-manipulation/inserting-loading-data/insert.md) statements.                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Update\_priv             | enum('N','Y') | NO   |     | N       | Can perform [UPDATE](/docs/server/reference/sql-statements/data-manipulation/changing-deleting-data/update.md) statements.                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Delete\_priv             | enum('N','Y') | NO   |     | N       | Can perform [DELETE](/docs/server/reference/sql-statements/data-manipulation/changing-deleting-data/delete.md) statements.                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Create\_priv             | enum('N','Y') | NO   |     | N       | Can [CREATE TABLE's](/docs/server/server-usage/tables/create-table.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Drop\_priv               | enum('N','Y') | NO   |     | N       | Can [DROP DATABASE's](/docs/server/reference/sql-statements/data-definition/drop/drop-database.md) or [DROP TABLE's](/docs/server/server-usage/tables/drop-table.md).                                                                                                                                                                                                                                                                                                                                                                         |
| Grant\_priv              | enum('N','Y') | NO   |     | N       | User can [grant](/docs/server/reference/sql-statements/account-management-sql-statements/grant.md) privileges they possess.                                                                                                                                                                                                                                                                                                                                                                                                                   |
| References\_priv         | enum('N','Y') | NO   |     | N       | Unused                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| Index\_priv              | enum('N','Y') | NO   |     | N       | Can create an index on a table using the [CREATE INDEX](/docs/server/reference/sql-statements/data-definition/create/create-index.md) statement. Without the INDEX privilege, user can still create indexes when creating a table using the [CREATE TABLE](/docs/server/server-usage/tables/create-table.md) statement if the user has have the CREATE privilege, and user can create indexes using the [ALTER TABLE](/docs/server/reference/sql-statements/data-definition/alter/alter-table.md) statement if they have the ALTER privilege. |
| Alter\_priv              | enum('N','Y') | NO   |     | N       | Can perform [ALTER TABLE](/docs/server/reference/sql-statements/data-definition/alter/alter-table.md) statements.                                                                                                                                                                                                                                                                                                                                                                                                                             |
| Create\_tmp\_table\_priv | enum('N','Y') | NO   |     | N       | Can create temporary tables with the [CREATE TEMPORARY TABLE](/docs/server/server-usage/tables/create-table.md) statement.                                                                                                                                                                                                                                                                                                                                                                                                                    |
| Lock\_tables\_priv       | enum('N','Y') | NO   |     | N       | Acquire explicit locks using the [LOCK TABLES](/docs/server/reference/sql-statements/transactions/lock-tables.md) statement; user also needs to have the SELECT privilege on a table in order to lock it.                                                                                                                                                                                                                                                                                                                                     |
| Create\_view\_priv       | enum('N','Y') | NO   |     | N       | Can create a view using the [CREATE\_VIEW](/docs/server/server-usage/views/create-view.md) statement.                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| Show\_view\_priv         | enum('N','Y') | NO   |     | N       | Can show the [CREATE VIEW](/docs/server/server-usage/views/create-view.md) statement to create a view using the [SHOW CREATE VIEW](/docs/server/reference/sql-statements/administrative-sql-statements/show/show-create-view.md) statement.                                                                                                                                                                                                                                                                                                   |
| Create\_routine\_priv    | enum('N','Y') | NO   |     | N       | Can create stored programs using the [CREATE PROCEDURE](/docs/server/server-usage/stored-routines/stored-procedures/create-procedure.md) and [CREATE FUNCTION](/docs/server/reference/sql-statements/data-definition/create/create-function.md) statements.                                                                                                                                                                                                                                                                                   |
| Alter\_routine\_priv     | enum('N','Y') | NO   |     | N       | Can change the characteristics of a stored function using the [ALTER FUNCTION](/docs/server/reference/sql-statements/data-definition/alter/alter-function.md) statement.                                                                                                                                                                                                                                                                                                                                                                      |
| Execute\_priv            | enum('N','Y') | NO   |     | N       | Can execute [stored procedure](/docs/server/server-usage/stored-routines/stored-procedures.md) or functions.                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Event\_priv              | enum('N','Y') | NO   |     | N       | Create, drop and alter [events](/docs/server/server-usage/triggers-events/event-scheduler.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| Trigger\_priv            | enum('N','Y') | NO   |     | N       | Can execute [triggers](/docs/server/server-usage/triggers-events/triggers.md) associated with tables the user updates, execute the [CREATE TRIGGER](/docs/server/server-usage/triggers-events/triggers/create-trigger.md) and [DROP TRIGGER](/docs/server/reference/sql-statements/data-definition/drop/drop-trigger.md) statements.                                                                                                                                                                                                          |
| Delete\_history\_priv    | enum('N','Y') | NO   |     | N       | Can delete rows created through [system versioning](/docs/server/reference/sql-structure/temporal-tables/system-versioned-tables.md).                                                                                                                                                                                                                                                                                                                                                                                                         |

The [Acl\_database\_grants](/docs/server/server-management/variables-and-modes/server-status-variables.md#acl_database_grants) status variable indicates how many rows the `mysql.db` table contains.

<sub>*This page is licensed: CC BY-SA / Gnu FDL*</sub>

{% @marketo/form formId="4316" %}
