Berapa SID berbeda dari Layanan nama di Oracle tnsnames.ora

Mengapa saya perlu dua dari mereka? Ketika saya harus menggunakan satu atau yang lain?

Mengomentari pertanyaan (1)
Larutan

@DAC

singkatnya: SID = nama unik DB, ServiceName = alias digunakan ketika menghubungkan

Tidak benar.. SID = nama unik dari CONTOH (misalnya oracle proses yang berjalan pada mesin). Oracle menganggap "Database" untuk menjadi file.

Service Name = alias untuk sebuah INSTANCE (atau banyak kasus). Tujuan utama dari hal ini adalah jika anda menjalankan sebuah cluster, klien dapat mengatakan "menghubungkan saya untuk PENJUALAN.acme.com", DBA dapat dengan cepat mengubah jumlah kasus yang tersedia untuk SALES.acme.com permintaan, atau bahkan bergerak SALES.acme.com untuk benar-benar berbeda database tanpa klien yang membutuhkan untuk mengubah pengaturan.

Komentar (4)

Silakan lihat: http://www.sap-img.com/oracle-database/finding-oracle-sid-of-a-database.htm

Apa perbedaan antara Oracle SIDs dan Oracle NAMA LAYANAN. Satu config tool mencari NAMA LAYANAN dan kemudian berikutnya terlihat untuk SIDs! Apa's terjadi?!

Oracle SID adalah nama unik yang secara unik mengidentifikasi anda contoh/database di mana sebagai Layanan nama TNS alias yang anda berikan ketika anda dari jarak jauh terhubung ke anda database dan nama Layanan adalah tercatat dalam Tnsnames.ora file anda klien dan itu bisa sama seperti SID dan anda juga dapat memberikan hal yang lain nama yang anda inginkan.

SERVICE_NAME adalah fitur baru dari oracle 8i dan seterusnya di mana database dapat mendaftarkan diri dengan pendengar. Jika database terdaftar dengan pendengar dengan cara ini maka anda dapat menggunakan SERVICE_NAME parameter dalam tnsnames.ora jika tidak digunakan SID di tnsnames.ora.

Juga jika anda memiliki OPS (RAC) anda akan berbeda SERVICE_NAME untuk masing-masing contoh.

SERVICE_NAMES menentukan satu atau lebih nama layanan database untuk yang ini misalnya menghubungkan. Anda dapat menentukan beberapa layanan nama-nama di untuk membedakan antara berbagai menggunakan database yang sama. Untuk contoh:

SERVICE_NAMES = sales.acme.com, widgetsales.acme.com

Anda juga dapat menggunakan layanan nama untuk mengidentifikasi satu layanan yang tersedia dari dua database yang berbeda melalui penggunaan replikasi.

Di Oracle Parallel Server lingkungan, anda harus mengatur ini parameter untuk setiap contoh.

Singkatnya: SID = nama unik anda DB instance, ServiceName = alias digunakan saat menghubungkan

Komentar (1)

Saya tahu ini adalah kuno namun ketika berhadapan dengan rewel alat-alat, menggunakan, pengguna atau gejala re: sid & layanan penamaan salah satu dapat menambahkan sedikit flex untuk anda tnsnames entri seperti:

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)
  )
)

Saya hanya berpikir saya'd meninggalkan ini di sini sebagai it's agak relevan dengan pertanyaan dan dapat membantu ketika mencoba untuk menenun sekitar kurang jelas keanehan dari oracle jaringan.

Komentar (0)

apa itu SID dan nama Layanan

silahkan lihat ke oracle's dokumentasi di https://docs.oracle.com/cd/B19306_01/network.102/b14212/concepts.htm

Dalam kasus ini jika link di atas tidak dapat diakses di masa depan, Pada saat waktu menulis jawaban ini, link di atas akan mengarahkan anda ke, "Layanan Database dan Database Contoh Identifikasi" topik dalam Konsep Konektivitas bab "Database Net Jasa Administrator's Guide". Panduan ini diterbitkan oleh oracle sebagai bagian dari "Oracle Database Dokumentasi Online, 10g Release 2 (10.2)"

Ketika saya harus menggunakan satu atau yang lain? Mengapa saya perlu dua dari mereka?

Pertimbangkan berikut pemetaan di RAC Lingkungan,

SID      SERVICE_NAME
bob1    bob
bob2    bob
bob3    bob
bob4    bob

jika load balancing adalah dikonfigurasi, pendengar akan 'keseimbangan' beban kerja di semua empat SIDs. Bahkan jika load balancing adalah dikonfigurasi, anda dapat terhubung ke bob1 sepanjang waktu jika anda ingin menggunakan SID bukan SERVICE_NAME.

Silahkan lihat, https://community.oracle.com/thread/4049517

Komentar (0)

Sesuai Oracle Istilah :

SID adalah sebuah nama unik untuk database Oracle instance. ---> Untuk beralih antara Oracle database, pengguna harus menentukan yang diinginkan SID <---. Yang SID termasuk dalam MENGHUBUNGKAN DATA-bagian yang menghubungkan deskriptor di TNSNAMES.ORA file, dan dalam definisi jaringan pendengar pada PENDENGAR.ORA file. Juga dikenal sebagai Sistem ID. Oracle Layanan Nama mungkin menjadi sesuatu yang deskriptif seperti "MyOracleServiceORCL". Di Windows, Anda dapat anda Nama Layanan berjalan sebagai layanan di bawah Windows Services.

Anda harus menggunakan SID di TNSNAMES.ORA sebagai pendekatan yang lebih baik.

Komentar (0)