Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Hiểu việc sử dụng bộ nhớ của MySQL dẫn đến kết quả trong PHP (PDO)

Thật khó để đưa ra câu trả lời cụ thể mà không nhìn thấy mã cụ thể của bạn. Điều đó đang được nói, cấu trúc dữ liệu PHP như mảng là liên kết. Các nhà thiết kế PHP đã cố tình đánh đổi để sử dụng thêm RAM để tiết kiệm thời gian truy cập mảng.

Bạn có thể tiết kiệm bộ nhớ theo một số cách. Đối với một điều, bạn có thể tìm nạp từng hàng trong tập hợp kết quả của mình dưới dạng số, thay vì một mảng kết hợp. Đọc này. http://php.net/manual/en/mysqli-result .fetch-array.php

Đối với một điều khác, PHP slurps tất cả các hàng trong tập hợp kết quả của bạn cùng một lúc trừ khi bạn yêu cầu nó không làm như vậy. Thao tác slurp này tiêu tốn rất nhiều RAM. Bạn không cần điều đó nếu định xử lý kết quả lớn của mình, hãy đặt từng hàng một. Bạn cần một truy vấn không có bộ đệm Để làm việc đó. Đọc phần này: http://php.net/manual/en/mysqlinfo. concept.buffering.php



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Không thể dừng MySQL trên OS X 10.10

  2. Chuyển đổi bảng từ MyISAM sang INNODB

  3. Tại sao id auto_increment không tăng từng cái một, làm thế nào để đặt nó?

  4. THAM GIA ba bảng

  5. MySQL chỉ nhận được ROLLUP tổng thể