Menyelesaikan Masalah Ralat Maut MySQL: "Pernyataan Disediakan Perlu Disediakan Semula"
Dalam penghijrahan baru-baru ini ke pelayan pengehosan, pengguna mengalami ralat maut yang berterusan apabila mengakses tapak web dengan MySQL Stored Procedures. Mesej ralat menunjukkan bahawa pernyataan yang disediakan memerlukan penyediaan semula.
Menyiasat Isu
Ralat "Pernyataan yang disediakan perlu disediakan semula" mencadangkan percanggahan antara persekitaran tempatan dan pelayan. Ia boleh berpunca daripada pelbagai sebab, termasuk:
Penyelesaian: Melaraskan Konfigurasi MySQL
Selepas menghapuskan punca berpotensi lain, isu itu telah dikesan kepada pepijat MySQL yang diketahui (#42041). Penyelesaian yang dicadangkan adalah untuk meningkatkan nilai tetapan table_definition_cache.
table_definition_cache menentukan bilangan definisi jadual yang MySQL cache dalam memori. Nilai yang rendah boleh menyebabkan pelayan menyediakan semula penyata yang disediakan jika ia menemui jadual dengan definisi yang dikemas kini.
Mengemas kini Konfigurasi MySQL
Untuk melaraskan tetapan table_definition_cache, ikut langkah berikut:
Tambah atau ubah suai baris berikut:
table_definition_cache=<new_value>
Di mana
Pertimbangan Tambahan
Caching penyata juga boleh dipengaruhi oleh faktor lain, seperti sebagai:
Rujuk dokumentasi MySQL untuk maklumat yang lebih komprehensif tentang pernyataan caching.
Dengan meningkatkan nilai tetapan table_definition_cache, pengguna dalam kes ini dapat menyelesaikan isu dan menghapuskan ralat maut.
Atas ialah kandungan terperinci Mengapa Aplikasi MySQL Saya Melemparkan Ralat Maut \'Pernyataan Disediakan Perlu Disediakan Semula\'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!