PostgreSQL: kèo bóng đá hôm nay và ngày | |||
---|---|---|---|
prev | UP | Chương 51. kèo bóng đá cúp c2 thức Frontend/phụ trợ | NEXT |
Để bắt đầu kèo bóng đá cúp c2 phát trực tuyến, Frontend gửikèo bóng đá cúp c2Tham số trong thông báo khởi động. Giá trị boolean củaTRUENói với phần phụ trợ đi vào chế độ Walsender, trong đó một tập hợp nhỏ các lệnh kèo bóng đá cúp c2 có thể được ban hành thay vì các câu lệnh SQL. Chỉ có thể sử dụng giao thức truy vấn đơn giản trong chế độ Walsender. Các lệnh kèo bóng đá cúp c2 được ghi vào nhật ký máy chủ khilog_replication_commandsđược bật. Đi quacơ sở dữ liệuVì giá trị hướng dẫn Walsender kết nối với cơ sở dữ liệu được chỉ định trongdbnameTham số, sẽ cho phép kết nối được sử dụng để kèo bóng đá cúp c2 logic từ cơ sở dữ liệu đó.
Với mục đích kiểm tra các lệnh kèo bóng đá cúp c2, bạn có thể thực hiện kết nối kèo bóng đá cúp c2 quaPSQLhoặc bất kỳ ai kháclibpqCông cụ sử dụng với chuỗi kết nối bao gồmkèo bóng đá cúp c2Tùy chọn, ví dụ:
10567_10634
Tuy nhiên, việc sử dụng thường hữu ích hơnkèo bóng đá cúp c2 đá hom(để kèo bóng đá cúp c2 vật lý) hoặcPostgreSQL: Tài(để kèo bóng đá cúp c2 logic).
10883_10929
Yêu cầu máy chủ tự xác định. Máy chủ trả lời với một tập hợp kết quả của một hàng, chứa bốn trường:
Định danh hệ thống duy nhất xác định cụm. Điều này có thể được sử dụng để kiểm tra xem bản kèo bóng đá cúp c2 lưu cơ sở được sử dụng để khởi tạo dự phòng đến từ cùng một cụm.
ID dòng thời gian hiện tại. Cũng hữu ích để kiểm tra xem chế độ chờ có phù hợp với chủ không.
Vị trí xả XLOG hiện tại. Hữu ích để có được một vị trí đã biết trong nhật ký giao dịch nơi kèo bóng đá cúp c2 có thể bắt đầu.
Cơ sở dữ liệu được kết nối với hoặc NULL.
Yêu cầu máy chủ gửi qua Tệp Lịch sử Dòng thời gian cho Dòng thời gianTLI. Máy chủ trả lời với một tập hợp kết quả của một hàng, chứa hai trường. Trong khi các trường được dán nhãn làTextvàbytea, họ trả lại hiệu quả các byte thô, không có chuyển đổi thoát hoặc mã hóa:
Tên tệp của Tệp Lịch sử Dòng thời gian, ví dụ:00000002.history.
Nội dung của Tệp Lịch sử Dòng thời gian.
Tạo khe kèo bóng đá cúp c2 vật lý hoặc logic. Nhìn thấyPhần 26.2.6Để biết thêm về các khe kèo bóng đá cúp c2.
Tên của khe để tạo. Phải là một tên khe kèo bóng đá cúp c2 hợp lệ (xemPhần 26.2.6.1).
Tên của plugin đầu ra được sử dụng để giải mã logic (xemPhần 47.6).
Chỉ định rằng dự trữ khe kèo bóng đá cúp c2 vật lý nàyWalNgay lập tức. Nếu không thì,Walchỉ được bảo lưu khi kết nối từ máy khách kèo bóng đá cúp c2 phát trực tuyến.
Hướng dẫn máy chủ bắt đầu kèo bóng đá cúp c2 WAL, bắt đầu tại vị trí Walxxx/xxx. Nếu nhưDòng thời gianTùy chọn được chỉ định, kèo bóng đá cúp c2 bắt đầu trên dòng thời gianTLI; Mặt khác, dòng thời gian hiện tại của máy chủ được chọn. Máy chủ có thể trả lời với một lỗi, ví dụ nếu phần được yêu cầu của WAL đã được tái chế. Khi thành công, máy chủ trả lời bằng tin nhắn Copybothresponse, và sau đó bắt đầu kèo bóng đá cúp c2 tiếp Wal đến Frontend.
Nếu tên của khe được cung cấp quaslot_name, nó sẽ được cập nhật khi tiến trình kèo bóng đá cúp c2 để máy chủ biết phân đoạn wal nào và nếuhot_standby_feedbacklà trên đó các kèo bóng đá cúp c2 dịch, vẫn cần thiết theo dự phòng.
Nếu máy khách yêu cầu một dòng thời gian không phải là mới nhất nhưng là một phần của lịch sử của máy chủ, máy chủ sẽ truyền tất cả các wal trên dòng thời gian đó bắt đầu từ việc bắt đầu được yêu cầu chỉ đến điểm mà máy chủ chuyển sang dòng thời gian khác. Nếu máy khách yêu cầu phát trực tuyến chính xác vào cuối dòng thời gian cũ, máy chủ sẽ trả lời ngay với CommandComplete mà không cần vào chế độ kèo bóng đá cúp c2.
Sau khi phát trực tuyến tất cả các dòng thời gian không phải là cái mới nhất, máy chủ sẽ kết thúc phát trực tuyến bằng cách thoát khỏi chế độ kèo bóng đá cúp c2. Khi máy khách thừa nhận điều này bằng cách thoát khỏi chế độ kèo bóng đá cúp c2, máy chủ sẽ gửi một tập kết quả với một hàng và hai cột, cho biết dòng thời gian tiếp theo trong lịch sử của máy chủ này. Cột đầu tiên là ID dòng thời gian tiếp theo (loạiINT8) và cột thứ hai là vị trí WAL nơi chuyển đổi xảy ra (loạiText). Thông thường, vị trí chuyển đổi là kết thúc của Wal đã được kèo bóng đá cúp c2, nhưng có những trường hợp góc trong đó máy chủ có thể gửi một số Wal từ dòng thời gian cũ mà nó không được phát lại trước khi quảng cáo. Cuối cùng, máy chủ gửi tin nhắn CommandComplete và sẵn sàng chấp nhận lệnh mới.
Dữ liệu Wal được gửi dưới dạng một loạt các tin nhắn copyData. .
Xác định thông báo là dữ liệu Wal.
Điểm bắt đầu của dữ liệu WAL trong thông báo này.
Kết thúc hiện tại của Wal trên máy chủ.
Đồng hồ hệ thống của máy chủ tại thời điểm truyền, dưới dạng micro giây kể từ nửa đêm trên 2000-01-01.
Một phần của luồng dữ liệu Wal.
Một bản ghi WAL duy nhất không bao giờ được chia trên hai tin nhắn XLogData. Khi một bản ghi WAL vượt qua ranh giới trang Wal và do đó đã được chia bằng cách sử dụng các bản ghi tiếp tục, nó có thể được chia ở ranh giới trang. Nói cách khác, bản ghi WAL chính đầu tiên và các bản ghi tiếp tục của nó có thể được gửi trong các tin nhắn XLogData khác nhau.
17571_17618
Kết thúc hiện tại của Wal trên máy chủ.
Đồng hồ hệ thống của máy chủ tại thời điểm truyền, dưới dạng micro giây kể từ nửa đêm trên 2000-01-01.
1 có nghĩa là khách hàng nên trả lời tin nhắn này càng sớm càng tốt, để tránh mất thời gian chờ. 0 nếu không.
18018_18178
Xác định thông báo là cập nhật trạng thái người nhận.
Vị trí của wal byte cuối cùng + 1 nhận và ghi vào đĩa trong chế độ chờ.
Vị trí của wal byte cuối cùng + 1 được chuyển vào đĩa ở chế độ chờ.
Vị trí của wal byte cuối cùng + 1 được áp dụng trong chế độ chờ.
Đồng hồ hệ thống của khách hàng tại thời điểm truyền, dưới dạng micro giây kể từ nửa đêm trên 2000-01-01.
Nếu 1, máy khách yêu cầu máy chủ trả lời tin nhắn này ngay lập tức. Điều này có thể được sử dụng để ping máy chủ, để kiểm tra xem kết nối có còn lành mạnh không.
Xác định thông báo là thông báo phản hồi dự phòng nóng.
Đồng hồ hệ thống của khách hàng tại thời điểm truyền, dưới dạng micro giây kể từ nửa đêm trên 2000-01-01.
19408_19623
19655_19685
Hướng dẫn máy chủ bắt đầu phát trực tuyến WAL để kèo bóng đá cúp c2 logic, bắt đầu tại vị trí Walxxx/xxx. Máy chủ có thể trả lời với một lỗi, ví dụ nếu phần được yêu cầu của WAL đã được tái chế. Khi thành công, máy chủ trả lời bằng tin nhắn Copybothresponse, và sau đó bắt đầu kèo bóng đá cúp c2 tiếp Wal đến Frontend.
Các tin nhắn bên trong các tin nhắn copybothresponse có cùng định dạng được ghi lại choStart_Replication ... Vật lý.
Plugin đầu ra được liên kết với khe đã chọn được sử dụng để xử lý đầu ra để kèo bóng đá cúp c2.
Tên của khe cắm để truyền thay đổi từ. Tham số này được yêu cầu và phải tương ứng với một khe kèo bóng đá cúp c2 logic hiện có được tạo bằngcreate_Replication_Slotinlogicchế độ.
Vị trí Wal để bắt đầu kèo bóng đá cúp c2 tại.
Tên của một tùy chọn được chuyển cho plugin giải mã logic của khe.
Giá trị tùy chọn, dưới dạng hằng số chuỗi, được liên kết với tùy chọn được chỉ định.
Thả một khe kèo bóng đá cúp c2, giải phóng mọi tài nguyên phía máy chủ dành riêng. Nếu khe hiện đang được sử dụng bởi kết nối hoạt động, lệnh này không thành công.
Tên của khe cắm.
Hướng dẫn máy chủ bắt đầu phát trực tuyến bản kèo bóng đá cúp c2 lưu cơ sở. Hệ thống sẽ tự động được đặt ở chế độ kèo bóng đá cúp c2 lưu trước khi bản kèo bóng đá cúp c2 lưu được bắt đầu và được lấy ra khỏi nó khi bản kèo bóng đá cúp c2 lưu hoàn tất. Các tùy chọn sau được chấp nhận:
Đặt nhãn của bản kèo bóng đá cúp c2 lưu. Nếu không được chỉ định, nhãn kèo bóng đá cúp c2 lưu củakèo bóng đá cúp c2 lưu cơ sở22693_22785Standard_Conforming_StringsBật.
Thông tin yêu cầu cần thiết để tạo báo cáo tiến độ. Điều này sẽ gửi lại một kích thước gần đúng trong tiêu đề của mỗi không gian bảng, có thể được sử dụng để tính toán thời gian dọc theo luồng được thực hiện. Điều này được tính toán bằng cách liệt kê tất cả các kích thước tệp một lần trước khi chuyển giao thậm chí bắt đầu và có thể có tác động tiêu cực đến hiệu suất. Cụ thể, có thể mất nhiều thời gian hơn trước khi dữ liệu đầu tiên được truyền phát. Vì các tệp cơ sở dữ liệu có thể thay đổi trong quá trình kèo bóng đá cúp c2 lưu, kích thước chỉ gần đúng và cả có thể phát triển và thu nhỏ giữa thời gian xấp xỉ và gửi các tệp thực tế.
Yêu cầu điểm kiểm tra nhanh.
Bao gồm các phân đoạn Wal cần thiết trong bản kèo bóng đá cúp c2 lưu. Điều này sẽ bao gồm tất cả các tệp giữa bắt đầu và dừng kèo bóng đá cúp c2 lưu trong23852_23861Thư mục của thư mục cơ sở Tệp TAR.
Theo mặc định, bản kèo bóng đá cúp c2 lưu sẽ đợi cho đến khi phân đoạn Wal được yêu cầu cuối cùng được lưu trữ hoặc phát ra cảnh báo nếu lưu trữ nhật ký không được bật. Chỉ địnhnowaitVô hiệu hóa cả chờ và cảnh báo, khiến máy khách chịu trách nhiệm đảm bảo nhật ký cần thiết.
Giới hạn (bướm ga) Lượng dữ liệu tối đa được chuyển từ máy chủ sang máy khách trên mỗi đơn vị thời gian. Các đơn vị dự kiến là kilobyte mỗi giây. Nếu tùy chọn này được chỉ định, giá trị phải bằng 0 hoặc nó phải nằm trong phạm vi từ 32 KB đến 1 GB (bao gồm). Nếu số không được thông qua hoặc tùy chọn không được chỉ định, không có giới hạn nào được áp dụng cho việc chuyển nhượng.
Bao gồm thông tin về các liên kết tượng trưng có trong thư mụcPG_TBLSPCTrong một tệp có tênTablePace_Map. Tệp bản đồ không gian bảng bao gồm mỗi tên liên kết tượng trưng vì nó tồn tại trong thư mụcpg_tblspc/và đường dẫn đầy đủ của liên kết tượng trưng đó.
Khi khởi động kèo bóng đá cúp c2 lưu, máy chủ trước tiên sẽ gửi hai bộ kết quả thông thường, theo sau là một hoặc nhiều kết quả bản kèo bóng đá cúp c2.
Tập kết quả thông thường đầu tiên chứa vị trí bắt đầu của bản kèo bóng đá cúp c2 lưu, trong một hàng duy nhất với hai cột. Cột đầu tiên chứa vị trí bắt đầu được đưa ra ở định dạng XLOGRECPTR và cột thứ hai chứa ID dòng thời gian tương ứng.
Bộ kết quả thông thường thứ hai có một hàng cho mỗi không gian bảng. Các trường trong hàng này là:
oid của không gian bảng hoặc null nếu đó là thư mục cơ sở.
Đường dẫn đầy đủ của thư mục bảng không gian hoặc null nếu đó là thư mục cơ sở.
Kích thước gần đúng của không gian bảng, nếu báo cáo tiến độ đã được yêu cầu; Nếu không thì đó là NULL.
26190_26358pg_defaultvàpg_global. Dữ liệu trong kết quả bản quyền sẽ là định dạng TAR (theo"Định dạng trao đổi Ustar"được chỉ định trong Dump tiêu chuẩn POSIX 1003.1-2008) của nội dung bảng không gian, ngoại trừ hai khối các số 0 được chỉ định trong tiêu chuẩn bị bỏ qua. Sau khi dữ liệu TAR hoàn tất, một tập kết quả thông thường cuối cùng sẽ được gửi, chứa vị trí cuối Wal của bản kèo bóng đá cúp c2 lưu, ở cùng định dạng với vị trí bắt đầu.
Lưu trữ tar cho thư mục dữ liệu và mỗi không gian bảng sẽ chứa tất cả các tệp trong thư mục, bất kể chúng có phải làPostgreSQLTệp hoặc các tệp khác được thêm vào cùng một thư mục. Các tệp được loại trừ duy nhất là:
Postmaster.pid
Postmaster.opts
Các tệp tạm thời khác nhau được tạo trong quá trình hoạt động của máy chủ PostgreSQL
pg_xlog, bao gồm các thư mục con. Nếu kèo bóng đá cúp c2 lưu được chạy với các tệp WAL bao gồm, phiên bản tổng hợp củapg_xlogsẽ được bao gồm, nhưng nó sẽ chỉ chứa các tệp cần thiết để bản kèo bóng đá cúp c2 lưu hoạt động chứ không phải phần còn lại của nội dung.
PG_REPLSLOTđược kèo bóng đá cúp c2 dưới dạng thư mục trống.
Các tệp khác với các tệp và thư mục thông thường, chẳng hạn như liên kết tượng trưng và các tệp thiết bị đặc biệt, bị bỏ qua. (Liên kết tượng trưng trongPG_TBLSPCđược duy trì.)
Chế độ chủ sở hữu, nhóm và tệp được đặt nếu hệ thống tệp cơ bản trên máy chủ hỗ trợ nó.