Câu hỏi phỏng vấn PostgreSQL
Câu hỏi

Khi sử dụng PostgreSQL, bạn làm gì khi bị lỗi deadlock?

Câu trả lời

markdown Copy
Khi gặp lỗi deadlock trong PostgreSQL, cần thực hiện các bước sau để xử lý và phòng tránh:

1. **Xác định Nguyên Nhân:** Sử dụng lệnh `pg_catalog.pg_locks` để kiểm tra và phát hiện các khóa đang chờ và bị giữ. Phân tích log PostgreSQL để tìm các thông điệp liên quan đến deadlock.

2. **Tối ưu Hóa Truy Vấn:** Đảm bảo rằng các truy vấn và giao dịch được thiết kế tối ưu, thực hiện theo thứ tự nhất quán để giảm thiểu rủi ro deadlock. Tránh việc thực hiện các thao tác đọc và ghi hỗn hợp trong cùng một giao dịch khi có thể.

3. **Giảm Cạnh Tranh Khóa:** Sử dụng các phương thức như tăng/giảm kích thước batch, hoặc tách các giao dịch lớn thành các giao dịch nhỏ hơn để giảm thời gian giữ khóa. Cân nhắc giảm độ phức tạp của các thao tác ghi, sử dụng chỉ số để tăng tốc độ tru...
middle

middle

Gợi ý câu hỏi phỏng vấn

senior

PostgreSQL có hỗ trợ partitioning không? Khi nào nên dùng range, list hay hash?

middle

Làm sao để truy vấn một trường JSONB trong PostgreSQL?

senior

Làm sao để theo dõi long-running queries trong PostgreSQL?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào