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

Tại sao PostgreSQL (9.1) không sử dụng chỉ mục cho lựa chọn bình đẳng đơn giản?

Để khắc phục những sự cố này, bạn bắt buộc phải chạy PHÂN TÍCH CHÂN KHÔNG trên bảng giữa các bước khắc phục sự cố để xem những gì hoạt động. Nếu không, bạn có thể không biết chính xác những gì đã thay đổi ở đâu. Vì vậy, hãy thử và chạy lại trước và xem nó có khắc phục được sự cố không.

Các bước tiếp theo để chạy (chạy phân tích chân không và trường hợp nhỏ nhất giữa mỗi bước) là:

ALTER TABLE lead ALTER COLUMN email SET STATISTICS 1000;

Có lẽ điều đó sẽ sửa chữa nó. Có thể không.

Nếu cách đó không khắc phục được, hãy xem kỹ chế độ xem pg_stat:

SELECT * FROM pg_stat WHERE table_name = 'lead';

Vui lòng đọc kỹ phần sau và xem bạn có thể thấy điều gì không ổn trong pg_stat;

http://www.postgresql.org/docs/9.0/static /planner-stats.html

CHỈNH SỬA:Để rất rõ ràng, hãy vacuum analyse không phải là toàn bộ quá trình khắc phục sự cố. Tuy nhiên, nó PHẢI được chạy giữa các bước khắc phục sự cố vì nếu không, bạn không thể chắc chắn rằng người lập kế hoạch đang tính đến dữ liệu chính xác.



  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ịch postgres tên máy chủ sang địa chỉ:Tên hoặc dịch vụ không được biết

  2. Làm thế nào để làm tròn giá trị mili giây từ dấu thời gian (0) trong PostgreSQL?

  3. SqlAlchemy:Truy vấn trường json độ dài có một mảng

  4. CHỌN số hàng cố định bằng cách bỏ qua đều các hàng

  5. Chuyển kết quả truy vấn cơ sở dữ liệu sang biểu đồ jQuery Sparkline bằng PHP