En lo que a MySQL se refiere, es sólo manejar los datos de la posición (tipo FLOAT, para tener una mayor precisión de decimales). El resto lo tendrás que preguntar en el
Foro de PHP, porque no hay forma, desde el MySQL, de generar un KML en una consulta...
Yo, personalmente, prefiero interactuar con Google Maps para este tipo de tareas (tengo un par de aplicaciones de escritorio y una en web donde lo hago con .Net), antes que con un KML.
Usando Javascript es posible, con GoogleMaps, manejar marcadores dinámicamente, con mucha mayor facilidad que en el KML...
Y también hay más documentación.