We're building a multi-tenant database but is having a little problem figuring out how allow a tenant to do backup and restore of their own data.

Read that mysqldump is one tool. But is this the optimal tool for the job? We're expecting the database to grow enough for us to do sharding.(which is another question)

Would appreciate any help or link to references.