3090
MariaDBERRORNotableAccess ControlHIGH confidence

GRANT user already identified via a plugin

Production Risk

Low — only the GRANT statement fails.

What this means

A GRANT statement attempted to create a user with IDENTIFIED BY, but the user already exists and is authenticated via an authentication plugin.

Why it happens
  1. 1GRANT … IDENTIFIED BY used on a user already authenticated via a plugin, creating an ambiguous auth configuration.
How to reproduce
trigger — this will error
trigger — this will error
GRANT SELECT ON db.* TO 'plugin_user'@'host' IDENTIFIED BY 'pass';

expected output

ERROR 3090 (HY000): Changing schema while an active plugin already exists is not supported.

Fix

Use ALTER USER to change authentication separately

Use ALTER USER to change authentication separately
ALTER USER 'plugin_user'@'host' IDENTIFIED BY 'pass';
GRANT SELECT ON db.* TO 'plugin_user'@'host';

Why this works

Separates authentication management from privilege granting.

What not to do

Sources
Official documentation ↗

MySQL 8.0 — 3090 ER_GRANT_PLUGIN_USER_EXISTS2

Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev

← All MariaDB errors