Postgresql 9.1.24 Tài liệu | ||||
---|---|---|---|---|
prev | UP | Chương 13. | Tiếp theo |
PostgreSQLcung cấp nhiềuMVCCkhôngPostgreSQLlệnh tự động có đượccắt ngắnKhông thể
Để kiểm tra danh sách các kèo bóng đá pháp hiện đang nổi bật trong A trong Apg_locksChế độ xem hệ thống. Để biết thêm thông tinChương 27.
Danh sách bên dưới hiển thị các chế độ kèo bóng đá pháp có sẵn vàPostgreSQL. Bạn cũng có thể có được bất kỳkèo bóng đá pháp. Hãy nhớ rằng tất cả các chế độ kèo bóng đá pháp này"hàng"; tên của các chế độ kèo bóng đá phápBảng). Hai giao dịch không thể giữ các kèo bóng đá pháp mâu thuẫnAccess Exclusivekèo bóng đá pháp vàkèo bóng đá pháp sẻ truy cậpkèo bóng đá pháp trênAccess ExclusiveKhông thể giữ kèo bóng đá phápTruy cậpkèo bóng đá pháp có thể được tổ chức bởi nhiều giao dịch).
chế độ kèo bóng đá pháp cấp bảng
Xung đột vớiTruy cậpChỉ chế độ kèo bóng đá pháp.
TheChọnLệnh có được ađọcmột bảng và không
Xung đột vớiĐộc quyềnvàquyền truy cập độc quyềnkèo bóng đá pháp
TheChọn để cập nhậtvàChọn kèo bóng đá pháp sẻlệnhkèo bóng đá pháp sẻ truy cậpkèo bóng đá phápđể cập nhật/để kèo bóng đá pháp sẻ).
Xung đột vớikèo bóng đá pháp sẻ, kèo bóng đá pháp sẻ độc quyền, Độc quyềnvàTruy cậpchế độ kèo bóng đá pháp.
Các lệnhCập nhật, XóavàChèncó được chế độ kèo bóng đá pháp này trênTruy cậpkèo bóng đá pháp trên bất kỳ bảng được tham chiếu nào khác). TRONGsửa đổitrong bảng.
Xung đột vớiCập nhật kèo bóng đá pháp sẻ, kèo bóng đá pháp sẻ, kèo bóng đá pháp sẻ độc quyền, Độc quyềnvàTruy cậpchế độ kèo bóng đá pháp. Chế độ này bảo vệ một bảngVacuumChạy.
Được mua bởiVACUUM(khôngFull),Phân tích, Tạo chỉ mụcvà một số hình thức củaBẢNG ALTER.
Xung đột vớiHàng, Cập nhật kèo bóng đá pháp sẻ, kèo bóng đá pháp sẻ hàng, Độc quyềnvàAccess Exclusivechế độ kèo bóng đá pháp.
Được mua bởiTạo chỉ mục(khôngđồng thời).
Xung đột vớiHàng, Cập nhật kèo bóng đá pháp sẻ, kèo bóng đá pháp sẻ, kèo bóng đá pháp sẻ độc quyền, Độc quyềnvàTruy cậpchế độ kèo bóng đá pháp. Chế độ này bảo vệ một bảng
Chế độ kèo bóng đá pháp này không được tự động mua bởi bất kỳ nàoPostgreSQLlệnh.
Xung đột vớikèo bóng đá pháp sẻ hàng, Độc quyền, Cập nhật kèo bóng đá pháp sẻ độc quyền, kèo bóng đá pháp sẻ, kèo bóng đá pháp sẻ hàng, Độc quyềnvàAccess Exclusivechế độ kèo bóng đá pháp.kèo bóng đá pháp sẻ truy cậpkèo bóng đá pháp, tức là chỉ đọc từ
Chế độ kèo bóng đá pháp này không tự động có được trên các bảngPostgreSQLlệnh.
Xung đột với kèo bóng đá pháp của tất cả các chế độ (kèo bóng đá pháp sẻ truy cập, Hàng, ROW ĐỘC QUYỀN, Cập nhật kèo bóng đá pháp sẻ độc quyền, kèo bóng đá pháp sẻ, kèo bóng đá pháp sẻ, Độc quyền,,Access Exclusive). Chế độ này
Được mua bởiBảng thay đổi, BẢNG DROP, cắt ngắn, Reindex, cụm,,Nút không đầy đủlệnh. Cái nàyBảng kèo bóng đá phápCâu không chỉ định
Tip:chỉ mộtTruy cậpkèo bóng đá pháp khối AChọn(khôngcho) Tuyên bố.
Sau khi có được, một kèo bóng đá pháp thường được giữ cho đến khi kết thúcrollbackHủy bỏ tất cả các hiệu ứng củaPL/PGSQLNgoại lệ
Bảng 13-2. Các chế độ kèo bóng đá pháp mâu thuẫn
Chế độ kèo bóng đá pháp được yêu cầu | Chế độ kèo bóng đá pháp hiện tại | |||||||
---|---|---|---|---|---|---|---|---|
kèo bóng đá pháp sẻ truy cập | kèo bóng đá pháp sẻ hàng | ROW ĐỘC QUYỀN | Cập nhật kèo bóng đá pháp sẻ độc quyền | kèo bóng đá pháp sẻ | kèo bóng đá pháp sẻ độc quyền | Độc quyền | Access Exclusive | |
kèo bóng đá pháp sẻ truy cập | x | |||||||
kèo bóng đá pháp sẻ hàng | x | x | ||||||
Độc quyền | x | X | X | x | ||||
Cập nhật kèo bóng đá pháp sẻ độc quyền | x | x | x | x | x | |||
kèo bóng đá pháp sẻ | x | X | x | X | x | |||
kèo bóng đá pháp sẻ độc quyền | x | x | x | x | x | x | ||
Độc quyền | x | x | x | x | x | x | x | |
Access Exclusive | x | x | x | x | x | x | x | x |
Ngoài các kèo bóng đá pháp cấp bảng, còn có kèo bóng đá pháp cấp hàng,Nhà văn với cùng một hàng.
Để có được kèo bóng đá pháp cấp độ hàng độc quyền trên một hàng mà không cóChọn để cập nhật. Lưu ý rằng một khi cấp độ hàng
Để có được kèo bóng đá pháp cấp hàng được chia sẻ trên một hàng, chọn hàngChọn kèo bóng đá pháp sẻ. Một kèo bóng đá pháp được chia sẻ
PostgreSQLKhông nhớChọn để cập nhậtsửa đổi các hàng đã chọn để đánh dấu
Ngoài kèo bóng đá pháp bàn và hàng, cấp độ trang
Việc sử dụng kèo bóng đá pháp có thể tăng khả năng củabế tắc, trong đó hai (hoặc nhiều hơn)PostgreSQLtự động phát hiện các tình huống bế tắc và giải quyết chúng bằng cách
Lưu ý rằng bế tắc cũng có thể xảy ra do kết quả của
Cập nhật tài khoản đặt số dư = cân bằng + 100.00 trong đó acctnum = 11111;
Điều này có được kèo bóng đá pháp cấp hàng trên hàng với quy định
Cập nhật tài khoản đặt số dư = cân bằng + 100.00 trong đó acctnum = 22222;
Đầu tiênCập nhậtTuyên bốCập nhậtTuyên bố thấy rằng hàng nó
Cập nhật tài khoản đặt số dư = cân bằng - 100.00 trong đó acctnum = 22222;
Giao dịch Một cố gắng để có được kèo bóng đá pháp cấp hàng trênPostgreSQLsẽ phát hiện điều này
Phòng thủ tốt nhất chống lại bế tắc nói chung là để tránh
Miễn là không phát hiện tình huống bế tắc, một giao dịch
PostgreSQLcung cấp một phương tiệnkèo bóng đá pháp tư vấn,,"Tệp phẳng"Hệ thống quản lý dữ liệu.
Có hai cách để có được kèo bóng đá pháp tư vấn trongPostgreSQL: ở cấp độ phiên
Giống như tất cả các kèo bóng đá pháp trongPostgreSQL, một danh sách đầy đủ các tư vấnpg_locksChế độ xem hệ thống.
Cả kèo bóng đá pháp tư vấn và kèo bóng đá pháp thông thường đều được lưu trữ trong một chia sẻMAX_LOCKS_PER_TRANSACTIONvàMax_Connections.
Trong một số trường hợp nhất định sử dụng các phương pháp kèo bóng đá pháp tư vấn, đặc biệtgiới hạnmệnh đề, phải cẩn thận để kiểm soát
Chọn pg_advisory_lock (id) từ foo trong đó id = 12345; -- Được rồi
Trong các truy vấn trên, hình thức thứ hai là nguy hiểm vìgiới hạnkhông được đảm bảo làpg_locks.
Các chức năng được cung cấp để thao túng kèo bóng đá pháp tư vấn làBảng.