Error: 18456, Severity: 14, State: 16
Description State=16 means that the incoming user does not have permissions to log into the target database. This can also happen if for example the default database for user is not online (for example the database is marked suspect or it is in restoring more).
You can try all below different solutions to resolve the issue. As SQL Server 2005/2008 is not giving the reason for the login failure.
Thanks to SQL Server 2011 where it is stating the reason as well for the login failure.
Trouble shoot the suspect database issue or bring the database online or give the appropriate permission to user.
There may be case where default database is renamed, check that login is pointing correct database as default database.
Un-checked the auto-close connection from database properties.
If login is trying to open the database explicitly, check no job is running on that database which has opened it already explicitly.
Check if the login has appropriate permission on SQL Server and database.
Make sure Login credential is not expired.
There may be case where windows login re-created, drop the login from SQL Server and create it again.