Chiến lược nhập cơ sở dữ liệu MySQL lớn
Nhập PHPMyAdmin
Rất có thể nếu bạn đang đọc bài này, thì PHPMyAdmin không phải là một tùy chọn để nhập cơ sở dữ liệu MySQL lớn của bạn. Tuy nhiên, nó luôn đáng để thử, phải không? Nguyên nhân phổ biến nhất của lỗi nhập PHPMyAdmin là vượt quá giới hạn nhập. Nếu bạn đang làm việc cục bộ hoặc có máy chủ của riêng mình, bạn có thể thử thay đổi cài đặt MySQL ini thường có trong tệp my.ini nằm trong thư mục cài đặt MySQL. Nếu đang làm việc với WAMP trên Windows, bạn có thể truy cập tệp đó bằng bảng điều khiển WAMP trong MySQL> my.ini. Hãy nhớ khởi động lại WAMP để cài đặt mới của bạn sẽ được sử dụng. Các cài đặt bạn có thể muốn tăng ở đây bao gồm:
max_allowed_packet
read_buffer_size
Ngay cả với cài đặt nhập MySQL nâng cao, bạn vẫn có thể thấy rằng quá trình nhập đã hết thời gian do cài đặt PHP. Nếu bạn có quyền truy cập vào PHP.ini, bạn có thể thực hiện các chỉnh sửa đối với thời gian thực thi tối đa và các cài đặt liên quan. Trong WAMP, truy cập tệp PHP.ini trong bảng điều khiển WAMP tại PHP> php.ini. Xem xét nâng cao giới hạn đối với các cài đặt sau trong khi thử nhập MySQL lớn:
max_execution_time
max_input_time
memory_limit
Sử dụng trình nhập kết xuất MySQL bị so sánh giữa Big Dump
Nếu tính năng nhập PHPMyAdmin cơ bản không hoạt động, bạn có thể muốn thử tập lệnh Big Dump từ Ozerov.de để nhập MySQL không ổn định. Những gì tập lệnh hữu ích này thực hiện là chạy quá trình nhập của bạn trong các khối nhỏ hơn, đây chính xác là những gì thường cần thiết để nhập thành công một kết xuất MySQL lớn. Đây là bản tải xuống miễn phí có sẵn tại http://www.ozerov.de/bigdump/ .
Quá trình sử dụng Big Dump khá đơn giản:về cơ bản bạn định vị tệp nhập SQL và tập lệnh Big Dump cùng nhau trên máy chủ, đặt một vài cấu hình trong tập lệnh Big Dump và sau đó chạy tập lệnh. Big Dump xử lý phần còn lại!
Một điểm chính về tùy chọn tuyệt vời này là nó sẽ hoàn toàn không hoạt động trên các bản xuất MySQL có chứa các phần chèn mở rộng. Vì vậy, nếu bạn có tùy chọn để ngăn chèn mở rộng, hãy thử nó. Nếu không, bạn sẽ phải sử dụng một phương pháp khác để nhập tệp MySQL lớn của mình.
Đi dòng lệnh với bảng điều khiển MySQL
Nếu bạn đang chạy WAMP (và ngay cả khi bạn không chạy), luôn có tùy chọn để cắt theo đuổi và nhập cơ sở dữ liệu MySQL lớn của bạn bằng bảng điều khiển MySQL. Tôi đang nhập cơ sở dữ liệu 4GB theo cách này khi viết bài đăng này. Đó thực sự là lý do tại sao tôi dành chút thời gian để viết, bởi vì ngay cả phương pháp này cũng cần thời gian khi bạn có tệp SQL 4GB để nhập!
Một số nhà phát triển (thường là tôi) bị đe dọa khi mở màn hình đen và nhập các lệnh khó hiểu vào đó. Nhưng nó có thể được giải phóng và khi nói đến cơ sở dữ liệu MySQL, nó thường là con đường tốt nhất để thực hiện. Trong WAMP, chúng tôi truy cập bảng điều khiển MySQL từ bảng điều khiển WAMP tại MySQL> MySQL Console. Bây giờ chúng ta hãy tìm hiểu 2 lệnh MySQL Console đơn giản mà bạn cần để nhập cơ sở dữ liệu MySQL, kiểu dòng lệnh:
use `db_name`
Lệnh use
theo sau là tên cơ sở dữ liệu sẽ cho bảng điều khiển MySQL biết cơ sở dữ liệu nào bạn muốn sử dụng. Nếu bạn đã thiết lập cơ sở dữ liệu mà bạn đang nhập, thì bạn bắt đầu bằng cách phát hành use
yêu cầu. Giả sử cơ sở dữ liệu của bạn có tên my_great_database
. Trong trường hợp này, hãy sử dụng lệnh sau trong MySQL Console. Lưu ý rằng các lệnh phải kết thúc bằng dấu chấm phẩy.
mysql-> use my_great_database;
mysql-> source sql_import_file.sql
Lệnh source
tiếp theo là vị trí của tệp SQL sẽ nhập tệp SQL vào cơ sở dữ liệu mà bạn đã chỉ định trước đó với use
yêu cầu. Bạn phải cung cấp đường dẫn, vì vậy nếu bạn đang sử dụng WAMP trên máy chủ cục bộ của mình, hãy bắt đầu bằng cách đặt tệp SQL ở nơi dễ lấy, chẳng hạn như C:\ sql \ my_import.sql. Lệnh đầy đủ với đường dẫn ví dụ này sẽ là:
mysql-> source C:\sql\my_import.sql;
Sau khi bạn chạy lệnh đó, tệp SQL sẽ bắt đầu được nhập. Để các truy vấn chạy và cho phép quá trình nhập hoàn tất trước khi đóng bảng điều khiển MySQL.
Bạn có thể tìm thêm tài liệu về dòng lệnh MySQL tại đây: http:// dev.mysql.com/doc/refman/5.5/en/mysql.html .
Một giải pháp khác là sử dụng MySQL Workbench .