Birisi bana Oracle'daki SID, DB Adı, DB Etki Alanı, Global Veritabanı Adı, Hizmet Adı, Hizmet Takma Adı ve Örnek Adı arasındaki farkın ne olduğunu açıklayabilir mi?
Teşekkürler Michael
Birisi bana Oracle'daki SID, DB Adı, DB Etki Alanı, Global Veritabanı Adı, Hizmet Adı, Hizmet Takma Adı ve Örnek Adı arasındaki farkın ne olduğunu açıklayabilir mi?
Teşekkürler Michael
Yanıtlar:
SID = veritabanı örneğini tanımlar (veritabanı adı + örnek numarası). Veritabanı adınız somedb ise ve örnek numaranız 3 ise, SID'iniz somedb3 olur.
DB Adı = Veritabanının adı (veritabanı birden çok örnekle paylaşılabilir)
DB Domain = Genellikle şirket alanınızla aynıdır (somecompany.com)
Global Veritabanı Adı = Veritabanı adı + veritabanı etki alanı (somedb.somecompany.com)
Hizmet Adı = Bir veya daha fazla örneğe bir "bağlayıcı". Hizmet, belirli SID'leri birincil veya ikincil bağlantılar olarak değiştirmek veya belirli SID'leri hiç kullanmamak için değiştirilebildiğinden, RAC ortamında ek hizmet adları oluşturmak genellikle yararlıdır.
Hizmet Takma Adı = Hizmet adının takma adı (tıpkı CNAME gibi). Hizmet adınızı dba için anlamlı bir şey yaptığınızı varsayalım, ama belki biraz ezoteriktir. Bir hizmet takma adı oluşturun ve kullanıcı için anlamlı olacak bir ad verin.
Örnek adı = SID ile aynı
default service name
= global db name
?
SID'yi tanımlama şekliniz yalnızca RAC yapılandırmasındaki VARSAYILAN davranıştır. SID (== örnek_adı) sadece şudur: Örneğin örneğinizin adı.
Her zaman şöyle bakarım: Bir Örnek, RDBMS yazılımının bir Örneğidir. Bir örnek bir kontrol dosyasını MONTE EDER (veritabanı montajını değiştirir) Bu kontrolde veri dosyalarının yeri yazılır. veri dosyalarının toplanması (tamam ve kontrol dosyaları) == veritabanı.
Bir veritabanının adı, db_name ve (isteğe bağlı olarak) bir etki alanı (db_domain) -> birlikte global_db_name vardır. Şimdi veritabanınızı kopyaladığınızı (DataGuard) düşünün. DB_adı aynı tutmak istiyorsun, değil mi? (Yani: data-wise, bu SAME veritabanı) Ama sonra veritabanınızın iki 'sürümünü' nasıl belirleyebilirim? 'DB_UNIQUE_NAME' girin ... Evet, kafası karışıyor ...
Kişisel pratiğim INSTANCE bir DataGuard kurulumunda db_unique_name gibi adlandırmak ve RAC kurulumunda RAC isimleri (db_name + Instance_Number) ile yapışmaktır. Ardından, oluşturduğum db_unique_names genellikle db_name + 1 harfli sonek (MYDBa MYDBb vb.) Gibidir.
Şerefe, Paul
SID bir örnektir. 'Veritabanı örneği' terimini kullanmaktan kaçının, sadece örnek.
"SID = veritabanı örneğini tanımlar (veritabanı adı + örnek numarası)" yanlış. "Bir Eşgörünüm, RDBMS yazılımının bir Eşgörünümüdür" yanlış. Kaldırılmış veya kurulu bir DBMS sadece DBMS'dir.
"DB Domain = Genellikle şirketinizin domainiyle aynı" ifadelerden kaçınılmalıdır. Etki alanını kullanırken sorun yaşadım ve etki alanını kullanmadığınızda sorunlar kayboluyor.
"Genel Veritabanı Adı = Veritabanı adı + veritabanı etki alanı" da yanlış. Genel Veritabanı Adı Hizmet Adıdır. Bu kadar basit.
"SID = veritabanı örneğini tanımlar (veritabanı adı + örnek numarası). Dolayısıyla veritabanı adınız somedb ve örnek numaranız 3 ise, SID'niz somedb3 olur." Hata. Kimlik veya ismin böyle bir katenasyonu yoktur.