Hi,
I just tried to install Drupal on a Linux server where I have total root control.
From Drupal, I get "Unable to connect to database server" but if I use the same username, password, hostname, databasename in a script of my own, it works just fine.
The only difference is that my test script does it this way:
$dbh = mysql_connect('localhost','dbname','password');
mysql_select_db('dbname',$dbh);
Password has only char and digits...no special chars of any time
Username is simple as well (just char)
dbname also has just char