Na versão recente do MySQL, isto é, versão 5.6 , você pode fazer isso através do comando mysql_config_editor, como descrito em link
Basicamente, o que ele faz é: criptografar suas credenciais de usuário / senha com um alias de host e, em seguida, usar o alias do host, colocar essas informações em um arquivo de configuração no diretório inicial e, quando necessário, em vez de fazendo algo como:mysqldump -uroot --password=mycleartextpass mydatabase > dumpfile.sql
você escreve:
mysqldump --login-path=myhostalias mydatabase > dumpfile.sql
evitando assim colocar sua senha em algum script em texto não criptografado.
Para que isso funcione, primeiro você deve (apenas uma vez) definir myhostalias
como:
mysql_config_editor set --login-path=myhostalias --host=mysqlhost.localnet.com --user=root --password
Você pode usar diferentes caminhos de login para diferentes contas e / ou hosts, conforme desejar. Muito boa ideia se você me perguntar.
Como nota, acredito, essa funcionalidade NÃO existe em qualquer versão abaixo de 5.6.