Creating a unique account for their database is a good idea, in fact I think this should be done with all applications as if one becomes exploited there is limited risk amongst the other applications and databases.
However I think you could be going a bit far by disabling the root user for their database, so long as the user has a very secure password and you can't access via a remote MySQL (port 3306) then it should be ok to leave the user with privileges.
In fact keeping the root user there can be very helpful if you need to add/delete/modify user privileges etc.
Basically keep the root user, however don't use it in the application or any other application, it should be purely as a 'super user' for administration.