Tukar Had Saiz untuk Saiz Baris MySQL Terlalu Besar
Ralat "Saiz Baris Mysql terlalu besar" berlaku apabila saiz baris dalam jadual melebihi had yang ditetapkan. Untuk menyelesaikan isu ini, adalah perlu untuk mengubah suai kekangan saiz baris.
Memahami Had Saiz Baris
Dalam MySQL, had saiz baris lalai untuk jadual InnoDB ialah 8126 bait. Had ini digunakan pada jumlah saiz semua lajur dalam satu baris, termasuk data dan overhed.
Punca Kemungkinan Ralat Saiz Baris
- Mempunyai teks yang besar atau lajur BLOB dalam jadual
- Menggunakan format baris yang tidak mengoptimumkan ruang penggunaan
- Menyimpan data berlebihan dalam lajur bukan kunci
Menukar Had Saiz Baris
Untuk meningkatkan had saiz baris, terdapat beberapa pendekatan yang boleh anda pertimbangkan:
-
Ubah Suai Baris Jadual Format: Edit definisi jadual untuk menggunakan ROW_FORMAT=DINAMIK atau ROW_FORMAT=COMPRESSED. Format ini menyimpan lajur panjang berubah-ubah dengan lebih cekap, mengurangkan saiz baris keseluruhan.
-
Tukar kepada Format Fail Barracuda: Format fail ini menghapuskan overhed storan sebaris untuk medan panjang, dengan ketara meningkatkan saiz baris yang tersedia. Untuk mendayakan Barracuda, tambah innodb_file_format = Barracuda pada fail my.cnf anda.
-
Tukar kepada Enjin MyISAM: Enjin MyISAM mempunyai had saiz baris yang lebih tinggi daripada InnoDB. Walau bagaimanapun, ia tidak begitu cekap untuk mengendalikan urus niaga dan set data yang besar.
Petua Tambahan
- Kenal pasti dan tukar lajur bukan kunci yang besar kepada TEKS atau jenis data BLOB.
- Gunakan pengindeksan untuk mengurangkan jumlah data yang diambil untuk setiap pertanyaan.
- Analisis dan defragmentasi jadual secara kerap untuk mengalih keluar ruang yang tidak digunakan dan mengoptimumkan kecekapan storan.
Langkah Penyelesaian Masalah Tambahan
-
Semak Perhubungan Kunci Asing: Lebihan rujukan dalam kunci asing perhubungan boleh menyumbang kepada inflasi saiz baris.
-
Semak Struktur Pertanyaan: Pertimbangkan untuk mengoptimumkan pertanyaan untuk mengelakkan mendapatkan semula lajur data yang tidak diperlukan.
-
Periksa Integriti Data: Sahkan bahawa nilai data dipotong dengan betul atau terhad kepada yang sesuai saiz.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membetulkan Ralat 'Saiz Baris MySQL Terlalu Besar'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
Kenyataan:Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn