De ce am nevoie de ei doi? Când trebuie să folosesc unul sau altul?
@DAC
pe scurt: SID = numele unic de DB, Numeserviciu = alias-ul folosit când conectarea
Nu e strict adevărat.. SID = nume unic de INSTANȚĂ (de exemplu, oracle proces care rulează pe mașină). Oracle consideră că "de Date" pentru a fi fișierele.
Service Name = alias la o INSTANȚĂ (sau mai multe instanțe). Scopul principal al acestei este dacă se execută un grup, clientul poate spune "conectați-mă la VÂNZĂRI.acme.com", DBA poate pe zbor modifica numărul de cazuri care sunt disponibile pentru SALES.acme.com cereri, sau chiar a muta SALES.acme.com la un complet diferite baze de date fără ca clientul să fie nevoie să modificați setările.
Vă rugăm să consultați: http://www.sap-img.com/oracle-database/finding-oracle-sid-of-a-database.htm
care este diferența între Oracle SIDs și Oracle NUME de SERVICII. Unul config tool arată de SERVICIU NUMELE și apoi va urma pentru SIDs! Ce's întâmplă?!
Oracle SID este numele unic pe care identifică în mod unic exemplu/baze de date în cazul în care ca Serviciu numele este TNS alias pe care le dau când te conecta de la distanță la baza de date și acest Serviciu este numele înregistrate în Tnsnames.ora fișier de pe dvs. clienți și poate fi la fel ca SID și puteți da, de asemenea, orice alte numele pe care doriți.
SERVICE_NAME este noua caracteristică de oracle 8i, în care baza de date puteți înregistra cu sine ascultător. Dacă baza de date este înregistrat cu ascultator in acest fel, atunci puteți folosi SERVICE_NAME parametru în tnsnames.ora în caz contrar - utilizarea SID în tnsnames.ora.
de Asemenea, dacă aveți OPS (RAC) va au diferite SERVICE_NAME pentru fiecare exemplu.
SERVICE_NAMES specifică unul sau mai multe nume pentru baza de date de servicii pentru a care în acest exemplu se conectează. Puteți specifica mai multe servicii în numele pentru a distinge între diferite folosește de aceeași bază de date. Pentru de exemplu:
SERVICE_NAMES = sales.acme.com, widgetsales.acme.com
puteți utiliza, de asemenea, nume de servicii pentru a identifica un serviciu unic, care este disponibil de la două baze de date diferite prin utilizarea de replicare.
Într-un Oracle Parallel Server mediu, trebuie să setați acest lucru parametru pentru fiecare exemplu.
Pe scurt: SID = numele unic de DB exemplu, Numeserviciu = alias-ul folosit la conectarea
Știu că e vechi cu toate acestea, atunci când se ocupă cu sclifosit instrumente, foloseste, utilizatorii sau simptome re: sid & servicii de denumire se poate adăuga un pic de flex la tnsnames mențiuni ca:
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)
)
)
M-am gândit'd las asta aici ca's ușor relevante pentru cauză și poate fi util atunci când încearcă să țese în jurul valorii de unele mai puțin decât clar idiosincraziile oracle networking.
ceea ce este un SID și numele Serviciului
vă rugăm să uite în oracle's de documentare la https://docs.oracle.com/cd/B19306_01/network.102/b14212/concepts.htm
In cazul In linkul de mai sus nu este accesibila în viitor, în momentul În momentul de scris acest răspuns, linkul de mai sus va direcționa să, "Servicii de baze de Date și baze de Date Exemplu de Identificare" subiect în Concepte de Conectivitate capitol din "baza de Date pe Net Services Administrator's Guide". Acest ghid este publicat de către oracle, ca parte a "Oracle de baze de Date de Documentare On-line, 10g Release 2 (10.2)"
Când trebuie să folosesc unul sau altul? De ce am nevoie de ei doi?
Ia în considerare de mai jos cartografiere în RAC Mediu,
SID SERVICE_NAME
bob1 bob
bob2 bob
bob3 bob
bob4 bob
dacă load balancing este configurat, ascultatorul va 'echilibrul' volumul de muncă în toate cele patru SIDs. Chiar dacă load balancing este configurat, vă puteți conecta la bob1 tot timpul, dacă doriți să, cu ajutorul SID în loc de SERVICE_NAME.
Vă rugăm să consultați, https://community.oracle.com/thread/4049517
Ca pe Oracle Glosar :
SID este un nume unic pentru o bază de date Oracle exemplu. ---> Pentru a comuta între baze de date Oracle, utilizatorii trebuie să precizeze dorit SID <---. La SID este inclus în a vă CONECTA DATELE părți ale conecta descriptori într-un TNSNAMES.ORA fișier, și în definiția rețelei ascultător în ASCULTĂTOR.ORA de fișier. De asemenea, cunoscut sub numele de Sistemul ID. Oracle Service Name poate fi orice descriptiv ca "MyOracleServiceORCL". În Windows, puteți ta Numele Serviciului care rulează ca un serviciu sub Windows Services.
Ar trebui să utilizați SID în TNSNAMES.ORA ca o abordare mai bună.