Differenza Oracle tra SID, Nome DB, Dominio DB, Nome database globale, Nome servizio, Alias ​​servizio e Nome istanza


14

Qualcuno può spiegarmi qual è la differenza tra SID, Nome DB, Dominio DB, Nome database globale, Nome servizio, Alias ​​servizio e Nome istanza in Oracle?

Grazie Michael

Risposte:


11

SID = identifica l'istanza del database (nome del database + numero dell'istanza). Pertanto, se il nome del database è somedb e il numero di istanza è 3, il SID è somedb3.

Nome DB = Nome del database (il database può essere condiviso da più istanze)

Dominio DB = Solitamente uguale al dominio della tua azienda (somecompany.com)

Nome database globale = Nome database + dominio database (somedb.somecompany.com)

Nome servizio = Un "connettore" per una o più istanze. È spesso utile creare nomi di servizi aggiuntivi in ​​un ambiente RAC poiché il servizio può essere modificato per utilizzare determinati SID come connessioni primarie o secondarie o per non utilizzare affatto determinati SID.

Service Alias ​​= Un alias per il nome del servizio (proprio come un CNAME, ecc.). Supponiamo che il nome del tuo servizio sia significativo per il dba, ma forse è un po 'esoterico. Creare un alias di servizio e denominarlo come qualcosa che sarà significativo per l'utente.

Nome istanza = uguale a SID


in quali circostanze hai un numero di istanza? è solo con RAC?
JonnyRaa,

Quindi, è il default service name= global db name?
Alireza Mohamadi,

4

Il modo in cui descrivi SID è solo il comportamento PREDEFINITO in una configurazione RAC. Il SID (== nome_istanza) è proprio questo: il nome della tua istanza.

Lo guardo sempre così: un'istanza è un'istanza del software RDBMS. Un'istanza MOUNTS un file di controllo, (modifica montaggio database) In questo controfile viene scritta la posizione dei file di dati. la raccolta di file di dati (ok, e i file di controllo) == il database.

Un database ha un nome, il nome_db e (facoltativamente) un dominio (dominio_db) -> insieme nome_db globale. Ora immagina di replicare (DataGuard) il tuo database. Vorresti mantenere lo stesso DB_name, giusto? (Voglio dire: per quanto riguarda i dati, è il database SAME) Ma allora come identificare le due 'versioni' del tuo database? Inserisci "DB_UNIQUE_NAME" ... Sì, si sta confondendo ...

La mia pratica personale è di nominare INSTANCE come db_unique_name in una configurazione DataGuard e rimanere con i nomi RAC (db_name + Instance_Number) in una configurazione RAC. Quindi, i nomi_db_unique che compongo, sono generalmente come nome_db + suffisso 1 lettera (MYDBa MYDBb ecc.)

Saluti, Paul


0

SID è un'istanza. Meglio evitare di usare il termine "istanza di database", solo istanza.

"SID = identifica l'istanza del database (nome database + numero istanza)" è errata. "Un'istanza, è un'istanza del software RDBMS" è errata. Un DBMS disinstallato o installato è solo DBMS.

"Dominio DB = generalmente uguale al dominio della tua azienda" dovrebbe essere evitato. Ho riscontrato un problema con l'utilizzo del dominio e i problemi scompaiono quando non si utilizza il dominio.

Anche "Nome database globale = nome database + dominio database" è errato. Il nome del database globale è il nome del servizio. È così semplice.

"SID = identifica l'istanza del database (nome del database + numero dell'istanza). Quindi, se il nome del tuo database è somedb e il tuo numero di istanza è 3, allora il tuo SID è somedb3." è sbagliato. Non esiste una tale catenazione di identità o nome.


-1

Ti suggerisco di fare riferimento

Knowledge Xpert for Oracle Administration > Oracle Architecture > Oracle instance, files and processes

se hai installato Toad, anche una versione di prova.

Descrive a fondo l'intero quadro.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.