it-swarm-id.com

Perbedaan Oracle antara SID, Nama DB, Domain DB, Nama Basis Data Global, Nama Layanan, Alias ​​Layanan, dan Nama Instance

Adakah yang bisa menjelaskan kepada saya apa perbedaan SID, Nama DB, Domain DB, Nama Basis Data Global, Nama Layanan, Alias ​​Layanan, dan Nama Instance di Oracle?

Terima kasih Michael

14

SID = mengidentifikasi instance database (nama database + nomor instance). Jadi, jika nama database Anda adalah somedb dan nomor instance Anda adalah 3, maka SID Anda adalah somedb3.

Nama DB = Nama basis data (basis data dapat dibagi dengan beberapa contoh)

DB Domain = Biasanya sama dengan domain perusahaan Anda (somecompany.com)

Nama Basis Data Global = Nama basis data + domain basis data (somedb.somecompany.com)

Nama Layanan = "konektor" ke satu atau beberapa instance. Seringkali berguna untuk membuat nama layanan tambahan dalam lingkungan RAC karena layanan dapat dimodifikasi untuk menggunakan SID tertentu sebagai koneksi primer atau sekunder, atau untuk tidak menggunakan SID tertentu sama sekali.

Alias ​​Layanan = Alias ​​ke nama layanan (seperti CNAME, dll). Katakanlah Anda membuat nama layanan Anda sesuatu yang bermakna bagi dba, tapi mungkin itu agak esoteris. Buat alias layanan dan beri nama sesuatu yang akan berarti bagi pengguna.

Nama instance = sama dengan SID

11
jswoods7

Cara Anda menggambarkan SID hanya perilaku DEFAULT dalam konfigurasi RAC. SID (== instance_name) hanya itu: Nama instance Anda.

Saya selalu melihatnya seperti ini: Instance, adalah Instance dari perangkat lunak RDBMS. Misalnya MOUNTS file kontrol, (ubah mount basis data) Dalam profil ini ditulis lokasi file data. koleksi datafiles (oke, dan file kontrol) == database.

Database memiliki nama, db_name, dan (opsional) domain (db_domain) -> together global_db_name. Sekarang bayangkan Anda mereplikasi (DataGuard) database Anda. Anda ingin mempertahankan DB_name tetap sama, bukan? (Maksud saya: data-bijaksana, ini adalah database SAMA) Tapi lalu bagaimana mengidentifikasi dua 'versi' dari database Anda? Masukkan 'DB_UNIQUE_NAME' ... Ya, semakin bingung ...

Praktik pribadi saya adalah memberi nama INSTANCE seperti db_unique_name dalam pengaturan DataGuard, dan tetap menggunakan nama RAC (db_name + Instance_Number) dalam pengaturan RAC. Kemudian, db_unique_names yang saya buat, umumnya seperti db_name + 1-letter-suffix (MYDBa MYDBb dll.)

Salam, Paul

4
paul

SID adalah contoh. Lebih baik hindari menggunakan istilah 'contoh database', hanya contoh.

"SID = mengidentifikasi instance database (nama database + nomor instance)" salah. "Sebuah Mesin Virtual, adalah Mesin Virtual dari perangkat lunak RDBMS" salah. DBMS yang dihapus atau diinstal hanyalah DBMS.

"DB Domain = Biasanya sama dengan domain perusahaan Anda" harus dihindari. Saya mengalami masalah menggunakan domain, dan masalah hilang saat tidak menggunakan domain.

"Nama Basis Data Global = Nama basis data + basis data domain" juga salah. Nama Basis Data Global adalah Nama Layanan. Sesederhana itu.

"SID = mengidentifikasi instance database (nama database + nomor instance). Jadi jika nama database Anda adalah somedb dan nomor instance Anda adalah 3, maka SID Anda adalah somedb3." salah. Tidak ada penghentian identitas atau nama.

0
Bernaridho