2011-02-01 32 views
5

Tôi đang gặp phải một số vấn đề khi tôi đang cố nhập cơ sở dữ liệu magento trên máy chủ cục bộ. Nó chỉ cần nhập 18 bảng nhưng trên thực tế nó chứa 383 bảng xấp xỉ. Lỗi này được cung cấp bên dướiCách tăng kích thước bộ nhớ cho phpmyadmin

Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 2089674 bytes) in /usr/share/phpmyadmin/libraries/import.lib.php on line 253

Cách vấn đề này sẽ định cấu hình. Có cần thay đổi php.ini không?

+3

Vâng, tăng giới hạn bộ nhớ trong php.ini. Giải pháp tốt hơn sẽ không sử dụng phpmyadmin. Nhập các tệp lớn của bạn bằng ứng dụng dòng lệnh mysql. –

Trả lời

14

sử dụng này:

c:\mysql\bin\> mysql -u username -ppassword database_name < filename.sql 

nhập khẩu sử dụng dòng lệnh

hoặc trong php.ini

memory_limit = 256M 

thay đổi này đối với một số giá trị lớn khác. Nhưng như Dan nói sử dụng dòng lệnh là thích hợp hơn.

10

PHPMyAdmin đã được thổi giới hạn bộ nhớ cho tôi thời gian gần đây (và tôi đã thậm chí không nhập khẩu/thực hiện một lượng lớn dữ liệu) vì vậy tôi đã chỉ cố gắng sau trong config.inc.php tôi

$cfg['MemoryLimit']    = '128M'; 

http://wiki.phpmyadmin.net/pma/Config#MemoryLimit

+0

Đây là giải pháp duy nhất thực sự tăng bộ nhớ cho PHPMyAdmin. Mặc dù vậy, tôi phải quay trở lại nhập khẩu dòng lệnh ... – gaborsch

1

Bạn có thể thay đổi php.ini như các câu trả lời khác đã đề cập. Nó có thể được ok trên bạn localhost. Nhưng trên máy chủ web với nhiều máy chủ ảo hơn, bạn có thể không muốn tăng giới hạn bộ nhớ cho tất cả máy chủ (đó là những gì chỉ thị trong php.ini).

Chỉ giới hạn bộ nhớ không hợp lệ đối với cài đặt virtualhost chỉnh sửa virtualhost đã cho. Ví dụ:

<VirtualHost *:443> 
    #your virtualhost settings 
    php_value memory_limit 64M #place any number you need 
</VirtualHost> 

Hoặc bạn có thể đặt cùng một giá trị php_value vào tệp .htaccess, nhưng máy chủ ảo của bạn phải cho phép thay đổi giá trị này.

0

Tôi cũng gặp vấn đề với việc di chuyển cơ sở dữ liệu.

Cố gắng thay đổi cấu hình của xuất khẩu để xây dựng tập tin với các truy vấn như thế này:

INSERT INTO tbl_name VALUES (1,2,3) 

Khi tôi đã tạo ra các truy vấn như thế này một:

INSERT INTO tbl_name (col_A,col_B) VALUES (1,2,3), (4,5,6), (7,8,9) 

truy vấn là quá lớn để bố trí chúng trong bộ nhớ . Khi tôi thay đổi nó, có rất nhiều truy vấn nhỏ nên không có vấn đề gì với bộ nhớ.

0

Sử dụng này:

Sửa php.ini của bạn tập tin: Thay đổi

memory_limit = 256M 
Các vấn đề liên quan