tl;dr: You need to have your account that you're running the TFS Administration Console with added as a sysadmin to the database instance. Also, it adds all users and groups in the [TEAM FOUNDATION]\Team Foundation Service Accounts to the TFS_Warehouse database permissions for some strange reason.
This is a bit old, but I wanted to throw in my two cents here to give an update on what fixed this for me, and what I noticed:
We run TFS2010 here at work, and are working on moving our data center. As part of that, I recently moved our reporting databases to a new server.
When I attempted to update the reporting information after the databases were moved, I got the message "Failed to add Domain\InterfaceSvc account to the TfsWarehouseDataReader role on the Tfs_Warehouse relational database"
Now, what strikes me as odd, is that the InterfaceSvc account has nothing to do with TFS administration, it is a service account used by a Windows Service on another server that makes calls to TFS every 5 minutes. It's not part of any of the TFS administration settings, and there's no reason whatsoever for it to try to be added to this database.
First thing: Fix the error. That was pretty simple, the DBA added my personal domain account to be a sysadmin of the database instance and the error went away and everything worked fine.
Second thing: That service account got added to the database. As well as a few other accounts. It took me some digging but it appears that any user and group in the [TEAM FOUNDATION]\Team Foundation Service Accounts security group gets added to the TFS_Warehouse database. I have no idea why, but it appears to be consistent in both our Test and Production instances of TFS.