Today I found that my automated MySQL backups have been choking for the last few days with “mysqldump: Couldn’t execute show create table view” because I recently added a view to one of the databases. Apparently the backup user needs some additional rights. Now I know that the views in MySQL have an odd security structure and there were bugs in an older 5.0.x version, but that is long since patched. After a little more research I found my backup user needed the “SHOW VIEW” permission.
GRANT SHOW VIEW ON mydatabase.*
TO backupuser IDENTIFIED BY 'somepassword';
If that does not do it for you, and you are still running 5.0.x, you’ll want to see this bug report http://bugs.mysql.com/bug.php?id=24070 for solutions.