global database name and SID ---confused

Hello I am a Bioinformatist trying to understand the rudiments of Oracle ....

I am starting off with installing Oracle on my personal machine (Red Hat Linux).As I am working through the installation I am trying to understand the difference between  global database name and SID (system identifier)...

I have tried through the documentation etc ..but I am more condused than what I started off ...

Could you please try to explain this ...(let me assure you that I tried my best to understand it myself but I could not ...)

===> What is the relation between the two ... global database name and SID (system identifier)...

===>I always thought SID refeered to a specific database name ...so what is the point of creating before hand.

===> I understand that global database name is made of : database_name.database_domain format .But if we specify say a name like
sales.ac.uk     ...how will the database be "global" will it not be specific to the database "sales"

==> for the example above what should/can  be the SID
*****************************************************

I would appreciate it if you could explain by an example
*****************************************************

Thanks so much
micro_learnerAsked:
Who is Participating?
 
adrian_angConnect With a Mentor Commented:
SID (System Identifier)
A SID (almost) uniquely identifies an instance. Actually, $ORACLE_HOME, $ORACLE_SID and $HOSTNAME identify an instance uniquely. The SID is 64 characters, or less; at least on Oracle 9i. The system identifier is included in the CONNECT_DATA parts of the connect descriptors in a tnsnames.ora file. The SID defaults to the database name.

Global database name
A database is uniquely identified by a global database name. Usually, a global database name has the form somename.domain. The global database name is the composit of db_domain and db_name.

Database Name
All mounted databases in a network must have a unique database name. This name is specified at the time of the creation of the database and burned into the control files. The name of the database must correspond to the db_name
0
 
boriskalavskyCommented:
There is one-to-one relationship between this two. Global name and a sid can be changed separatly. You can start the same database with different SID. Also you can change Global DB name and run it with the same SID.
0
 
-jer-Connect With a Mentor Commented:
Here is the main difference:

The Oracle SID is the Local Database name on the server.  This is the database you connect to when you are on the server working with the database, and not using the net services at all.  The Global Database Name is the Name that the Listener listens for connections to.  The listener translates requests from the global database name to the SID.  

Typically, when I name my databases, I #1 don't use a domain, and #2 make the Oracle SID and the Global Name the EXACT SAME.  It makes things less confusing, since you only have to remember one.  You will not be able to connect from anywhere other than localhost using the SID (If they're different).  To make it even MORE confusing, Oracle net configuration assistants and the TNSNames.ora files refer to the SID when they actually mean the global database name.  Tricky, isn't it?

Here's a rundown of the layers:
Oracle Driver Calls --(Oracle Client)-> TNS Service Name --(Oracle Net)-> Global Database Name --(Listener)-> SID

Hope this helps.

~Jer
0
 
boriskalavskyConnect With a Mentor Commented:
It work like -jer- said for backward compatability with SQL Net 2. For 8i and above you can use service_name (gives you ability to have muliple names for the same database). Connect descriptor contains destination service and network route information (8i and above it can be service_name or sid). The global database name is the default service name of the database. SID is not only used for networking. OS processes and memory segments are identified by SID. So, just like I said before, there is one-to-one relationship between this two. Global name and a sid can be changed separatly. You can start the same database with different SID. Also you can change Global DB name and run it with the same SID.
0
 
boriskalavskyCommented:
instance (SID) <-> database (datbase name)
0
All Courses

From novice to tech pro — start learning today.