PostgreSQLsoi kèo bóng đá truoctran chủ
PG_ReceiveWal
[Tùy chọn
...]
PG_ReceiveWalđược sử dụng để phát trực tuyến nhật ký ghi từ khi chạyPostgreSQLCụm. Nhật ký viết ghi được phát trực tuyến bằng giao thức sao chép phát trực tuyến và được ghi vào thư mục soi kèo bóng đá truoctran tệp cục bộ.Phần 25.3).
PG_ReceiveWalTruyền nhật ký ghi theo thời gian thực khi nó được tạo trên soi kèo bóng đá truoctran chủ và không chờ các phân đoạn hoàn thành nhưArchive_Commandsoi kèo bóng đá truoctran. Vì lý do này, soi kèo bóng đá truoctran cần thiết phải đặtarchive_timeoutKhi sử dụngPG_ReceiveWal.
Không giống như soi kèo bóng đá truoctran thu wAL của soi kèo bóng đá truoctran chủ dự phòng PostgreSQL,PG_ReceiveWalTheo mặc định, chỉ có dữ liệu WAL khi tệp WAL được đóng. Tùy chọn-Synchronous
phải được chỉ định để xóa dữ liệu WAL trong thời gian thực. TừPG_ReceiveWalsoi kèo bóng đá truoctran áp dụng Wal, bạn soi kèo bóng đá truoctran nên cho phép nó trở thành một chế độ chờ đồng bộ khisynchronous_commitbằngremote_apply
. Nếu có, nó sẽ dường như là một dự phòng soi kèo bóng đá truoctran bao giờ bắt kịp và sẽ khiến giao dịch cam kết bị chặn.synchronous_standby_nameshoặc chỉ địnhapplication_name
choPG_ReceiveWalsoi kèo bóng đá truoctran khớp với nó hoặc thay đổi giá trị củasynchronous_commit
đến một cái gì đó khác vớiremote_apply
.
Nhật ký ghi lại được phát trực tiếp trên một thông thườngPostgreSQLKết nối và sử dụng giao thức sao chép. Kết nối phải được thực hiện với một siêu người dùng hoặc người dùng cósao chép
Quyền (xemPhần 21.2) vàpg_hba.conf
Phải cho phép kết nối sao chép. soi kèo bóng đá truoctran chủ cũng phải được cấu hình vớiMAX_WAL_SENDERSĐặt đủ cao để để lại ít nhất một phiên có sẵn cho luồng.
Điểm bắt đầu của luồng nhật ký ghi lại được tính toán khiPG_ReceiveWalbắt đầu:
11479_11662
11722_11863INEMENT_SYSTEM
lệnh.
Nếu kết nối bị mất hoặc nếu nó soi kèo bóng đá truoctran thể được thiết lập ban đầu, với lỗi soi kèo bóng đá truoctran gây tử vong,PG_ReceiveWalsẽ thử lại kết nối vô thời hạn và tái lập trình phát trực tuyến càng sớm càng tốt. Để tránh hành vi này, hãy sử dụng-N
tham số.
Trong trường hợp soi kèo bóng đá truoctran có lỗi gây tử vong,PG_ReceiveWalsẽ chạy cho đến khi chấm dứt bởiSigintTín hiệu (Control+C).
-DThư mục
--Directory =Thư mục
Thư mục để ghi đầu ra vào.
Tham số này là bắt buộc.
-eLSN
--endpos =LSN
Tự động dừng sao chép và thoát với trạng thái thoát thông thường 0 khi nhận được đạt đến LSN được chỉ định.
Nếu có bản ghi với LSN chính xác bằngLSN
, bản ghi sẽ được xử lý.
--if-not-exist
soi kèo bóng đá truoctran lỗi khi--Create-slot
được chỉ định và một khe có tên được chỉ định đã tồn tại.
-N
--no-loop
soi kèo bóng đá truoctran lặp lại các lỗi kết nối. Thay vào đó, hãy thoát ra ngay với lỗi.
--no-sync
Tùy chọn này gây raPG_ReceiveWal
Để soi kèo bóng đá truoctran buộc dữ liệu WAL được chuyển vào đĩa. Điều này nhanh hơn, nhưng có nghĩa là một sự cố hệ điều hành tiếp theo có thể khiến các phân đoạn WAL bị hỏng.
Tùy chọn này soi kèo bóng đá truoctran tương thích với-Synchronous
.
-SKhoảng
--status-interval =Khoảng
Chỉ định số giây giữa các gói trạng thái được gửi lại cho soi kèo bóng đá truoctran chủ. Điều này cho phép theo dõi dễ dàng hơn về tiến trình từ soi kèo bóng đá truoctran chủ.
-Sslotname
-slot =slotname
Yêu cầuPG_ReceiveWalĐể sử dụng khe sao chép hiện có (xemPhần 26.2.6). Khi tùy chọn này được sử dụng,PG_ReceiveWalsẽ báo cáo vị trí xả vào soi kèo bóng đá truoctran chủ, cho biết khi mỗi phân đoạn đã được đồng bộ hóa với đĩa để soi kèo bóng đá truoctran chủ có thể loại bỏ phân đoạn đó nếu không cần thiết.
Khi soi kèo bóng đá truoctran khách sao chép củaPG_ReceiveWalđược cấu hình trên soi kèo bóng đá truoctran chủ dưới dạng chế độ chờ đồng bộ, sau đó sử dụng khe sao chép sẽ báo cáo vị trí Flush cho soi kèo bóng đá truoctran chủ, nhưng chỉ khi đóng tệp WAL. Do đó, cấu hình đó sẽ khiến các giao dịch trên chính chờ đợi trong một thời gian dài và hiệu quả không hoạt động thỏa đáng.-Đồng bộ hóa
(xem bên dưới) phải được chỉ định ngoài việc làm cho công việc này chính xác.
-Đồng bộ hóa
Xóa dữ liệu WAL vào đĩa ngay sau khi nhận được. Cũng gửi gói trạng thái trở lại soi kèo bóng đá truoctran chủ ngay sau khi xả, bất kể--Status-interval
.
Tùy chọn này sẽ được chỉ định nếu soi kèo bóng đá truoctran khách sao chép củaPG_RECEIVEWALđược cấu hình trên soi kèo bóng đá truoctran chủ dưới dạng chế độ chờ đồng bộ, để đảm bảo rằng phản hồi kịp thời được gửi đến soi kèo bóng đá truoctran chủ.
-V
--Verbose
Cho phép chế độ Verbose.
-zcấp
--compress =Cấp
Cho phép nén GZIP của nhật ký ghi và chỉ định mức nén (0 đến 9, 0 soi kèo bóng đá truoctran nén và 9 là nén tốt nhất). Hậu tố.gz
sẽ tự động được thêm vào tất cả soi kèo bóng đá truoctran tên tệp.
Tùy chọn dòng lệnh sau đây kiểm soát soi kèo bóng đá truoctran tham số kết nối cơ sở dữ liệu.
-DConnstr
--dbname =Connstr
Chỉ định các tham số được sử dụng để kết nối với soi kèo bóng đá truoctran chủ, dưới dạngchuỗi kết nối; Chúng sẽ ghi đè bất kỳ tùy chọn dòng lệnh xung đột nào.
Tùy chọn được gọi là--DBNAME
Để thống nhất với soi kèo bóng đá truoctran ứng dụng khách khác, nhưng vìPG_ReceiveWalsoi kèo bóng đá truoctran kết nối với bất kỳ cơ sở dữ liệu cụ thể nào trong cụm, tên cơ sở dữ liệu trong chuỗi kết nối sẽ bị bỏ qua.
-Hsoi kèo bóng đá truoctran chủ
--host =host
Chỉ định tên soi kèo bóng đá truoctran chủ của soi kèo bóng đá truoctran mà soi kèo bóng đá truoctran chủ đang chạy. Nếu giá trị bắt đầu bằng một dấu gạch chéo, nó được sử dụng làm thư mục cho ổ cắm miền UNIX.PGHOST
Biến môi trường, nếu được đặt, khác là một kết nối ổ cắm miền Unix được thử.
-PCổng
--Port =Cổng
Chỉ định cổng TCP hoặc Tiện ích mở rộng tệp ổ cắm tên miền UNIX cục bộ mà soi kèo bóng đá truoctran chủ đang nghe cho các kết nối. Mặc định làPGPORT
Biến môi trường, nếu được đặt hoặc mặc định được biên dịch.
-utên người dùng
--Username =Tên người dùng
Tên người dùng để kết nối AS.
-W
--no-password
Không bao giờ đưa ra lời nhắc mật khẩu. Nếu soi kèo bóng đá truoctran chủ yêu cầu xác thực mật khẩu và mật khẩu không có sẵn bằng các phương tiện khác như.pgass
Tệp, nỗ lực kết nối sẽ soi kèo bóng đá truoctran thành công. Tùy chọn này có thể hữu ích trong các công việc và tập lệnh hàng loạt trong đó soi kèo bóng đá truoctran có người dùng nào để nhập mật khẩu.
-W
--password
ForcePG_ReceiveWalĐể nhắc mật khẩu trước khi kết nối với cơ sở dữ liệu.
Tùy chọn này soi kèo bóng đá truoctran bao giờ cần thiết, vìpg_receivewalSẽ tự động nhắc mật khẩu nếu soi kèo bóng đá truoctran chủ yêu cầu xác thực mật khẩu. Tuy nhiên,pg_receivewalSẽ lãng phí một nỗ lực kết nối để tìm ra rằng soi kèo bóng đá truoctran chủ muốn có mật khẩu. Trong một số trường hợp, nó đáng để gõ-W
Để tránh nỗ lực kết nối thêm.
PG_ReceiveWalCó thể thực hiện một trong hai hành động sau để kiểm soát soi kèo bóng đá truoctran khe sao chép vật lý:
--Create-slot
Tạo một khe sao chép vật lý mới với tên được chỉ định trong--slot
, sau đó thoát.
--drop-slot
Thả khe sao chép với tên được chỉ định trong--slot
, sau đó thoát.
soi kèo bóng đá truoctran tùy chọn khác cũng có sẵn:
-V
--Version
In ThePG_ReceiveWalPhiên bản và Thoát.
-?
--Help
Hiển thị trợ giúp vềPG_ReceiveWalĐối số dòng lệnh và thoát.
PG_ReceiveWalsẽ thoát với trạng thái 0 khi bị chấm dứt bởiSigintTín hiệu. (Đó là cách thông thường để kết thúc nó. Do đó nó soi kèo bóng đá truoctran phải là lỗi.)
Tiện ích này, giống như hầu hết soi kèo bóng đá truoctran khácPostgreSQLTiện ích, sử dụng soi kèo bóng đá truoctran biến môi trường được hỗ trợ bởilibpq(xemPhần 34.14).
Khi sử dụngPG_ReceiveWalthay vìArchive_CommandLà phương thức sao lưu WAL chính, nên sử dụng các khe sao chép. Mặt khác, soi kèo bóng đá truoctran chủ được tự do tái chế hoặc xóa các tệp nhật ký ghi trước khi chúng được sao lưu, vì nó không có bất kỳ thông tin nào, từArchive_Commandhoặc các khe sao chép, về việc luồng Wal đã được lưu trữ bao xa. Tuy nhiên, lưu ý rằng một khe sao chép sẽ lấp đầy không gian đĩa của soi kèo bóng đá truoctran chủ nếu người nhận không theo kịp việc tìm nạp dữ liệu WAL.
PG_ReceiveWalsẽ bảo tồn quyền của nhóm trên soi kèo bóng đá truoctran tệp WAL nhận được nếu soi kèo bóng đá truoctran quyền nhóm được bật trên cụm nguồn.
Để phát trực tuyến nhật ký ghi từ soi kèo bóng đá truoctran chủ tạiMyDbserver
và lưu trữ nó trong thư mục cục bộ/usr/local/pgsql/archive
:
$