The error Msg: 18486 Login failed for user ’sa’ because the account is currently locked out will throw only when the account is locked.
When the account is getting locked?
When the number of unsuccessful login attempts exceeds certain time, the login account will be disabled by the System.
1. Disable the locking policy of the system. But it may affect the security level of the system as it will allow unlimited number of unsuccessful login attempts.
2. ALTER LOGIN "sa" With Password = 'YourPassword' UNLOCK;
-it will unlock the Account.
3. The best practice would be create a new system account with the same rights as "sa" and disable "Sa" login.
Same Errors and solution available under http://www.dotnetspider.com/resources/29472-SQL-Error-Login-failed-for-user-sa.aspx