AFAIK in mysql 4.x is was like this:
mysql> grant all on [db].* to [user]@[machine] identified by "[password]";
mysql> flush privileges;
Notes :
1) Be aware of hostnames. If you resolve with both hostname and
host.domain, try to add both of them to the grant list.
2) You can use wildcard (%) for machine IP/domain. (e.g. %.mydomain,
192.168.0.%). In this case, bound hosts with '"'.
2) replace '*' with an specific tables(s) if you like.
3) replace 'all' with other permissions like read, write, etc if you like.
4) If you wanna see the list of all ready given grants, connect to 'mysql'
db, add "SELECT * FROM db"( or it was "users" ?:)
5) Check MySQL port. Is it open?
6) Not so sure about MySQL 5.0. Maybe you need to get latest driver.