Crie um arquivo chamado .my.cnf
em seu diretório inicial que se parece com isso. Certifique-se de que as permissões do sistema de arquivos estejam definidas de tal forma que somente o usuário proprietário possa lê-lo (0600).
[client]
host = localhost
user = username.
password = thepassword
socket = /var/run/mysqld/mysqld.sock
#database = mysql
Como você também marcou sua pergunta mysqldump, você deve examinar esta questão.
Usando o mysqldump no cron job sem senha de root
Update (2016-06-29) Se você estiver executando o mysql 5.6.6 ou superior, você deve olhar o ferramenta mysql_config_editor que permite que você armazenar credenciais em um arquivo criptografado. Obrigado ao Giovanni por mencionar isso para mim.