Database connection failed: Your database does not accept the required authentication method. Please update your MySQL/MariaDB server and try again

Hello,

I just installed MariaDB on my server. And trying to create my server via txadmin. I pressed the show/hide database options and entered my database password also. But it says when i click the run recipe button : (in Step 2: Input Parameters)

Database connection failed: Your database does not accept the required authentication method. Please update your MySQL/MariaDB server and try again.

Also i saw this errors in mariadb error logs when i click the run recipe button:

2026-04-08  6:37:25 13 [Warning] Aborted connection 13 to db: 'unconnected' user: 'root' host: 'localhost' (Got timeout reading communication packets)
2026-04-08  7:10:16 31 [Warning] Aborted connection 31 to db: 'unconnected' user: 'root' host: 'localhost' (Got an error reading communication packets)
2026-04-08  7:11:09 32 [Warning] Aborted connection 32 to db: 'unconnected' user: 'root' host: 'localhost' (Got an error reading communication packets)
2026-04-08  7:11:24 33 [Warning] Aborted connection 33 to db: 'unconnected' user: 'root' host: 'localhost' (Got an error reading communication packets)

In the past, it was mentioned that this issue could be solved by installing XAMPP. I’m aware of that, but the databases set up by XAMPP constantly cause problems and I haven’t been able to resolve them. Moreover, it installs a very outdated version of MariaDB. So I decided to install MariaDB myself. Currently, only MariaDB and HeidiSQL are installed on my machine for SQL.

This is a common issue. txAdmin uses the mysql2 Node.js driver, which doesn’t support MariaDB’s newer ed25519 or unix_socket authentication plugins. It requires mysql_native_password.

Change the authentication plugin for your root user by the following

  1. Open a MariaDB shell (HeidiSQL or command line) and run:
ALTER USER 'root'@'localhost' IDENTIFIED VIA mysql_native_password USING PASSWORD('your_password');
FLUSH PRIVILEGES;
  1. Alternatively, create a dedicated user for txAdmin:
CREATE USER 'fivem'@'localhost' IDENTIFIED VIA mysql_native_password USING PASSWORD('your_password');
GRANT ALL PRIVILEGES ON *.* TO 'fivem'@'localhost';
FLUSH PRIVILEGES;

Then use fivem as the username in txAdmin instead of root.

If that alone doesn’t work, also check your MariaDB config file (my.ini, usually in C:\Program Files\MariaDB XX.X\data\ or the install directory)

[mysqld]
default_authentication_plugin=mysql_native_password

Restart the MariaDB service after changes.