Mục lục
Chào bạn, để nội dung bài viết chuyên nghiệp, đầy đủ và mang đậm phong cách kỹ thuật hỗ trợ của Zhost, mình đã biên tập lại hướng dẫn này. Bài viết được bổ sung thêm các trường hợp thực tế (như giới hạn bảng tạm và phân vùng /tmp) để khách hàng có cái nhìn toàn diện hơn.

Khắc Phục Lỗi ERROR 1114 (HY000): The Table Is Full Khi Import Database
Lỗi ERROR 1114 (HY000): The table is full là một trở ngại phổ biến khi thực hiện Import Database dung lượng lớn. Dù thông báo là “bảng đã đầy”, nhưng nguyên nhân có thể đến từ việc hết tài nguyên phần cứng hoặc các giới hạn cấu hình trong MySQL/MariaDB.
Trong bài viết này, Zhost sẽ hướng dẫn bạn 3 bước kiểm tra và xử lý triệt để lỗi này.
Nguyên nhân gây lỗi
Lỗi này thường xuất phát từ 3 nhóm nguyên nhân chính:
-
Dung lượng ổ cứng VPS bị đầy: Không còn không gian để ghi dữ liệu mới.
-
Cấu hình giới hạn tệp InnoDB: Tệp dữ liệu
ibdata1bị giới hạn dung lượng tối đa. -
Tràn bộ nhớ bảng tạm (Temporary Tables): Khi import, MySQL tạo các bảng tạm vượt quá mức RAM/Disk cho phép.
Các bước xử lý chi tiết
Bước 1: Kiểm tra dung lượng ổ cứng (Disk Space)
Trước tiên, hãy đảm bảo VPS của bạn vẫn còn khoảng trống để chứa dữ liệu mới.
-
SSH vào VPS với quyền root.
-
Sử dụng lệnh:
df -h
-
Xử lý: Kiểm tra cột
Use%. Nếu phân vùng/hoặc /var/lib/mysql báo 100%, bạn cần xóa các file backup cũ, log không cần thiết hoặc nâng cấp dung lượng ổ cứng tại Zhost.
Bước 2: Điều chỉnh cấu hình InnoDB Data File
Nếu ổ cứng vẫn còn trống, nguyên nhân thường do tệp dữ liệu của MySQL bị giới hạn cứng về kích thước.
-
Mở file cấu hình MySQL:
vi /etc/my.cnf -
Tìm dòng innodb_data_file_path . Nếu đã có, hãy điều chỉnh hoặc thêm mới như sau:
Lưu ý: Sử dụng autoextend để tệp tự động mở rộng thay vì đặt giới hạn max:512M như cấu hình cũ.
Bước 3: Tăng giới hạn bảng tạm (Memory & Tmp Table)
Trong một số trường hợp, việc import các bảng có index phức tạp sẽ tạo ra bảng tạm rất lớn.
-
Thêm các thông số sau vào file
/etc/my.cnfdưới thẻ[mysqld]:tmp_table_size = 256M
max_heap_table_size = 256M -
Lưu file và khởi động lại dịch vụ để áp dụng thay đổi:
Nếu bạn đang sử dụng Hosting và gặp lỗi này, bạn sẽ không thể can thiệp vào file my.cnf.
-
Kiểm tra Quota: Đảm bảo gói hosting của bạn chưa vượt quá dung lượng đĩa cho phép.
-
Chia nhỏ file SQL: Sử dụng các công cụ như SQLDumpSplitter để chia nhỏ Database thành nhiều phần và import lần lượt qua phpMyAdmin.
-
Liên hệ hỗ trợ: Gửi yêu cầu hỗ trợ (Ticket) để kỹ thuật viên Zhost kiểm tra các thông số server cho bạn.
Tổng kết
Lỗi The table is full không quá đáng sợ nếu bạn xác định đúng nguyên nhân do phần cứng hay cấu hình phần mềm. Hy vọng hướng dẫn của Zhost giúp bạn hoàn thành việc import dữ liệu một cách suôn sẻ.
