Cita de @DAC
En resumen:SID =el nombre único de su base de datos, ServiceName =el alias utilizado al conectarse
No es estrictamente cierto. SID =nombre único de la INSTANCIA (por ejemplo, el proceso de Oracle que se ejecuta en la máquina). Oracle considera que la "Base de datos" son los archivos.
Nombre del servicio =alias para una INSTANCIA (o muchas instancias). El propósito principal de esto es que si está ejecutando un clúster, el cliente puede decir "conectarme con SALES.acme.com
", el DBA puede cambiar sobre la marcha el número de instancias que están disponibles para SALES.acme.com
solicitudes, o incluso mover SALES.acme.com
a una base de datos completamente diferente sin que el cliente necesite cambiar ninguna configuración.