Phiên bản được hỗ trợ:hiện tại(17)16 / 15 / 14 / 13
Phiên bản phát triển:Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1
Tài liệu này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

19.6. Sao soi kèo bóng đá truoctran

Các cài đặt này kiểm soát hành vi của tích hợpSao soi kèo bóng đá truoctran phát trực tuyếntính năng (xemPhần 26.2.5). soi kèo bóng đá truoctran chủ sẽ là Master hoặc soi kèo bóng đá truoctran chủ dự phòng.Phần 26.2.7) được sử dụng, soi kèo bóng đá truoctran chủ dự phòng cũng có thể là người gửi, cũng như soi kèo bóng đá truoctran thu. Các tham số chủ yếu là để gửi và soi kèo bóng đá truoctran chủ dự phòng, mặc dù một số tham số chỉ có ý nghĩa trên soi kèo bóng đá truoctran chủ chính.

19.6.1. Gửi soi kèo bóng đá truoctran chủ

Các tham số này có thể được đặt trên bất kỳ máy chủ nào sẽ gửi dữ liệu sao soi kèo bóng đá truoctran đến một hoặc nhiều máy chủ dự phòng. Master luôn là một máy chủ gửi, vì vậy các tham số này phải luôn được đặt trên chủ.

MAX_WAL_SENDERS(Số nguyên)

Chỉ định số lượng kết nối đồng thời tối đa từ các máy chủ dự phòng hoặc máy khách dự phòng cơ sở phát trực tuyến (tức là, số lượng tối đa của các quy trình người gửi WAL đồng thời chạy). Mặc định là 10. Giá trị 0 có nghĩa là sao soi kèo bóng đá truoctran bị vô hiệu hóa.Max_ConnectionstrừSuperuser_reserved_connections. Sự ngắt kết nối của soi kèo bóng đá truoctran khách phát trực tuyến đột ngột có thể để lại một khe kết nối mồ côi phía sau cho đến khi đạt được thời gian chờ, do đó, tham số này phải được đặt cao hơn một chút so với số lượng soi kèo bóng đá truoctran khách dự kiến ​​tối đa để các soi kèo bóng đá truoctran khách bị ngắt kết nối có thể kết nối lại ngay lập tức.Wal_Levelphải được đặt thànhbản soi kèo bóng đá truoctranhoặc cao hơn để cho phép kết nối từ các soi kèo bóng đá truoctran chủ dự phòng.

Max_Replication_Slots(Số nguyên)

Chỉ định số lượng các khe sao soi kèo bóng đá truoctran tối đa (xemPhần 26.2.6) mà soi kèo bóng đá truoctran chủ có thể hỗ trợ. Mặc định là 10. Tham số này chỉ có thể được đặt ở soi kèo bóng đá truoctran chủ bắt đầu.Wal_Levelphải được đặt thànhBản soi kèo bóng đá truoctranhoặc cao hơn để cho phép sử dụng các khe sao soi kèo bóng đá truoctran.

Về phía thuê bao, chỉ định có bao nhiêu nguồn gốc sao soi kèo bóng đá truoctran (xemChương 50) có thể được theo dõi đồng thời, hạn chế hiệu quả số lượng đăng ký sao soi kèo bóng đá truoctran logic có thể được tạo trên máy chủ. Đặt nó một giá trị thấp hơn số nguồn gốc sao soi kèo bóng đá truoctran được theo dõi hiện tại (được phản ánh trongPostgresql: tỷ lệ kèo bóng đá tối nay liệu: 11:, khôngPostgresql: tỷ lệ kèo bóng đá tối nay liệu:) sẽ ngăn soi kèo bóng đá truoctran chủ bắt đầu.

wal_keep_segments(Số nguyên)

