Menyelesaikan masalah "1114 (HY000): Jadual penuh" Ralat dalam MySQL
Apabila cuba memasukkan baris baharu ke dalam MySQL InnoDB jadual, ralat "1114 (HY000): Jadual penuh" mungkin dihadapi. Ralat ini berlaku apabila jadual telah mencapai kapasiti storan maksimumnya.
Mungkin Punca:
-
Low innodb_data_file_path Saiz: Parameter innodb_data_file_path dalam konfigurasi MySQL menetapkan saiz maksimum untuk semua jadual InnoDB digabungkan. Jika nilai ini terlalu rendah, semua jadual akan mencapai had storannya lebih awal.
-
Ruang Cakera Terhad: Sebelum menangani isu konfigurasi, pastikan ruang cakera yang tersedia mencukupi. Jika ruang cakera kehabisan, tiada data baharu boleh ditambah pada jadual.
Penyelesaian:
-
Tingkatkan innodb_data_file_path: Ubah suai fail konfigurasi my.cnf untuk memperuntukkan lebih banyak ruang storan untuk data InnoDB. Sebagai contoh, tingkatkan saiz kepada 1 GB:
innodb_data_file_path = ibdata1:1G:autoextend:max:2G
Salin selepas log masuk
-
Dayakan innodb_file_per_table: Daripada memperuntukkan storan dikongsi untuk semua jadual InnoDB, gunakan innodb_file_per_table untuk membuat berasingan fail data untuk setiap jadual. Ini membolehkan jadual berkembang secara bebas tanpa menjejaskan kapasiti storan antara satu sama lain.
innodb_file_per_table = 1
Salin selepas log masuk
-
Semak Ruang Cakera: Jika ruang cakera tidak mencukupi, tambah lagi kapasiti storan ke pelayan.
-
Mulakan semula MySQL: Selepas membuat sebarang perubahan konfigurasi, mulakan semula MySQL untuk perubahan kepada berkuat kuasa.
Nota Tambahan:
- Ralat berlaku hanya apabila menambah baris baharu pada jadual tertentu yang mencapai saiz storan maksimumnya.
- Saiz jadual tertentu boleh disemak menggunakan pertanyaan SELECT COUNT(*) pada meja.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat '1114 (HY000): Jadual penuh' MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!