Si te encuentras con alguna parte que no comprendes puedes dejarlo en los comentarios y te ayudaremos lo más rápido posible.
Solución:
Cita de @DAC
En resumen: SID = el nombre único de su base de datos, ServiceName = el alias utilizado al conectarse
no estrictamente true. 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 objetivo 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.
Consulte: http://www.sap-img.com/oracle-database/finding-oracle-sid-of-a-database.htm
¿Cuál es la diferencia entre los SID de Oracle y los NOMBRES DE SERVICIO de Oracle? ¡Una herramienta de configuración busca el NOMBRE DEL SERVICIO y luego la siguiente busca los SID! ¡¿Que esta pasando?!
Oracle SID es el nombre único que identifica de manera única su instancia/base de datos, donde el nombre del servicio es el alias de TNS que proporciona cuando se conecta de forma remota a su base de datos y este nombre de servicio se registra en el archivo Tnsnames.ora en sus clientes y puede ser el igual que SID y también puede darle cualquier otro nombre que desee.
SERVICE_NAME es la nueva característica de Oracle 8i en adelante en la que la base de datos puede registrarse con el oyente. Si la base de datos está registrada con el oyente de esta manera, puede usar el parámetro SERVICE_NAME en tnsnames.ora; de lo contrario, use SID en tnsnames.ora.
Además, si tiene OPS (RAC), tendrá un SERVICIO_NOMBRE diferente para cada instancia.
SERVICE_NAMES especifica uno o más nombres para el servicio de base de datos al que se conecta esta instancia. Puede especificar varios nombres de servicios para distinguir entre diferentes usos de la misma base de datos. Por ejemplo:
SERVICE_NAMES = ventas.acme.com, widgetsales.acme.com
También puede usar nombres de servicio para identificar un solo servicio que está disponible desde dos bases de datos diferentes mediante el uso de la replicación.
En un entorno de Oracle Parallel Server, debe establecer este parámetro para cada instancia.
En resumen: SID = el nombre único de su instancia de base de datos, ServiceName = el alias utilizado al conectarse
Sé que esto es antiguo, sin embargo, cuando se trata de herramientas, usos, usuarios o síntomas meticulosos con respecto a: sid y nombres de servicios, uno puede agregar un poco de flexibilidad a sus entradas de tnsnames como:
mySID, mySID.whereever.com =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = myHostname)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = mySID.whereever.com)
(SID = mySID)
(SERVER = DEDICATED)
)
)
Simplemente pensé en dejar esto aquí, ya que es levemente relevante para la pregunta y puede ser útil cuando se trata de entretejer algunas idiosincrasias menos que claras de las redes de Oracle.
Nos puedes añadir valor a nuestro contenido informacional tributando tu experiencia en las notas.