Drupal does use mysql_connect() from what I see in its source. It just has you enter your mysql info in the form of a url and then uses parse_url() on it.
Anyway, the mysql server can't be down if you're getting an access denied response. My guess would be that the username/password are not correct. Try logging in with the same info through phpmyadmin and see if it works. If you're going through cpanel, you'll have to logout first since it automatically logs you in.
If you're able to login with the same info, then it might be that your password has problematic characters in it. Drupal uses urldecode() on the data from parse_url(). So if part of your password is something like '%C0', this would be converted to a character. Try displaying the result of urldecode() on your password to see if it's being changed.