Tal vez no estoy entendiendo... pero esto siempre me ha funcionado. No hay referencias al nombre de la base de datos y todos los definidores se eliminan, por lo que es muy fácil de restaurar desde el archivo que genera:
mysqldump -uUSERNAME -pPASSWORD database | sed -e 's/DEFINER=[^*]*\*/\*/' > backup.sql
Para restaurar:
mysql -uUSERNAME -pPASSWORD database < backup.sql
Mientras exista la base de datos que está restaurando (vacía o no), funciona a la perfección.