Well I have just about everything working now. I've managed to install apache2 and PHP5 (I don't quite understand what I did wrong the first time but going back to PHP4 and then to PHP5 again got it working).
I've also installed phpMyAdmin and that's working fine too.
However I still can't get ordinary users to work the way I expect.
I'm using phpMyAdmin to do all this now.
I deleted all the entries for user 'chris' and then added a new user 'chris' with host set to 'Any host', with password set to 'No password' and with all privileges set. This appears to work OK, phpMyadmin says I have a user as follows:-
chris % No ALL PRIVILEGES Yes Edit
(No is 'Password' and Yes is 'Grant')
However if I then say 'mysql -uchris' and try 'use fred' I still get:- ERROR 1044: Access denied for user: '@localhost' to database 'fred'
If, on the other hand, I do exactly as above except I set host to 'Local' then user chris works as expected.
Something is certainly awry somewhere, it may be my understanding but at the very least things are not quite how one would expect from what one is being told.
Is there some security thing that refuses to allow an 'Any host' user to have lots of privileges? No, I've tried creating a user with few privileges and 'Any Host' and they get the 'Access denied...' error too. It seems to me that the 'Any Host' doesn't work.