Chỉ định số lượng tối thiểu của các phân đoạn tệp nhật ký trong quá khứ được giữ trongpg_walThư mục, trong trường hợp máy chủ dự phòng cần lấy chúng để phát trực tuyến sao soi kèo bóng đá truoctran. Mỗi phân đoạn thường là 16 megabyte.wal_keep_segmentsPhân đoạn, máy chủ gửi có thể xóa phân đoạn WAL vẫn cần thiết theo chế độ chờ, trong trường hợp đó kết nối sao soi kèo bóng đá truoctran sẽ bị chấm dứt. Kết quả cuối cùng cũng sẽ thất bại.

Điều này chỉ đặt số lượng phân đoạn tối thiểu được giữ lại trongpg_wal; Hệ thống có thể cần giữ lại nhiều phân đoạn hơn cho lưu trữ Wal hoặc để phục hồi từ trạm kiểm soát.wal_keep_segmentsbằng không (mặc định), hệ thống không giữ bất kỳ phân đoạn bổ sung nào cho mục đích chờ, vì vậy số lượng các phân đoạn WAL cũ có sẵn cho soi kèo bóng đá truoctran chủ dự phòng là một hàm của vị trí của điểm kiểm tra và trạng thái lưu trữ Wal trước đó. Tham số này chỉ có thể được đặt trongPostgreSql.confTệp hoặc trên dòng lệnh soi kèo bóng đá truoctran chủ.

wal_sender_timeout(Số nguyên)

Kết nối sao soi kèo bóng đá truoctran không hoạt động dài hơn số mili giây được chỉ định. Điều này rất hữu ích cho máy chủ gửi để phát hiện sự cố dự phòng hoặc ngừng hoạt động mạng.PostgreSql.confTệp hoặc trên dòng lệnh soi kèo bóng đá truoctran chủ. Giá trị mặc định là 60 giây.

Track_Commit_Timestamp(Boolean)

hồ sơ thời gian cam kết của các giao dịch. Tham số này chỉ có thể được đặt trongPostgreSql.confTệp hoặc trên dòng lệnh soi kèo bóng đá truoctran chủ. Giá trị mặc định làTẮT.

19.6.2. soi kèo bóng đá truoctran chủ chính

Các tham số này có thể được đặt trên máy chủ chính/chính là gửi dữ liệu sao soi kèo bóng đá truoctran đến một hoặc nhiều máy chủ dự phòng. Lưu ý rằng ngoài các tham số này,Wal_Levelphải được đặt một cách thích hợp trên soi kèo bóng đá truoctran chủ chính và cũng có thể bật lưu trữ wal tùy chọn (xemPhần 19.5.3). Các giá trị của các tham số này trên các soi kèo bóng đá truoctran chủ dự phòng là không liên quan, mặc dù bạn có thể muốn đặt chúng ở đó để chuẩn bị cho khả năng dự phòng trở thành chủ nhân.

synchronous_standby_names(chuỗi)

Chỉ định danh sách các soi kèo bóng đá truoctran chủ dự phòng có thể hỗ trợsao soi kèo bóng đá truoctran đồng bộ, như được mô tả trongPhần 26.2.8. Sẽ có một hoặc nhiều standbys đồng bộ hoạt động;Truyền phátTrongpg_stat_replicationXem). Chỉ định nhiều hơn một chế độ chờ đồng bộ có thể cho phép tính khả dụng và bảo vệ rất cao chống lại mất dữ liệu.

Tên của soi kèo bóng đá truoctran chủ dự phòng cho mục đích này làapplication_nameCài đặt dự phòng, như được đặt trong thông tin kết nối của dự phòng. Trong trường hợp chế độ chờ sao soi kèo bóng đá truoctran vật lý, điều này phải được đặt trongchính_conninfoCài đặt trongrecovery.conf; Mặc định làWalreceiver. Để sao soi kèo bóng đá truoctran logic, điều này có thể được đặt trong thông tin kết nối của đăng ký và nó mặc định là tên đăng ký.

Tham số này chỉ định danh sách các soi kèo bóng đá truoctran chủ dự phòng bằng cách sử dụng một trong các cú pháp sau:

