Server adalah Oracle Database 11g Edisi Perusahaan Rilis 11.1.0.7.0 - 64bit
Apakah ada cara mudah & cepat untuk mengubah SID dari database pengujian di server?
Menjatuhkan & membuat ulang basis data adalah pilihan bagi saya. Tetapi saya sedang mencari sesuatu yang membutuhkan waktu lebih sedikit.
Opsi lain untuk menetapkan nama di klien tnsnames.ora rentan terhadap kesalahan, karena mereka tidak diadministrasikan secara terpusat.
Dibandingkan dengan waktu untuk drop & membuat database pada SQL-Server, jumlah waktu yang dibutuhkan untuk membuat database Oracle baru jauh lebih besar. Selanjutnya pada SQL-Server Anda dapat mengubah nama contoh SQL-Server. [Biasanya Anda mengganti nama server tempat SQL-Server berjalan dan memiliki beberapa masalah hingga Anda mengubah nama server juga].
sumber
Jawaban:
Karena 9i dbnewid utility (nid) dapat digunakan untuk mengubah nama basis data (dan DBID jika diperlukan). Jika nama database diubah hanya maka resetlog tidak diperlukan:
1 startup database dalam mode mount
2 jalankan nid untuk mengubah nama basis data:
3 shutdown dan mulai database dalam mode mount:
4 perubahan
db_name
spfile (atau pfile mengedit file):5 membuat ulang file kata sandi:
6 mulai database
7 pos ganti nama langkah:
sumber
Anda perlu membuat ulang file kontrol
Posting ini oleh Kaunain Ahmed menjelaskan langkah-langkah yang diperlukan:
Ada alat lain yang dirujuk di utas.
Berikut ini adalah posting oleh AskTom yang merujuk proses secara lebih rinci. Sementara untuk 10g, masih harus bekerja.
sumber
Ya, Anda bisa dan itu juga cukup mudah.
Di Oracle, ORACLE_SID hanyalah nama untuk Oracle Instance dan tidak terlalu terkait dengan DBNAME. Database dengan nama PROD, dapat disajikan menggunakan Instance dengan nama yang valid. Tidak ada koneksi langsung antara SID dan DBNAME. Koneksi ini dibuat menggunakan parameter.
File parameter diidentifikasi sebagai init $ {ORACLE_SID} .ora atau spfile $ {ORACLE_SID} .ora Dalam file parameter adalah parameter db_name. Di sinilah koneksi antara Oracle Instance dan database dibuat.
Jadi, Anda tidak perlu membuat ulang file kontrol, Anda tidak perlu menggunakan nid, pastikan saja parameterfile Anda memiliki nama yang tepat, turunkan Oracle Instance lama dan mulai Instance Oracle baru setelah mengatur ORACLE_SID ke nama Oracle Instance baru. Parameterfile dan file kata sandi keduanya ditemukan menggunakan $ {ORACLE_SID} sebagai bagian dari namanya.
Menciptakan kembali file kontrol hanya diperlukan saat DBNAME harus berubah. nid diperlukan setelah operasi klon di mana Anda perlu mengubah DBID untuk mencegah kecelakaan yang dapat merusak cadangan dari basis data sumber.
sumber