OK!
Comunque ho trovato il problema. Sul server MySQL di prova non setto mai la password e nel codice settavo $password="".
Se invece non c'è password bisogna omettere l'opzione:
GrazieCodice PHP:
$create_backup = exec("/usr/bin/mysqldump --opt --host=$host --user=$user-- $database> /var/www/temp/backup.sql");
ciao