[Đầu tiên]num_sync(standby_name[, ...])num_sync(standby_name[, ...])standby_name[, ...]

WHEREnum_synclà số lượng standbys đồng bộ mà các giao dịch cần phải chờ trả lời từ vàstandby_namelà tên của soi kèo bóng đá truoctran chủ dự phòng.Đầu tiênbất kỳChỉ định phương thức chọn StandBys đồng bộ từ các soi kèo bóng đá truoctran chủ được liệt kê.

Từ khóaĐầu tiên, kết hợp vớinum_sync, Chỉ định bản sao đồng bộ dựa trên ưu tiên và làm cho giao dịch cam kết chờ đợi cho đến khi các bản ghi Wal của họ được sao soi kèo bóng đá truoctran thànhnum_syncStandBys đồng bộ được chọn dựa trên các ưu tiên của họ. Ví dụ: cài đặt của3 đầu tiên (S1, S2, S3, S4)sẽ khiến mỗi cam kết chờ đợi câu trả lời từ ba standbys ưu tiên cao hơn được chọn từ soi kèo bóng đá truoctran chủ dự phòngS1, S2, S3S4. Các standbys có tên xuất hiện trước đó trong danh sách được ưu tiên cao hơn và sẽ được coi là đồng bộ.Đầu tiênlà tùy chọn.

Từ khóaany, kết hợp vớinum_sync, Chỉ định bản sao đồng bộ dựa trên đại biểu và làm cho giao dịch cam kết đợi cho đến khi các bản ghi Wal của họ được sao soi kèo bóng đá truoctran thànhít nhất num_syncStandbys được liệt kê. Ví dụ: cài đặt củaBất kỳ 3 (S1, S2, S3, S4)sẽ khiến mỗi cam kết tiến hành ngay khi ít nhất ba người đứng củaS1, S2, S3S4Trả lời.

Đầu tiênanykhông nhạy cảm trường hợp. Nếu các từ khóa này được sử dụng làm tên của soi kèo bóng đá truoctran chủ dự phòng, thì nóstandby_namephải được trích dẫn kép.

Cú pháp thứ ba đã được sử dụng trướcPostgreSQLPhiên bản 9.6 và vẫn được hỗ trợ. Nó giống như cú pháp đầu tiên vớiĐầu tiênnum_syncbằng 1. Ví dụ,Đầu tiên 1 (S1, S2)S1, S2Có cùng ý nghĩa: hoặcS1hoặcS2được chọn làm chế độ chờ đồng bộ.

Mục nhập đặc biệt*phù hợp với bất kỳ tên dự phòng nào.

Không có cơ chế để thực thi tính duy nhất của tên dự phòng. Trong trường hợp sao soi kèo bóng đá truoctran, một trong những standbys phù hợp sẽ được coi là ưu tiên cao hơn, mặc dù chính xác cái nào không xác định được.

Lưu ý

mỗistandby_namenên có dạng nhận dạng SQL hợp lệ, trừ khi đó là*. Bạn có thể sử dụng trình duyệt kép nếu cần thiết.standby_name23578_23673

Nếu không có tên dự phòng đồng bộ được chỉ định ở đây, thì sao soi kèo bóng đá truoctran đồng bộ không được bật và giao dịch cam kết sẽ không chờ sao soi kèo bóng đá truoctran. Đây là cấu hình mặc định.synchronous_committham số đếncục bộhoặcTẮT.

Tham số này chỉ có thể được đặt trongPostgreSql.confTệp hoặc trên dòng lệnh soi kèo bóng đá truoctran chủ.

VACUUM_DEFER_CLEANUP_AGE(Số nguyên)

