I'm setting up a new server using MariaDB (current stable version of 10.3) and I notice that all of my users - mainly root and debian-sys-maint - do not have an authentication_string after the installation is done, even after running mysql_secure_installation.

I'm about to re-install my server again and wondering how do I set all my users to get an authentication_string during the installation? And if that isn't possible, would it cause problems if I set a password to debian-sys-maint user?

1 Answer 1


Unlike newer versions of MySQL (5.7+), MariaDB doesn't seem to use the authentication_string of the user table for normal passwords when using the default plugin (i.e. mysql_native_password). Instead, the passwords are found in the password column, like in older versions of MySQL.

However, you can get something into the authentication_string if you create a user using e.g. the pam plugin:

CREATE USER u1@localhost IDENTIFIED VIA pam USING 'mariadb';

(authentiation_string now contains 'mariadb' in plaintext for this user, though this is not the password, just a reference to a PAM configuration file. With PAM the password is no longer stored in MariaDB.)

  • During installation, when I enter a password for the root user, does debian-sys-maint use the same password for root? Commented Jun 18, 2018 at 23:21
  • @GregorySchultz I don't think so. The debian-sys-maint user's credentials found in /etc/mysql/debian.cnf, so you can verify for yourself.
    – dbdemon
    Commented Jun 19, 2018 at 7:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.