Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menyelesaikan Kod Ralat MySQL 1118: Saiz Baris Terlalu Besar?

Bagaimana untuk Menyelesaikan Kod Ralat MySQL 1118: Saiz Baris Terlalu Besar?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-05 01:09:08644semak imbas

How to Resolve MySQL Error Code 1118: Row Size Too Large?

Mengatasi Kod Ralat 1118: Saiz Baris Melebihi Had dalam MySQL

Menghadapi Kod Ralat 1118 dalam MySQL menunjukkan bahawa saiz baris melebihi had yang dibenarkan sebanyak 8126 bait. Isu ini biasanya timbul apabila membuat jadual yang luas dengan banyak lajur.

Untuk menangani ralat ini, pertimbangkan untuk melaksanakan penyelesaian berikut:

Optimumkan Jenis Lajur:

Dalam skema anda, anda telah mengisytiharkan beberapa lajur sebagai CHAR(1), membayangkan had aksara hanya satu aksara. Menggantikannya dengan lajur TEXT atau BLOB akan meningkatkan kapasitinya dengan ketara. Selain itu, elakkan menggunakan lajur PANJANG.

Dayakan Format Fail Barracuda:

Format fail Barracuda MySQL meningkatkan prestasi dan membolehkan saiz baris yang lebih besar. Untuk mengaktifkannya, tambahkan atribut berikut pada fail konfigurasi MySQL anda (my.ini):

innodb_file_per_table=1
innodb_file_format=Barracuda
innodb_file_format_check = ON

Laraskan innodb_strict_mode:

Jika langkah sebelumnya tidak membuahkan hasil , cuba ubah suai parameter innodb_strict_mode kepada 0. Tetapan ini melonggarkan semakan saiz baris dan membolehkan rekod menjadi disisipkan walaupun saiznya melebihi had yang ditentukan:

innodb_strict_mode             = 0

Seperti yang anda nyatakan dalam pertanyaan anda, ambil perhatian bahawa anda tidak boleh mengubah suai struktur jadual disebabkan oleh sekatan warisan. Oleh itu, terokai penyelesaian di atas dan kenal pasti pendekatan yang paling sesuai untuk aplikasi khusus anda.

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Kod Ralat MySQL 1118: Saiz Baris 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