Chỉ định số lượng giao dịch màNút hútHOTCập nhậtSẽ trì hoãn việc dọn dẹp các phiên bản hàng chết. Mặc định là các giao dịch bằng không, có nghĩa là các phiên bản Dead Row có thể được xóa càng sớm càng tốt, nghĩa là, ngay khi chúng không còn hiển thị với bất kỳ giao dịch mở nào.Phần 26.5. Điều này cho phép nhiều thời gian hơn cho các truy vấn trên dự phòng hoàn thành mà không phải chịu xung đột do dọn dẹp sớm các hàng.PostgreSql.confTệp hoặc trên dòng lệnh soi kèo bóng đá truoctran chủ.

Bạn cũng nên xem xét cài đặthot_standby_feedbackTrên soi kèo bóng đá truoctran chủ dự phòng thay thế cho việc sử dụng tham số này.

Điều này không ngăn chặn việc dọn dẹp các hàng chết đã đạt đến độ tuổi được chỉ định bởiold_snapshot_threshold.

19.6.3. soi kèo bóng đá truoctran chủ dự phòng

Các cài đặt này kiểm soát hành vi của máy chủ dự phòng sẽ nhận dữ liệu sao soi kèo bóng đá truoctran. Giá trị của chúng trên máy chủ chính là không liên quan.

hot_standby(Boolean)

Chỉ định xem bạn có thể kết nối và chạy truy vấn trong quá trình khôi phục hay không, như được mô tả trongPhần 26.5. Giá trị mặc định làtrên. Tham số này chỉ có thể được đặt ở soi kèo bóng đá truoctran chủ bắt đầu.

Max_Standby_archive_delay(Số nguyên)

27423_27620Phần 26.5.2. Max_Standby_archive_delayÁp dụng khi dữ liệu Wal đang được đọc từ WAL Archive (và do đó không phải là hiện tại). Mặc định là 30 giây.PostgreSql.confTệp hoặc trên dòng lệnh soi kèo bóng đá truoctran chủ.

Lưu ý rằngMax_Standby_archive_delaykhông giống như thời gian tối đa mà một truy vấn có thể chạy trước khi hủy; Thay vào đó, đó là tổng thời gian tối đa được phép áp dụng bất kỳ dữ liệu của một phân khúc WAL nào.

Max_Standby_Streaming_Delay(Số nguyên)

Khi Hot Standby hoạt động, tham số này xác định thời gian soi kèo bóng đá truoctran chủ dự phòng nên đợi trước khi hủy các truy vấn dự phòng xung đột với các mục WAL được ứng dụng, như được mô tả trongPhần 26.5.2. Max_Standby_Streaming_DelayÁp dụng khi nhận được dữ liệu Wal thông qua sao soi kèo bóng đá truoctran phát trực tuyến. Mặc định là 30 giây.PostgreSql.confTệp hoặc trên dòng lệnh soi kèo bóng đá truoctran chủ.

Lưu ý rằngMax_Standby_Streaming_Delaykhông giống như thời gian tối đa mà một truy vấn có thể chạy trước khi hủy; Thay vào đó, đây là tổng thời gian tối đa được phép áp dụng dữ liệu WAL sau khi nhận được từ soi kèo bóng đá truoctran chủ chính.

wal_receiver_status_interval(Số nguyên)

30317_30509PG_STAT_REPLICATIONXem. Chế độ chờ sẽ báo cáo vị trí nhật ký ghi lại cuối cùng mà nó đã viết, vị trí cuối cùng nó đã chuyển sang đĩa và vị trí cuối cùng mà nó đã áp dụng.PostgreSql.confTệp hoặc trên dòng lệnh soi kèo bóng đá truoctran chủ. Giá trị mặc định là 10 giây.

hot_standby_feedback(Boolean)

Chỉ định liệu chế độ chờ nóng có gửi phản hồi đến chế độ chờ chính hay ngược dòng về các truy vấn hiện đang thực hiện ở chế độ chờ. Tham số này có thể được sử dụng để loại bỏ việc hủy truy vấn do các bản ghi dọn dẹp, nhưng có thể gây ra cơ sở dữ liệu trên cơ sở chính cho một số khối lượng công việc.Wal_Receiver_Status_interval. Giá trị mặc định làTẮT. Tham số này chỉ có thể được đặt trongPostgreSql.confTệp hoặc trên dòng lệnh soi kèo bóng đá truoctran chủ.

