FLUSH PRIVILEGES

September 6, 2023 ยท View on GitHub

The statement FLUSH PRIVILEGES instructs TiDB to reload the in-memory copy of privileges from the privilege tables. You must execute this statement after manually editing tables such as mysql.user. However, executing this statement is not necessary after using privilege statements like GRANT or REVOKE. To execute this statement, the RELOAD privilege is required.

Synopsis

FlushStmt ::=
    'FLUSH' NoWriteToBinLogAliasOpt FlushOption

NoWriteToBinLogAliasOpt ::=
    ( 'NO_WRITE_TO_BINLOG' | 'LOCAL' )?

FlushOption ::=
    'PRIVILEGES'
|   'STATUS'
|    'TIDB' 'PLUGINS' PluginNameList
|    'HOSTS'
|   LogTypeOpt 'LOGS'
|   TableOrTables TableNameListOpt WithReadLockOpt

Examples

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)

MySQL compatibility

The FLUSH PRIVILEGES statement in TiDB is fully compatible with MySQL. If you find any compatibility differences, report a bug.

See also