Thông báo lỗi khá rõ ràng và chỉ cho bạn vấn đề là:giới hạn thời gian thực thi trong môi trường php của bạn. Vì vậy, một số cách tiếp cận để giải quyết vấn đề này là hiển nhiên:
- tăng giới hạn thời gian trong môi trường của bạn
Bạn có thể làm điều đó bằng cách tăng giới hạn trong cấu hình php của mình hoặc, nếu được phép, bằng cách tăng động nó bên trong tập lệnh nhập của bạn. Vì vậy, một cái gì đó như ini_set('max_execution_time', 3000)
. Cả hai tùy chọn đều được ghi lại. Tài liệu php nên luôn luôn là vị trí đầu tiên mà bạn nên bắt đầu tìm kiếm câu trả lời cho một câu hỏi như vậy.
- sử dụng một môi trường php khác
Thông thường, giới hạn như vậy được chọn cho môi trường web để giảm rủi ro khi gửi yêu cầu từ bất kỳ ai ngoài đó. Tuy nhiên, không có gì phản đối việc sử dụng một cấu hình khác cho môi trường khác. Các công việc nhập thường không được xử lý bằng cách sử dụng các yêu cầu web, nhưng bằng cách sử dụng php trong dòng lệnh (CLI). Đối với như vậy, một cấu hình riêng biệt được sử dụng. Một lần nữa, điều này được ghi lại. Đó là những gì bạn có thể sử dụng ở đây để cấu hình cả hai môi trường khác nhau theo nhu cầu của bạn. Tuy nhiên đối với điều này, bạn cần truy cập vào php trên CLI. Đó không phải là vấn đề trên hệ thống của riêng bạn, nhưng thường không có sẵn trên dịch vụ lưu trữ web giá rẻ.
- chia quá trình nhập của bạn thành nhiều phần nhỏ hơn
Vì dữ liệu bạn nhập được lưu trữ trong tệp sql, vì vậy một tệp văn bản đơn giản, bạn có thể sử dụng bất kỳ trình soạn thảo văn bản thông thường nào để sửa đổi tệp đó. Lưu ý:một trình soạn thảo văn bản, không phải một trình xử lý văn bản. Bạn có thể chia INSERT
lớn câu lệnh chứa trong đó thành nhiều đoạn. Cú pháp khá rõ ràng.
- sử dụng nhiều câu lệnh chèn riêng biệt thay vì một câu lệnh lớn
Tùy thuộc vào công cụ bạn sử dụng để tạo tệp kết xuất mà bạn đang cố gắng nhập, bây giờ bạn có tùy chọn để tạo tệp kết xuất sao cho nó sử dụng nhiều INSERT
riêng biệt câu lệnh (một câu cho mỗi hàng) thay vì một câu lệnh lớn, được kết hợp. mysqldump
ví dụ:cung cấp --skip-extended-insert
cờ cho điều này. Với một tệp kết xuất như vậy, rất dễ dàng để chia quá trình nhập thành nhiều phần nhỏ hơn bằng cách chỉ cần tách tệp.
- bỏ qua php để nhập hoàn toàn
Nếu bạn có quyền truy cập trực tiếp vào máy chủ cơ sở dữ liệu của mình (trong trường hợp này là MySQL), thì bạn chỉ cần tương tác trực tiếp với nó thay vì sử dụng phpMyAdmin
công cụ ở giữa. Bạn chỉ cần tải tệp kết xuất của mình trực tiếp bằng source
của MySQL yêu cầu. Bằng cách đó, bạn hoàn toàn độc lập khỏi những hạn chế của php.