Access denied for user debian-sys-maint

Ketika melakukan upgrade mysql atau mariadb pada debian-based linux, tiba-tiba pesan error tersebut muncul

neo@thematrix:~$ sudo service mysql restart
* Stopping MySQL database server mysqld [fail]
* Starting MySQL database server mysqld [ OK ]
/usr/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'debian-sys-maint'@'localhost' (using password: YES)'

Hal ini dapat terjadi ketika update script mariadb melakukan reconfigure pada file konfigurasi. Reconfigure ini menyebabkan password dari user debian-sys-maint menjadi berubah sehingga menimbulkan pesan access denied. User debian-sys-maint adalah user yang digunakan oleh debian untuk melakukan maintain terhadap basis data mysql. Untuk menghilangkan pesan error, maka password debian-sys-maint di basis data harus diubah.

cat /etc/mysql/debian.cnf

# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host     = localhost
user     = debian-sys-maint
password = n4aSHUP04s1J32X5
socket   = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
user     = debian-sys-maint
password = n4aSHUP04s1J32X5
socket   = /var/run/mysqld/mysqld.sock
basedir  = /usr

Pada file debian.cnf di atas terlihat bahwa ada field password. Field inilah yang berubah valuenya ketika upgrade ke database dilakukan. Yang perlu dilakukan untuk menghilangkan pesan error adalah mengupdate password pada user debian-sys-maint menjadi seperti di atas.

mysql -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY 'n4aSHUP04s1J32X5';
FLUSH PRIVILEGES;
sudo service mysql restart

Ada kemungkinan ketika upgrade mysql atau mariadb kembali dilakukan, hal ini dapat terjadi kembali. Jadi pastikan langkah di atas dicatat dengan baik.

[1][2]

Leave A Comment