Saya baru-baru ini menerapkan PSU Juli ke salah satu database RAC saya dan saya terus mendapatkan kesalahan dari OPatch bahwa prereq checkSystemSpace gagal. Seharusnya tidak mengherankan bagi siapa pun di luar sana bahwa OPatch melewati sejumlah pemeriksaan prasyarat sebelum menerapkan tambalan. OPatch sedang mencoba untuk memastikan peluang sukses yang baik dan tidak meledak di tengah-tengah proses tambalan.
Sekarang checkSystemSpace hanyalah salah satu pemeriksaan yang dilakukan OPatch. Dan dari judulnya, saya dapat dengan mudah membedakan bahwa saya kekurangan ruang, mungkin ruang disk. Saya tahu ini ada di disk mount tempat ORACLE_HOME berada karena itu adalah satu-satunya ruang disk yang saya modifikasi saat menerapkan tambalan. Tapi apa yang tidak diberitahukan OPatch kepada saya di layar adalah berapa banyak ruang yang dibutuhkan. File log OPatch juga tidak memberi tahu saya. Saya memiliki sekitar 8GB ruang kosong pada drive itu dan PSU tidak mendekati ukuran itu. Saya memang membersihkan beberapa file lama tetapi OPatch masih gagal pada pemeriksaan ini.
Untuk mengetahui berapa banyak ruang disk yang dibutuhkan, saya menjalankan OPatch secara manual untuk pemeriksaan prasyarat khusus ini sebagai berikut:
opatch prereq checkSystemSpace -ph .
Saya menjalankan pemeriksaan prasyarat. Parameter kedua untuk OPatch memberi tahu pemeriksaan mana yang harus dijalankan. Direktif -ph memberi tahu OPatch direktori home patch mana yang akan digunakan dan dalam kasus saya, ini adalah direktori saat ini (dilambangkan dengan titik). Outputnya mirip dengan yang dipangkas berikut untuk singkatnya:
Space Needed : 8780.128MB
Space Usable : 8347.293MB
Required amount of space(8780.128MB) is not available.
Prereq "checkSystemSpace" failed.
Dengan menjalankan pemeriksaan prereq secara manual, saya dapat memperoleh informasi yang saya butuhkan. OPatch mencari sekitar 8,7 GB ruang kosong dan saya memiliki 8,3 GB yang tersedia dan saya kekurangan sekitar 430 MB. Jadi sekarang saya punya ide bagus berapa banyak ruang yang harus saya bersihkan sebelum pemeriksaan ini lulus dengan benar.
OPatch memiliki sejumlah pemeriksaan lain dengannya. Untuk mengetahui semuanya, lakukan hal berikut:
opatch prereq -h
Ini tidak hanya akan memberikan nama-nama cek, tetapi deskripsi singkat masing-masing. Misalnya, Anda mungkin diberi tahu bahwa pemeriksaan CheckApplicable telah gagal. Apa artinya? Deskripsi satu paragraf adalah:
CheckApplicable
Check for the presence of the required components in
the ORACLE_HOME and check if all the actions of the
given patch(es) are applicable.
Jadi pemeriksaan ini memastikan bahwa direktori home Oracle memiliki komponen yang diperlukan untuk berhasil. Misalnya, Anda tidak dapat menerapkan patch untuk memperbaiki masalah partisi jika opsi Partisi tidak diinstal. Gunakan OPatch untuk melihat pemeriksaan rereq lainnya yang dilakukan OPatch. Sebagian besar dari mereka berjalan di latar belakang tanpa pemberitahuan sehingga beberapa di antaranya mungkin mengejutkan Anda.
Lain kali Anda memiliki pemeriksaan prareq yang gagal, coba jalankan secara manual untuk melihat apakah Anda memiliki lebih banyak informasi daripada yang diberikan pada awalnya ketika Anda mencoba menerapkan tambalan.