Oracle – How SID is different from Service name in Oracle tnsnames.ora


Why do I need two of them? When I have to use one or another?

Best Solution

Quote by @DAC

In short: SID = the unique name of your DB, ServiceName = the alias used when connecting

Not strictly true. SID = unique name of the INSTANCE (eg the oracle process running on the machine). Oracle considers the "Database" to be the files.

Service Name = alias to an INSTANCE (or many instances). The main purpose of this is if you are running a cluster, the client can say "connect me to", the DBA can on the fly change the number of instances which are available to requests, or even move to a completely different database without the client needing to change any settings.