MySQL performance
Installation and Configuration
why don't you run mysql on localhost unless its underpowered
a dedicated server for mysql is fine however 20 plus sites and only 2 gigs ram might be an issue too
i have mine on localhost
i have a dozen sites jr being the hugest
i have 16 gigs i think alocated to mysql (i use mariadb not mysql) buffers and caches
my highest performance test score was 3650
i often get over 3000 but my guess is 2700 would be the lower side of average
note i use mysqltuner.pl and tune it to perfection
low side i get a 3.4 ish on the db tests
those tips brian gave in the documentation is an ok starting point b7t after that run mysqltuner.pl ( perl mysqltuner.pl u might have to unstall it or update it 1st)
run that every 48 hours till u get real good results u might have to ignore the optimize tables and increase join buffer size (mariiadb will fix the join buffer issue)
but all other recomendations are good to follow as long as u give it 24-48 hours between tunups