PostgreSQL: soi kèo bóng đá truoctran | |||
---|---|---|---|
prev | UP | Chương 25. Tính khả dụng cao, cân bằng tải và sao chép | Tiếp theo |
Chế độ chờ nóng là thuật ngữ được sử dụng để mô tả khả năng kết nối với máy chủ và chạy kèo bóng đá pháp truy vấn chỉ đọc trong khi máy chủ đang ở chế độ khôi phục hoặc chế độ chờ. Điều này rất hữu ích cho cả mục đích sao chép và để khôi phục sao lưu về trạng thái mong muốn với độ chính xác cao. Thuật ngữ Hot Standby cũng đề cập đến khả năng của máy chủ chuyển từ hồi phục sang hoạt động bình thường trong khi người dùng tiếp tục chạy truy vấn và/hoặc giữ cho kết nối của họ mở.
Truy kèo bóng đá pháp chạy ở chế độ chờ nóng tương tự như hoạt động truy kèo bóng đá pháp thông thường, mặc dù có một số khác biệt sử dụng và quản trị được giải thích dưới đây.
Khihot_standby9798_10033
Dữ liệu ở chế độ chờ mất một thời gian để đến từ máy chủ chính để có độ trễ có thể đo lường được giữa chính và dự phòng. Chạy cùng một truy kèo bóng đá pháp gần như đồng thời trên cả chính và dự phòng có thể trả về kết quả khác nhau. Chúng tôi nói rằng dữ liệu trên chế độ chờ làCuối cùng là nhất quán10374_10723Phần 13.2.
Giao dịch bắt đầu trong quá trình chờ nóng có thể phát hành kèo bóng đá pháp lệnh sau:
Truy cập truy kèo bóng đá pháp -Chọn, sao chép vào
lệnh con trỏ -khai báo, Fetch, Đóng
tham số -show, set, Đặt lại
lệnh quản lý giao dịch
bắt đầu, kết thúc, ABORT, Bắt đầu giao dịch
SavePoint, Phát hành, rollback to savePoint
Ngoại lệkhối và kèo bóng đá pháp phép trừ nội bộ khác
Bảng khóa, mặc dù chỉ khi rõ ràng ở một trong kèo bóng đá pháp chế độ này:Chia sẻ truy cập, Chia sẻ hànghoặcROW ĐỘC QUYỀN.
Kế hoạch và tài nguyên -Chuẩn bị, thực thi, DealLocate, Discard
plugins và tiện ích mở rộng -load
Unlisten
Giao dịch bắt đầu trong quá trình chờ Hot sẽ không bao giờ được chỉ định ID giao dịch và không thể ghi vào nhật ký ghi lại hệ thống. Do đó, kèo bóng đá pháp hành động sau sẽ tạo ra kèo bóng đá pháp thông báo lỗi:
Ngôn ngữ thao tác dữ liệu (DML) -Chèn, Cập nhật, Xóa, Sao chép từ, 12593_12603. Lưu ý rằng không có hành động được phép dẫn đến việc kích hoạt được thực thi trong quá trình phục hồi. Hạn chế này áp dụng ngay cả cho kèo bóng đá pháp bảng tạm thời, vì kèo bóng đá pháp hàng bảng không thể được đọc hoặc viết mà không chỉ định ID giao dịch, hiện không thể thực hiện được trong môi trường dự phòng nóng.
Ngôn ngữ định nghĩa dữ liệu (DDL) -Tạo, thả, thay đổi, bình luận13077_13219
Chọn ... để chia sẻ | CẬP NHẬT13290_13371
Quy tắc trênChọnkèo bóng đá pháp câu lệnh tạo kèo bóng đá pháp lệnh DML.
khóaĐiều đó yêu cầu rõ ràng một chế độ cao hơnChế độ độc quyền hàng.
khóaTrong hình thức mặc định ngắn, vì nó yêu cầuChế độ độc quyền truy cập.
kèo bóng đá pháp lệnh quản lý giao dịch đặt rõ ràng trạng thái không chỉ đọc:
Bắt đầu đọc ghi, Bắt đầu giao dịch Đọc ghi
Đặt giao dịch đọc ghi, Đặt kèo bóng đá pháp đặc điểm phiên như giao dịch đọc Ít
Đặt giao dịch_read_only = TẮT
kèo bóng đá pháp lệnh cam kết hai pha -Chuẩn bị giao dịch, Cam kết đã chuẩn bị, Chuẩn bị rollbackBởi vì ngay cả kèo bóng đá pháp giao dịch chỉ đọc cũng cần phải viết WAL trong giai đoạn chuẩn bị (giai đoạn đầu tiên của cam kết hai pha).
Cập nhật trình tự -NextVal ()
, setVal ()
nghe, Thông báo
Trong hoạt động bình thường,"Chỉ đọc"Giao dịch được phép sử dụngNghevàThông báo14853_15044
Trong quá trình chờ nóng, tham sốGiao dịch_read_onlyluôn luôn đúng và có thể không thay đổi. Nhưng miễn là không có nỗ lực nào được thực hiện để sửa đổi cơ sở dữ liệu, kèo bóng đá pháp kết nối trong quá trình chờ nóng sẽ hoạt động giống như bất kỳ kết nối cơ sở dữ liệu nào khác. Nếu chuyển đổi dự phòng hoặc chuyển đổi xảy ra, cơ sở dữ liệu sẽ chuyển sang chế độ xử lý thông thường. kèo bóng đá pháp phiên sẽ vẫn được kết nối trong khi máy chủ thay đổi chế độ. Khi kết thúc dự phòng nóng, sẽ có thể bắt đầu kèo bóng đá pháp giao dịch đọc-ghi (thậm chí từ một phiên bắt đầu trong quá trình chờ nóng).
Người dùng sẽ có thể biết liệu phiên của họ có chỉ đọc bằng cách phát hànhHiển thị giao dịch_read_only. Ngoài ra, một tập hợp kèo bóng đá pháp chức năng (Bảng 9-69) Cho phép người dùng truy cập thông tin về máy chủ dự phòng. Chúng cho phép bạn viết kèo bóng đá pháp chương trình nhận thức được trạng thái hiện tại của cơ sở dữ liệu. Chúng có thể được sử dụng để theo dõi tiến trình phục hồi hoặc cho phép bạn viết kèo bóng đá pháp chương trình phức tạp để khôi phục cơ sở dữ liệu về kèo bóng đá pháp trạng thái cụ thể.
Máy chủ chính và dự phòng theo nhiều cách được kết nối một cách lỏng lẻo. kèo bóng đá pháp hành động trên chính sẽ có ảnh hưởng đến chế độ chờ. Kết quả là, có khả năng tương tác tiêu cực hoặc xung đột giữa chúng. Xung đột dễ hiểu nhất là hiệu suất: Nếu tải dữ liệu khổng lồ đang diễn ra trên chính thì điều này sẽ tạo ra một luồng bản ghi WAL tương tự ở chế độ chờ, do đó, kèo bóng đá pháp truy vấn dự phòng có thể đối với kèo bóng đá pháp tài nguyên hệ thống, chẳng hạn như I/O.
Ngoài ra còn có kèo bóng đá pháp loại xung đột bổ sung có thể xảy ra với chế độ chờ nóng. Những xung đột này làXung đột cứngTheo nghĩa là kèo bóng đá pháp truy vấn có thể cần phải bị hủy và, trong một số trường hợp, kèo bóng đá pháp phiên bị ngắt kết nối để giải quyết chúng. Người dùng được cung cấp một số cách để xử lý kèo bóng đá pháp xung đột này. kèo bóng đá pháp trường hợp xung đột bao gồm:
Truy cập khóa độc quyền được thực hiện trên máy chủ chính, bao gồm cả hai điều rõ ràngkhóaLệnh và khác nhauDDLhành động, xung đột với kèo bóng đá pháp truy cập bảng trong kèo bóng đá pháp truy vấn chờ.
17347_17464
17481_17584
17601_17713"Xem"Bất kỳ hàng nào sẽ được gỡ bỏ.
Ứng dụng hồ sơ làm sạch chân không từ kèo bóng đá pháp xung đột Wal với kèo bóng đá pháp truy vấn truy cập trang đích trên chế độ chờ, cho dù dữ liệu sẽ được hiển thị có thể hiển thị hay không.
Trên máy chủ chính, những trường hợp này chỉ cần chờ đợi; Và người dùng có thể chọn hủy một trong hai hành động mâu thuẫn. Tuy nhiên, ở chế độ chờ không có lựa chọn nào: hành động Wal-logged đã xảy ra ở chính để dự phòng không được không áp dụng nó. Hơn nữa, cho phép ứng dụng WAL chờ đợi vô thời hạn có thể rất không mong muốn, bởi vì trạng thái của dự phòng sẽ ngày càng vượt xa vị trí chính. Do đó, một cơ chế được cung cấp để hủy bỏ kèo bóng đá pháp truy vấn dự phòng xung đột với kèo bóng đá pháp bản ghi Wal được ứng dụng.
Một ví dụ về tình huống có kèo bóng đá pháp đề là quản trị viên trên máy chủ chính đang chạyBẢNG DROPTrên một bảng hiện đang được truy vấn trên máy chủ dự phòng. Rõ ràng truy vấn chờ kèo bóng đá pháp thể tiếp tục nếuBẢNG DROPđược áp dụng trên chế độ chờ. Nếu tình huống này xảy ra trên chính,BẢNG DROPSẽ đợi cho đến khi truy kèo bóng đá pháp khác kết thúc. Nhưng khiBẢNG DROPđược chạy trên chính, chính không có thông tin về những truy vấn nào đang chạy ở chế độ chờ, vì vậy nó sẽ không chờ đợi bất kỳ truy vấn dự phòng nào như vậy. kèo bóng đá pháp bản ghi WAL Change đến dự phòng trong khi truy vấn chờ vẫn đang chạy, gây ra xung đột. Máy chủ dự phòng phải trì hoãn việc áp dụng kèo bóng đá pháp bản ghi Wal (và mọi thứ sau chúng cũng vậy) hoặc nếu không thì hãy hủy truy vấn mâu thuẫn đểBẢNG DROPcó thể được áp dụng.
Khi một truy vấn mâu thuẫn là ngắn, thường mong muốn cho phép nó hoàn thành bằng cách trì hoãn ứng dụng Wal cho một chút; Nhưng một sự chậm trễ lâu trong ứng dụng Wal thường kèo bóng đá pháp mong muốn. Vì vậy, cơ chế hủy có tham số,Max_Standby_archive_delayvàMax_Standby_Streaming_Delay, xác định độ trễ được phép tối đa trong ứng dụng WAL. kèo bóng đá pháp truy vấn mâu thuẫn sẽ bị hủy sau khi mất nhiều thời gian hơn so với cài đặt độ trễ có liên quan để áp dụng bất kỳ dữ liệu WAL mới được nhận. Có hai tham số để có thể chỉ định kèo bóng đá pháp giá trị độ trễ khác nhau cho trường hợp đọc dữ liệu WAL từ kho lưu trữ (nghĩa là, phục hồi ban đầu từ bản sao lưu cơ sở hoặc"Bắt kịp"Một máy chủ dự phòng đã bị tụt lại phía sau) so với đọc dữ liệu WAL thông qua sao chép phát trực tuyến.
Trong một máy chủ dự phòng tồn tại chủ yếu để có tính khả dụng cao, tốt nhất là đặt kèo bóng đá pháp tham số độ trễ tương đối ngắn, do đó máy chủ không thể giảm xa so với chính do sự chậm trễ do kèo bóng đá pháp truy vấn dự phòng gây ra. Tuy nhiên, nếu máy chủ dự phòng có nghĩa là để thực hiện kèo bóng đá pháp truy vấn chạy dài, thì giá trị độ trễ cao hoặc thậm chí cao có thể được ưu tiên hơn. Tuy nhiên, hãy nhớ rằng một truy vấn chạy dài có thể khiến kèo bóng đá pháp phiên khác trên máy chủ dự phòng không thấy những thay đổi gần đây trên chính, nếu nó trì hoãn việc áp dụng WAL Records.
Sau khi độ trễ được chỉ định bởiMax_Standby_archive_delay21050_21056MAX_STANDBY_STRAMING_DELAYđã bị vượt quá, kèo bóng đá pháp truy vấn xung đột sẽ bị hủy. Điều này thường chỉ dẫn đến lỗi hủy, mặc dù trong trường hợp phát lại Acơ sở dữ liệu thảToàn bộ phiên xung đột sẽ bị chấm dứt. Ngoài ra, nếu xung đột kết thúc với một khóa được tổ chức bởi một giao dịch nhàn rỗi, phiên mâu thuẫn bị chấm dứt (hành vi này có thể thay đổi trong tương lai).
kèo bóng đá pháp truy vấn bị hủy có thể được thử lại ngay lập tức (tất nhiên sau khi bắt đầu một giao dịch mới). Vì việc hủy truy vấn phụ thuộc vào bản chất của kèo bóng đá pháp bản ghi Wal được phát lại, một truy vấn đã bị hủy có thể thành công nếu nó được thực thi lại.
Hãy nhớ rằng kèo bóng đá pháp tham số độ trễ được so sánh với thời gian trôi qua kể từ khi dữ liệu WAL được máy chủ dự phòng nhận được. Do đó, khoảng thời gian ân hạn cho phép bất kỳ một truy vấn nào ở chế độ chờ không bao giờ nhiều hơn tham số độ trễ và có thể ít hơn đáng kể nếu dự phòng đã bị tụt lại do kết quả của việc chờ đợi kèo bóng đá pháp truy vấn trước đó hoàn thành hoặc do không thể theo kịp tải cập nhật nặng.
Lý do phổ biến nhất cho xung đột giữa kèo bóng đá pháp truy vấn chờ và phát lại Wal là"Dọn dẹp sớm". Thông thường,PostgreSQL22354_22713
Người dùng có kinh nghiệm cần lưu ý rằng cả phiên bản hàng và phiên bản hàng đóng băng sẽ có khả năng xung đột với kèo bóng đá pháp truy vấn dự phòng. Chạy một hướng dẫnChụp lên chân kèo bóng đá phápCó khả năng gây ra xung đột ngay cả trên kèo bóng đá pháp bảng không có hàng được cập nhật hoặc xóa.
Người dùng nên rõ ràng rằng kèo bóng đá pháp bảng được cập nhật thường xuyên và nhiều trên máy chủ chính sẽ nhanh chóng gây ra hủy kèo bóng đá pháp truy vấn chạy dài hơn ở chế độ chờ. Trong những trường hợp như vậy, cài đặt giá trị hữu hạn choMax_Standby_archive_delayhoặcMax_Standby_Streaming_DelayCó thể được coi là tương tự như cài đặtstatement_timeout.
Khả năng khắc phục tồn tại nếu số lượng hủy bỏ trạng thái chờ được tìm thấy là kèo bóng đá pháp thể chấp nhận được. Tùy chọn đầu tiên là đặt tham sốhot_standby_feedback, ngăn chặnNút hútTừ việc loại bỏ kèo bóng đá pháp hàng gần đây và do đó xung đột dọn dẹp không xảy ra. Nếu bạn làm điều này, bạn nên lưu ý rằng điều này sẽ trì hoãn việc dọn dẹp kèo bóng đá pháp hàng chết trên chính, điều này có thể dẫn đến sự phình to không mong muốn. Tuy nhiên, tình huống dọn dẹp sẽ không tệ hơn nếu kèo bóng đá pháp truy vấn dự phòng đang chạy trực tiếp trên máy chủ chính và bạn vẫn nhận được lợi ích của việc thực hiện giảm tải lên chế độ chờ. Nếu máy chủ dự phòng kết nối và ngắt kết nối thường xuyên, bạn có thể muốn thực hiện kèo bóng đá pháp điều chỉnh để xử lý khoảng thời gian khi24186_24208Phản hồi kèo bóng đá pháp được cung cấp. Ví dụ: xem xét tăngMax_Standby_archive_delayđể kèo bóng đá pháp truy vấn không bị hủy nhanh chóng bởi kèo bóng đá pháp xung đột trong kèo bóng đá pháp tệp lưu trữ Wal trong kèo bóng đá pháp khoảng thời gian bị ngắt kết nối. Bạn cũng nên xem xét tăngMax_Standby_Streaming_DelayĐể tránh hủy bỏ nhanh bằng kèo bóng đá pháp mục WAL phát trực tuyến mới được kết nối sau khi kết nối lại.
Một tùy chọn khác là tăngVACUUM_DEFER_CLEANUP_AGETrên máy chủ chính, do đó kèo bóng đá pháp hàng chết sẽ không được làm sạch nhanh như bình thường. Điều này sẽ cho phép nhiều thời gian hơn để kèo bóng đá pháp truy vấn thực thi trước khi chúng bị hủy ở chế độ chờ mà không phải đặt mức caoMAX_STANDBY_STRAMING_DELAY. Tuy nhiên, rất khó để đảm bảo bất kỳ cửa sổ thời gian thực hiện cụ thể nào với phương kèo bóng đá pháp này, vìVACUUM_DEFER_CLEANUP_AGEđược đo trong kèo bóng đá pháp giao dịch được thực hiện trên máy chủ chính.
Số lượng truy kèo bóng đá pháp hủy bỏ và lý do cho chúng có thể được xem bằng cách sử dụngPG_STAT_DATABASE_CONFLICTSChế độ xem hệ thống trên máy chủ dự phòng. ThePG_STAT_DATABASEChế độ xem hệ thống cũng chứa thông tin tóm tắt.
nếuhot_standbyđược quaytrêninPostgreSql.confvà córecovery.confTệp hiện tại, máy chủ sẽ chạy ở chế độ chờ nóng. Tuy nhiên, có thể mất một thời gian để kèo bóng đá pháp kết nối dự phòng nóng được phép, vì máy chủ sẽ không chấp nhận kết nối cho đến khi hoàn thành việc phục hồi đủ để cung cấp trạng thái nhất quán mà kèo bóng đá pháp truy vấn có thể chạy. Trong giai đoạn này, kèo bóng đá pháp khách hàng cố gắng kết nối sẽ bị từ chối với một thông báo lỗi. Để xác nhận máy chủ đã xuất hiện, vòng lặp cố gắng kết nối từ ứng dụng hoặc tìm kiếm kèo bóng đá pháp thông báo này trong nhật ký máy chủ:
Log: Nhập chế độ chờ ... Sau đó một thời gian sau ... Nhật ký: Trạng thái phục hồi nhất quán đạt được Nhật ký: Hệ thống cơ sở dữ liệu đã sẵn sàng để chấp nhận chỉ đọc kèo bóng đá pháp kết nối
Thông tin nhất quán được ghi lại một lần cho mỗi điểm kiểm tra trên chính. kèo bóng đá pháp thể kích hoạt chế độ chờ nóng khi đọc wal viết trong khoảng thời gianWal_Levelkèo bóng đá pháp được đặt thànhhot_standbyhoặclogicTrên chính. Đạt đến trạng thái nhất quán cũng có thể bị trì hoãn khi có cả hai điều kiện sau:
Một giao dịch ghi có hơn 64 lần trừ
Giao dịch ghi tồn tại rất lâu
27062_27211archive_timeoutCài đặt trên chính.
Cài đặt của một số tham số trên chế độ chờ sẽ cần cấu hình lại nếu chúng đã được thay đổi trên chính. Đối với kèo bóng đá pháp tham số này, giá trị trên dự phòng phải bằng hoặc lớn hơn giá trị trên sơ cấp. Nếu kèo bóng đá pháp tham số này không được đặt đủ cao thì dự phòng sẽ từ chối bắt đầu. kèo bóng đá pháp giá trị cao hơn sau đó có thể được cung cấp và máy chủ được khởi động lại để bắt đầu phục hồi lại. kèo bóng đá pháp tham số này là:
Max_Connections
MAX_PREPARED_TRANSACTIONS
MAX_LOCKS_PER_TRANSACTION
Max_Worker_Processes
Điều quan trọng là quản trị viên chọn cài đặt thích hợp choMax_Standby_archive_delayvàMAX_STANDBY_STRAMING_DELAY. kèo bóng đá pháp lựa chọn tốt nhất khác nhau tùy thuộc vào ưu tiên kinh doanh. Ví dụ: nếu máy chủ chủ yếu được coi là một máy chủ có tính khả dụng cao, thì bạn sẽ muốn cài đặt độ trễ thấp, thậm chí có thể bằng không, mặc dù đó là một cài đặt rất tích cực. Nếu máy chủ dự phòng được giao nhiệm vụ là một máy chủ bổ sung cho kèo bóng đá pháp truy vấn hỗ trợ quyết định thì có thể chấp nhận đặt kèo bóng đá pháp giá trị độ trễ tối đa thành nhiều giờ hoặc thậm chí -1 có nghĩa là chờ đợi mãi mãi để kèo bóng đá pháp truy vấn hoàn thành.
Trạng thái giao dịch "BITS BITS" được viết trên bản chính không được ghi lại, vì vậy dữ liệu trên dự phòng có thể sẽ viết lại kèo bóng đá pháp gợi ý một lần nữa trên chế độ chờ. Do đó, máy chủ dự phòng vẫn sẽ thực hiện ghi đĩa mặc dù tất cả người dùng chỉ đọc được; Không có thay đổi xảy ra với kèo bóng đá pháp giá trị dữ liệu. Người dùng vẫn sẽ viết kèo bóng đá pháp tệp tạm thời sắp xếp lớn và tạo lại kèo bóng đá pháp tệp thông tin Relcache, vì vậy không có phần nào của cơ sở dữ liệu thực sự chỉ đọc trong chế độ chờ nóng. Cũng lưu ý rằng ghi vào cơ sở dữ liệu từ xa bằng cách sử dụngDBLinkMô-đun và kèo bóng đá pháp hoạt động khác ngoài cơ sở dữ liệu sử dụng kèo bóng đá pháp chức năng PL vẫn sẽ có thể, mặc dù giao dịch chỉ được đọc cục bộ.
kèo bóng đá pháp loại lệnh quản trị sau đây không được chấp nhận trong chế độ khôi phục:
Ngôn ngữ định nghĩa dữ liệu (DDL) - ví dụ:Tạo chỉ mục
Đặc quyền và quyền sở hữu -Grant, thu hồi, RecentSign
lệnh bảo trì -Phân tích, VACUUM, cụm, Reindex
Một lần nữa, lưu ý rằng một số lệnh này thực sự được phép trong kèo bóng đá pháp giao dịch chế độ "chỉ đọc" trên chính.
Do đó, bạn không thể tạo kèo bóng đá pháp chỉ mục bổ sung chỉ tồn tại ở chế độ chờ, cũng như kèo bóng đá pháp số liệu thống kê chỉ tồn tại ở chế độ chờ. Nếu kèo bóng đá pháp lệnh quản trị này là cần thiết, chúng nên được thực thi trên chính và cuối cùng những thay đổi đó sẽ lan truyền đến chế độ chờ.
PG_CANCEL_BACKEND ()
vàpg_terminate_backend ()
sẽ hoạt động trên kèo bóng đá pháp phụ trợ của người dùng, nhưng không phải là quá trình khởi động, thực hiện khôi phục.pg_stat_activityKhông hiển thị mục nhập cho quá trình khởi động, cũng như không thực hiện kèo bóng đá pháp giao dịch phục hồi hiển thị là hoạt động. Kết quả là,pg_prepared_xactsluôn trống trong quá trình phục hồi. Nếu bạn muốn giải quyết kèo bóng đá pháp giao dịch đã chuẩn bị trong nghi ngờ, hãy xempg_prepared_xactsVề kèo bóng đá pháp lệnh chính và phát hành để giải quyết kèo bóng đá pháp giao dịch ở đó.
pg_locksSẽ hiển thị kèo bóng đá pháp khóa được giữ bởi phụ trợ, như bình thường.31026_31036cũng hiển thị một giao dịch ảo được quản lý bởi quy trình khởi động sở hữu tất cảAccessExclusiveLocks31163_31320AccessExclusiveLockskèo bóng đá pháp hiển thị trongpg_lockscho quá trình khởi động; chúng chỉ được cho là tồn tại.
31481_31487NagiospluginCheck_pgsqlsẽ hoạt động, bởi vì thông tin đơn giản mà nó kiểm tra tồn tại. TheCheck_PostgresTập lệnh giám sát cũng sẽ hoạt động, mặc dù một số giá trị được báo cáo có thể cho kết quả khác nhau hoặc khó hiểu. Ví dụ, thời gian chân không cuối cùng sẽ không được duy trì, vì không có chân không xảy ra ở chế độ chờ. Máy hút bụi chạy trên sơ cấp vẫn gửi kèo bóng đá pháp thay đổi của chúng đến chế độ chờ.
kèo bóng đá pháp lệnh điều khiển tệp Wal sẽ không hoạt động trong quá trình phục hồi, ví dụ:pg_start_backup
, pg_switch_xlog
vv.
kèo bóng đá pháp mô -đun có thể tải động hoạt động, bao gồmpg_stat_statements.
Khóa tư vấn hoạt động bình thường trong phục hồi, bao gồm phát hiện bế tắc. Lưu ý rằng kèo bóng đá pháp khóa tư vấn không bao giờ được ghi lại, vì vậy không thể khóa tư vấn trên chính hoặc dự phòng xung đột với WAL Replay. Cũng không thể có được một khóa tư vấn trên chính và nó bắt đầu một khóa tư vấn tương tự ở chế độ chờ. Khóa tư vấn chỉ liên quan đến máy chủ mà chúng được mua.
kèo bóng đá pháp hệ thống sao chép dựa trên kích hoạt nhưslony, LondistevàBucardohoàn toàn không chạy ở chế độ chờ, mặc dù chúng sẽ chạy vui vẻ trên máy chủ chính miễn là kèo bóng đá pháp thay đổi không được gửi đến máy chủ dự phòng để được áp dụng. WAL phát lại không dựa trên kích hoạt để bạn không thể chuyển từ chế độ chờ đến bất kỳ hệ thống nào yêu cầu cơ sở dữ liệu bổ sung ghi hoặc phụ thuộc vào việc sử dụng kèo bóng đá pháp trình kích hoạt.
kèo bóng đá pháp thể gán OIDS mới, mặc dù một sốUUIDMáy phát điện vẫn có thể hoạt động miễn là chúng kèo bóng đá pháp dựa vào việc viết trạng thái mới vào cơ sở dữ liệu.
Hiện tại, việc tạo bảng tạm thời không được phép trong khi chỉ đọc kèo bóng đá pháp giao dịch, vì vậy trong một số trường hợp, kèo bóng đá pháp tập lệnh hiện tại sẽ không chạy chính xác. Hạn chế này có thể được nới lỏng trong một bản phát hành sau này. Đây là cả vấn đề tuân thủ tiêu chuẩn SQL và vấn đề kỹ thuật.
Thả kèo bóng đá pháp gian bảngChỉ có thể thành công nếu kèo bóng đá pháp gian bảng trống. Một số người dùng dự phòng có thể đang tích cực sử dụng kèo bóng đá pháp gian bảng thông qua của họTEMP_TABLESPACESTham số. Nếu có kèo bóng đá pháp tệp tạm thời trong không gian bảng, tất cả kèo bóng đá pháp truy vấn hoạt động sẽ bị hủy để đảm bảo rằng kèo bóng đá pháp tệp tạm thời bị xóa, do đó có thể xóa không gian bảng và có thể tiếp tục phát lại Wal.
chạyDrop DataBasehoặcthay đổi cơ sở dữ liệu ... Đặt kèo bóng đá pháp gian bảngTrên chính sẽ tạo ra một mục nhập WAL sẽ khiến tất cả người dùng được kết nối với cơ sở dữ liệu đó ở chế độ chờ bị ngắt kết nối. Hành động này xảy ra ngay lập tức, bất kể cài đặt củaMAX_STANDBY_STRAMING_DELAY. Lưu ý rằngThay đổi cơ sở dữ liệu ... Đổi tên34418_34585
Trong chế độ bình thường (kèo bóng đá pháp phục hồi), nếu bạn phát hànhThả người dùnghoặcVai trò thảĐối với vai trò với khả năng đăng nhập trong khi người dùng đó vẫn được kết nối thì kèo bóng đá pháp có gì xảy ra với người dùng được kết nối - chúng vẫn được kết nối. Người dùng kèo bóng đá pháp thể kết nối lại tuy nhiên. Hành vi này cũng áp dụng trong phục hồi, vì vậyThả người dùng34958_35021
35027_35454
Autovacuum kèo bóng đá pháp hoạt động trong quá trình phục hồi. Nó sẽ bắt đầu bình thường khi kết thúc phục hồi.
Quá trình CheckPulum và quy trình người viết nền đang hoạt động trong quá trình phục hồi. Quá trình CheckPulum sẽ thực hiện kèo bóng đá pháp điểm khởi động lại (tương tự như kèo bóng đá pháp điểm kiểm tra trên chính) và quy trình người viết nền sẽ thực hiện kèo bóng đá pháp hoạt động làm sạch khối thông thường. Điều này có thể bao gồm kèo bóng đá pháp bản cập nhật thông tin bit gợi ý được lưu trữ trên máy chủ dự phòng. Theđiểm kiểm traLệnh được chấp nhận trong quá trình khôi phục, mặc dù nó thực hiện khởi động lại thay vì điểm kiểm tra mới.
kèo bóng đá pháp tham số khác nhau đã được đề cập ở trên trongPhần 25.5.2vàPhần 25.5.3.
Trên chính, tham sốWal_LevelvàVACUUM_DEFER_CLEANUP_AGEcó thể được sử dụng.Max_Standby_archive_delayvàMax_Standby_Streaming_Delaykèo bóng đá pháp có hiệu lực nếu được đặt trên chính.
Trên chế độ chờ, tham sốhot_standby, Max_Standby_archive_delayvàMax_Standby_Streaming_Delaycó thể được sử dụng.VACUUM_DEFER_CLEANUP_AGEkèo bóng đá pháp có hiệu lực miễn là máy chủ vẫn ở chế độ chờ, mặc dù nó sẽ trở nên phù hợp nếu dự phòng trở thành chính.
Có một số hạn chế của chế độ chờ nóng. Những thứ này có thể và có thể sẽ được sửa trong kèo bóng đá pháp bản phát hành trong tương lai:
37659_37758
37775_38129
Điểm bắt đầu hợp lệ cho kèo bóng đá pháp truy vấn chờ được tạo tại mỗi điểm kiểm tra trên chủ. Nếu chế độ chờ bị tắt trong khi Master đang ở trong trạng thái tắt máy, có thể không thể nhập lại chế độ chờ nóng cho đến khi chính được bắt đầu, để nó tạo ra kèo bóng đá pháp điểm bắt đầu tiếp theo trong nhật ký Wal. Tình huống này không phải là vấn đề trong kèo bóng đá pháp tình huống phổ biến nhất khi nó có thể xảy ra. Nói chung, nếu chính bị tắt và không có sẵn nữa, điều đó có khả năng là do một thất bại nghiêm trọng đòi hỏi phải có chế độ chờ được chuyển đổi để hoạt động như một chính. Và trong kèo bóng đá pháp tình huống mà chính đang được cố tình gỡ xuống, phối hợp để đảm bảo dự phòng trở thành quy trình chính của chính cũng là thủ tục tiêu chuẩn.
Khi kết thúc phục hồi,AccessExclusiveLocksĐược tổ chức bởi kèo bóng đá pháp giao dịch đã chuẩn bị sẽ yêu cầu gấp đôi số lượng mục nhập bảng khóa thông thường. Nếu bạn có kế hoạch chạy một số lượng lớn kèo bóng đá pháp giao dịch được chuẩn bị đồng thời thường thực hiệnAccessExclusiveLockshoặc bạn có kế hoạch có một giao dịch lớn mất nhiềuAccessExclusiveLocks, bạn nên chọn giá trị lớn hơnMAX_LOCKS_PER_TRANSACTION, có lẽ nhiều bằng gấp đôi giá trị của tham số trên máy chủ chính. Bạn kèo bóng đá pháp cần xem xét điều này nếu cài đặt của bạnMAX_PREPARED_TRANSACTIONSlà 0.
Mức cách ly giao dịch có thể nối tiếp chưa có sẵn ở chế độ chờ nóng. (Nhìn thấyPhần 13.2.3vàPhần 13.4.139857_39985