Non tirare su discussioni vecchie di anni, aprine una nuova.

Intanto per risponderti: penso che db pronti e gratuiti non ce ne siano, ma puoi trovare siti con la lista di tutti i comuni divisi per regione e provincia, puoi estrapolarli realizzando uno script che li recuperi, ci servirà un po' di lavoro per ripulire i risultati ottenuti, ma si fa. Poi per le coordinate potresti creare un altro script che interroghi Google Maps passandogli il nome del comune e recuperandone le coordinate, c'è il servizio geocode che te lo permette.