Archive for the ‘Debian’ category

MySQL and ‘debian-sys-maint’ account

maio 12th, 2008

Uma característica de funcionamento do MySQL no Debian é o usuário ‘debian-sys-maint’ que gerencia o funcionamento e administração do serviço. Migrando de um servidor rodando “Slackware” eu acabei eliminando este usuário. Tive como consequência uma série de falhas nos scripts administrativos do MySQL. Esta nota serve para ajudar na restauração deste usuário para que estes scripts voltem a funcionar.
Primeira tarefa é olhar qual a senha que o Debian gerou na instalação do MySQL.

jupiter:~# cat /etc/mysql/debian.cnf
# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host     = localhost
user     = debian-sys-maint
password = kdlkjiuqEIjd881kDi
socket   = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
user     = debian-sys-maint
password = kdlkjiuqEIjd881kDi
socket   = /var/run/mysqld/mysqld.sockbasedir  = /usr
jupiter:~#

Agora é só criar o usuário no MySQL com esta senha :

jupiter:~# mysql -uroot -p'secretpass'
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 18
Server version: 5.0.32-Debian_7etch5-log Debian etch distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.  

mysql> use mysql\g
Query OK, 0 rows affected (0.00 sec)  

mysql> GRANT ALL PRIVILEGES ON *.* TO 'debian-sys-maint'@'localhost'
IDENTIFIED BY 'kdlkjiuqEIjd881kDi' WITH GRANT OPTION\g
Query OK, 0 rows affected (0.00 sec)  

mysql> flush privileges\g
Query OK, 0 rows affected (0.00 sec)  

mysql> quit
Bye  

jupiter:~#

Detalhe importante: no comando “GRANT” eu não utilizei o “IDENTIFIED BY PASSWORD” como é o usual na criação de usuários comuns, isto porque a senha no arquivo debian.cnf já está encriptada.