Проблема возникает из-за того, что вы используете перенаправление каналов и ввода в той же команде, и в этом случае sudo попытается прочитать ваш пароль из файла database.dump. Правильный путь:
mysql_cmd="mysql database < database.dump"
echo 'password' | sudo -S $mysql_cmd
или:
alias mysql_cmd="mysql database < database.dump"
echo 'password' | sudo -S mysql_cmd
или, как указал Оли в этом комментарии:
echo "password" | sudo -S sh -c "mysql database < database.dump"