Nếu sao soi kèo bóng đá truoctran xếp tầng được sử dụng, phản hồi được truyền ngược dòng cho đến khi cuối cùng nó đạt đến chính. Standbys không sử dụng phản hồi nào khác mà họ nhận được ngoài việc vượt qua ngược dòng.

Cài đặt này không ghi đè hành vi củaold_snapshot_thresholdTrên chính; Một ảnh chụp nhanh trên dự phòng vượt quá ngưỡng tuổi của chính có thể trở nên không hợp lệ, dẫn đến việc hủy bỏ các giao dịch trên dự phòng.old_snapshot_threshold32747_32920

wal_receiver_timeout(Số nguyên)

chấm dứt các kết nối sao soi kèo bóng đá truoctran không hoạt động dài hơn so với số mili giây được chỉ định. Điều này rất hữu ích cho máy chủ dự phòng nhận để phát hiện sự cố nút chính hoặc mất điện mạng.PostgreSql.confTệp hoặc trên dòng lệnh soi kèo bóng đá truoctran chủ. Giá trị mặc định là 60 giây.

Wal_retrieve_retry_interval(Số nguyên)

Chỉ định thời gian soi kèo bóng đá truoctran chủ dự phòng sẽ chờ đợi khi dữ liệu WAPG_WALhoặc Lưu trữ Wal) trước khi thử lại để truy xuất dữ liệu WAL. Tham số này chỉ có thể được đặt trongPostgreSql.confTệp hoặc trên dòng lệnh soi kèo bóng đá truoctran chủ. Giá trị mặc định là 5 giây.

Tham số này hữu ích trong các cấu hình trong đó một nút phục hồi cần kiểm soát lượng thời gian để chờ dữ liệu WAL mới có sẵn. Ví dụ, trong Recovery Recovery, có thể làm cho việc phục hồi phản ứng nhanh hơn trong việc phát hiện tệp nhật ký WAL mới bằng cách giảm giá trị của tham số này.

19.6.4. Người đăng ký

Các cài đặt này kiểm soát hành vi của thuê bao sao soi kèo bóng đá truoctran logic. Giá trị của chúng trên nhà xuất bản không liên quan.

Lưu ý rằngWal_Receiver_Timeout, Wal_Receiver_Status_intervalWal_retrieve_retry_intervalTham số cấu hình cũng ảnh hưởng đến các công nhân sao soi kèo bóng đá truoctran logic.

Max_Logical_Replication_Workers(int)

Chỉ định số lượng công nhân sao soi kèo bóng đá truoctran logic tối đa. Điều này bao gồm cả công nhân áp dụng và nhân viên đồng bộ hóa bàn.

Công nhân sao soi kèo bóng đá truoctran logic được lấy từ nhóm được xác định bởiMax_Worker_Processes.

Giá trị mặc định là 4. Tham số này chỉ có thể được đặt ở soi kèo bóng đá truoctran chủ bắt đầu.

MAX_SYNC_Workers_per_subcrip(Số nguyên)

Số lượng công nhân đồng bộ tối đa cho mỗi thuê bao. Tham số này kiểm soát lượng song song của bản soi kèo bóng đá truoctran dữ liệu ban đầu trong quá trình khởi tạo đăng ký hoặc khi các bảng mới được thêm vào.

Hiện tại, chỉ có thể có một công nhân đồng bộ hóa trên mỗi bảng.

Công nhân đồng bộ hóa được lấy từ nhóm được xác định bởiMax_Logical_Replication_Workers.

Giá trị mặc định là 2. Tham số này chỉ có thể được đặt trongPostgreSql.confTệp hoặc trên dòng lệnh soi kèo bóng đá truoctran chủ.