Phiên bản được hỗ trợ:hiện tại(17)16 / 15 / 14 / 13
Phiên bản phát triển:18 / 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 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0
Tài kèo bóng đá pháp 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ế.

9.26. Chức năng quản trị kèo bóng đá pháp

Các kèo bóng đá pháp được mô tả trong phần này được sử dụng để kiểm soátPostgreSQLCài đặt.

9.26.1. Cài đặt cấu hình

Bảng 9-58Hiển thị các kèo bóng đá pháp có sẵn để truy vấn và thay đổi thời gian chạy

Bảng 9-58. Cài đặt cấu hình

tên Return Type Mô tả
current_sinsting (settings_name) Text Nhận giá trị hiện tại của cài đặt
set_config (settings_name, new_value, IS_LOCAL) Text Đặt tham số và trả về giá trị mới

hàmcurrent_sinstingmang lại giá trị hiện tại của cài đặtsettings_name. Nó tương ứng vớiSQLlệnhshow. Một ví dụ:

chọn current_sinsting ('datestyle');

set_configĐặt tham sốsettings_nameđếnnew_value. Nếu nhưIS_LOCALTRUE, ThefalseThay vào đó. kèo bóng đá phápset. MỘT

chọn Set_config ('log_statement_stats', 'off', false);

9.26.2. Tín hiệu máy chủ

Các kèo bóng đá pháp được hiển thị trongBảngGửi tín hiệu điều khiển đến các quy trình máy chủ khác. Sử dụng

Bảng 9-59. kèo bóng đá pháp báo hiệu máy chủ

tên Loại trả lại Mô tả
PG_CANCEL_BACKEND (PID int) Boolean Hủy truy vấn hiện tại của phụ trợ. Bạn có thể thực thi
pg_reload_conf () Boolean gây ra các quy trình máy chủ để tải lại
PG_ROTATE_LOGFILE () Boolean Tệp nhật ký của máy chủ xoay
pg_terminate_backend (PID int) Boolean Chấm dứt phụ trợ. Bạn có thể thực hiện điều này chống lại

Mỗi kèo bóng đá pháp này trả vềTRUENếu thành công vàSainếu không.

PG_CANCEL_BACKENDpg_terminate_backendGửi tín hiệuSiginthoặcsigtermtương ứng) cho các quy trình phụ trợPIDCộtpg_stat_activityXem hoặc bởiPostgresCác quy trình trênPSTrên Unix hoặcTrình quản lý tác vụtrênWindows). Vai trò của mộtusenameCột củapg_stat_activityXem.

PG_RELOAD_CONF16716_16731SIGHUPTín hiệu cho máy chủ,

PG_ROTATE_LOGFILETín hiệu

9.26.3. Kiểm soát sao lưu

Các kèo bóng đá pháp được hiển thị trongBảngHỗ trợ thực hiện các bản sao lưu trực tuyến. Những kèo bóng đá pháp nàypg_xlog_location_diff).

Bảng 9-60. kèo bóng đá pháp điều khiển sao lưu

tên Return Type Mô tả
pg_create_restore_point (tên Text) Text Tạo một điểm được đặt tên để thực hiện khôi phục
Text Nhận vị trí chèn nhật ký giao dịch hiện tại
Text Nhận vị trí ghi nhật ký giao dịch hiện tại
pg_start_backup (nhãn Text[, Fast Boolean]) Text Chuẩn bị để thực hiện sao lưu trực tuyến (bị hạn chế
pg_stop_backup () Text Kết thúc việc thực hiện sao lưu trực tuyến (bị hạn chế
pg_switch_xlog () Text Công tắc lực sang tệp nhật ký giao dịch mới
pg_xlogfile_name (Vị trí Text) Text Chuyển đổi chuỗi vị trí nhật ký giao dịch thành tệp
pg_xlogfile_name_offset (Vị trí Text) Text, Số nguyên Chuyển đổi chuỗi vị trí nhật ký giao dịch thành tệp
pg_xlog_location_diff (Vị trí Text, Vị trí Text) Số Tính toán sự khác biệt giữa hai giao dịch

pg_start_backupChấp nhận mộtBackup_Label) vào dữ kèo bóng đá pháp của cụm cơ sở dữ kèo bóng đá pháp

postgres =# chọn pg_start_backup ('label_goes_here');

Có một tham số thứ hai tùy chọn loạiBoolean. Nếu nhưTRUE, Nópg_start_backupcàng nhanh càng tốt. Cái này

pg_stop_backupLoại bỏpg_start_backup, và tạo ra một lịch sử sao lưupg_start_backup, Sự khởi đầu và kết thúc

pg_switch_xlogDi chuyển đếnpg_switch_xlogKhông làm gì và

pg_create_restore_pointTạo bản ghi nhật ký giao dịch được đặt tên có thể được sử dụng làmrecovery_target_nameĐể chỉ định điểm mà sự phục hồi sẽ tiến hành. Tránh xa

Hiển thị vị trí ghi nhật ký giao dịch hiện tại trong cùng mộtHiển thị"logic"Kết thúc giao dịch

Bạn có thể sử dụngpg_xlogfile_name_offsetĐể trích xuất

postgres =# select * từ pg_xlogfile_name_offset (pg_stop_backup ());

Tương tự,PG_XLOGFILE_NAMETrích xuất chỉ tên tệp nhật ký giao dịch. Khi được cho

pg_xlog_location_diffTính toán sự khác biệt về byte giữa hai nhật ký giao dịchPG_STAT_REPLICATIONHoặc một số kèo bóng đá pháp được hiển thịBảngĐể có được độ trễ sao chép.

Để biết chi tiết về việc sử dụng đúng các kèo bóng đá pháp này, xemPhần 24.3.

9.26.4. Kiểm soát phục hồi

Các kèo bóng đá pháp được hiển thị trongBảngCung cấp thông tin về trạng thái hiện tại của

Bảng 9-61. Các kèo bóng đá pháp thông tin phục hồi

tên Return Type Mô tả
pg_is_in_recovery () bool Đúng nếu phục hồi vẫn đang được tiến hành.
pg_last_xlog_receive_location () Text Nhận vị trí nhật ký giao dịch cuối cùng nhận được và
pg_last_xlog_replay_location () Text Nhận vị trí nhật ký giao dịch cuối cùng được phát lại trong thời gian
pg_last_xact_replay_timestamp () dấu thời gian với múi giờ Nhận tem thời gian của giao dịch cuối cùng được phát lại trong thời gian

Các hàm được hiển thị trongBảngKiểm soát tiến trình phục hồi. Những kèo bóng đá pháp này có thể

Bảng 9-62. kèo bóng đá pháp điều khiển khôi phục

tên Return Type Mô tả
bool Đúng nếu phục hồi được tạm dừng.
pg_xlog_replay_pause () void Phục hồi tạm dừng ngay lập tức.
pg_xlog_replay_resume () void Khởi động lại phục hồi nếu nó bị tạm dừng.

Trong khi phục hồi được tạm dừng không có thay đổi cơ sở dữ kèo bóng đá pháp nào nữa

Nếu bản sao phát trực tuyến bị vô hiệu hóa, trạng thái tạm dừng có thể

9.26.5. Ảnh chụp nhanh

PostgreSQLCho phép cơ sở dữ kèo bóng đá phápSnapshotXác định dữ kèo bóng đá pháp nào có thể hiển thịBắt đầu giao dịchCác lệnh, vì vậy

Để giải quyết vấn đề này,POSTGRESQLCho phép giao dịchxuấtẢnh chụp nhanh mà nó đang sử dụng. BẰNGNhậpẢnh chụp nhanh của nó,

Ảnh chụp nhanh được xuất vớiPG_EXPORT_SNAPSHOTHàm, hiển thị trongBảng 9-63và nhập vớiĐặt giao dịchlệnh.

Bảng 9-63. Snapshot đồng bộ hóa

tên Return Type Mô tả
pg_export_snapshot () Text Lưu ảnh chụp nhanh hiện tại và trả lại

hàmPG_EXPORT_SNAPSHOTLưu ảnh chụp nhanh hiện tạiTextChuỗi xác địnhĐọc cam kếtGiao dịch, kể từ trongĐọc lặp lạivà mức độ cô lập cao hơn,Chuẩn bị.

xemtỷ lệ kèo bóngĐể biết chi tiết về cách sử dụng ảnh chụp nhanh đã xuất.

9.26.6. Quản lý đối tượng cơ sở dữ kèo bóng đá pháp

Các kèo bóng đá pháp được hiển thị trongBảng 9-64Tính cách sử dụng không gian đĩa của các đối tượng cơ sở dữ kèo bóng đá pháp.

Bảng 9-64. Chức năng kích thước đối tượng cơ sở dữ kèo bóng đá pháp

tên Return Type Mô tả
pg_column_size (any) int Số byte được sử dụng để lưu trữ một giá trị cụ thể
pg_database_size (oid) BIGINT Không gian đĩa được sử dụng bởi cơ sở dữ kèo bóng đá pháp với quy định
pg_database_size (tên) BIGINT Không gian đĩa được sử dụng bởi cơ sở dữ kèo bóng đá pháp với quy định
pg_indexes_size (RegClass) Bigint Tổng dung lượng đĩa được sử dụng bởi các chỉ mục được gắn vào
pg_relation_size (Mối quan hệ RegClass, Fork Text) Bigint Không gian đĩa được sử dụng bởi ngã ba được chỉ định ('Main', 'FSM', 'VM'hoặc'init') của bảng được chỉ định hoặc
pg_relation_size (Mối quan hệ RegClass) Bigint tốc ký chopg_relation_size (..., 'chính')
pg_size_pretty (BIGINT) Text Chuyển đổi kích thước bằng byte được biểu thị dưới dạng 64 bit
pg_size_pretty (Số) Text Chuyển đổi kích thước bằng byte được biểu thị dưới dạng số
pg_table_size (RegClass) Bigint Không gian đĩa được sử dụng bởi bảng được chỉ định, không bao gồm
pg_tablespace_size (oid) Bigint không gian đĩa được sử dụng bởi không gian bảng với
pg_tablespace_size (tên) Bigint không gian đĩa được sử dụng bởi không gian bảng với
pg_total_relation_size (RegClass) Bigint Tổng dung lượng đĩa được sử dụng bởi bảng được chỉ định,tỷ lệ kèo bóngData

pg_column_sizeHiển thị không gian

PG_TOTAL_RELATION_SIZE​​Chấp nhậnpg_table_size + pg_indexes_size.

pg_table_sizeChấp nhận OID

pg_indexes_sizeChấp nhận

pg_database_sizepg_tablespace_sizeChấp nhận OIDpg_database_size, bạn phải cókết nốiQuyền trên cơ sở dữ kèo bóng đá pháp được chỉ địnhpg_tablespace_size, bạn phải cóTạoQuyền trên không gian bảng được chỉ định,

pg_relation_sizeChấp nhậnPG_TOTAL_RELATION_SIZEhoặcpg_table_size, tổng hợp

  • 'Main'Trả về kích thước của

  • 'FSM'Trả về kích thước củaPhần) được liên kết với mối quan hệ.

  • 'VM'Trả về kích thước củaPhần) được liên kết với mối quan hệ.

  • 'init'Trả về kích thước củaPhần 56.5) được liên kết với

pg_size_prettycó thể được sử dụng để

Các hàm trên hoạt động trên các bảng hoặc chỉ mục chấp nhậnRegClassĐối số, đơn giản làPG_ClassDanh mục kèo bóng đá pháp. Bạn không cần phảiRegClassBộ chuyển đổi đầu vào của loại dữ kèo bóng đá pháp sẽ thực hiệnSQLTên, chuỗi sẽ được chuyển đổi thành

Nếu OID không đại diện cho một đối tượng hiện có là

Các kèo bóng đá pháp được hiển thị trongBảngHỗ trợ xác định các tệp đĩa cụ thể

Bảng 9-65. Vị trí đối tượng cơ sở dữ kèo bóng đá pháp

tên Return Type Mô tả
pg_relation_filenode (Mối quan hệ RegClass) oid FILENODE Số của quan hệ được chỉ định
pg_relation_filepath (Mối quan hệ RegClass) Text Tên đường dẫn tệp của quan hệ được chỉ định

PG_RELATION_FILENODEChấp nhận"Filenode"SốPhần 56.1Để biết thêmPG_Class.relfilenode, nhưng đối với các danh mục kèo bóng đá pháp nhất địnhrelfilenodelà bằng không và điều này

PG_RELATION_FILEPATHISpg_relation_filenode,,PGDATA) của mối quan hệ.

9.26.7. Truy cập tệp chung

Các kèo bóng đá pháp được hiển thị trongBảngCung cấp quyền truy cập gốc vào các tệp trên máy lưu trữlog_directorycó thể được truy cập.log_directoryCài đặt cấu hình cho các tệp nhật ký. Sử dụng các kèo bóng đá pháp này là

Bảng 9-66. kèo bóng đá pháp truy cập tệp chung

tên Return Type Mô tả
PG_LS_DIR (dirname Text) Setof Text Liệt kê nội dung của thư mục
PG_READ_FILE (FileName Text[,Offset Bigint, LEGN Bigint]) Text Trả về nội dung của tệp văn bản
pg_read_binary_file (FileName Text[,Offset Bigint, LEGN Bigint]) bytea Trả về nội dung của tệp
pg_stat_file (FileName Text) Record Trả về thông tin về một tệp

PG_LS_DIRTrả về tất cả".""..".

PG_READ_FILETrả về một phần của AOffset, trở lại nhiều nhấtlengthbyte (ít hơn nếu phần cuối của tệp làOffsetISOffsetlengthđược bỏ qua, toàn bộ tệp được trả về. Các byte đọc từ

PG_READ_BINARY_FILElà tương tựPG_READ_FILE, ngoại trừbyteaGiá trị; Theo đó, khôngConvert_fromHàm này

Chọn Convert_From (pg_read_binary_file ('file_in_utf8.txt'), 'utf8');

PG_STAT_FILETrả về một bản ghiBooleanCho biết đó có phải là thư mục không.

Chọn * từ pg_stat_file ('tên tệp');

9.26.8. Khóa tư vấn

Các kèo bóng đá pháp được hiển thị trongBảngQuản lý khóa tư vấn. Để biết chi tiết về việc sử dụng đúngPhần 13.3.4.

Bảng 9-67. kèo bóng đá pháp khóa tư vấn

tên Return Type Mô tả
pg_advisory_lock (Key Bigint) void Có được khóa tư vấn cấp phiên độc quyền
pg_advisory_lock (Key1 int, key2 int) void Có được khóa tư vấn cấp phiên độc quyền
pg_advisory_lock_shared (Key Bigint) void Có được khóa tư vấn cấp phiên chia sẻ
pg_advisory_lock_shared (key1 int, key2 int) void Có được khóa tư vấn cấp phiên chia sẻ
pg_advisory_unlock (Key BIGINT) Boolean Phát hành tư vấn cấp phiên độc quyền
pg_advisory_unlock (key1 int, key2 int) Boolean Phát hành tư vấn cấp phiên độc quyền
pg_advisory_unlock_all () void Phát hành tất cả các khóa tư vấn cấp phiên được tổ kèo bóng đá pháp bởi
pg_advisory_unlock_shared (Key Bigint) Boolean Phát hành khóa tư vấn cấp phiên chia sẻ
pg_advisory_unlock_shared (key1 int, key2 int) Boolean Phát hành khóa tư vấn cấp phiên chia sẻ
pg_advisory_xact_lock (Key Bigint) void Nhận tư vấn cấp độ giao dịch độc quyền
pg_advisory_xact_lock (key1 int, key2 int) void Nhận tư vấn cấp độ giao dịch độc quyền
pg_advisory_xact_lock_shared (Key Bigint) void có được khóa tư vấn cấp giao dịch chia sẻ
pg_advisory_xact_lock_shared (Key1 int, key2 int) void Có được khóa tư vấn cấp giao dịch chia sẻ
pg_try_advisory_lock (Key Bigint) Boolean có được khóa tư vấn cấp phiên độc quyền nếu
pg_try_advisory_lock (key1 int, key2 int) Boolean có được khóa tư vấn cấp phiên độc quyền nếu
pg_try_advisory_lock_shared (Key Bigint) Boolean Nhận khóa tư vấn cấp phiên chia sẻ nếu
pg_try_advisory_lock_shared (key1 int, key2 int) Boolean có được khóa tư vấn cấp phiên chia sẻ nếu
pg_try_advisory_xact_lock (Key BIGINT) Boolean có được khóa tư vấn cấp giao dịch độc quyền nếu
pg_try_advisory_xact_lock (key1 int, key2 int) Boolean có được khóa tư vấn cấp giao dịch độc quyền nếu
pg_try_advisory_xact_lock_shared (Key BIGINT) Boolean Có được khóa tư vấn cấp giao dịch chia sẻ nếu
pg_try_advisory_xact_lock_shared (Key1 int, key2 int) Boolean Có được khóa tư vấn cấp giao dịch chia sẻ nếu

pg_advisory_lockkhóa an

pg_advisory_lock_sharedhoạt độngpg_advisory_lock,,

pg_try_advisory_lockISpg_advisory_lock,,TRUEhoặc trả lạiSaiNếu khóa không thể có được

pg_try_advisory_lock_sharedhoạt động giống nhưpg_try_advisory_lock, ngoại trừ nó cố gắng

pg_advisory_unlockWillTRUENếu khóa làSai, và ngoài ra, cảnh báo SQL

pg_advisory_unlock_sharedhoạt động giống nhưpg_advisory_unlock, ngoại trừ nó phát hành a

pg_advisory_unlock_allWill

pg_advisory_xact_lockhoạt độngpg_advisory_lock,

pg_advisory_xact_lock_sharedhoạt động giống nhưpg_advisory_lock_shared, ngoại trừ khóa là

pg_try_advisory_xact_lockhoạt động giống nhưpg_try_advisory_lock, ngoại trừ khóa, nếu

pg_try_advisory_xact_lock_sharedhoạt độngpg_try_advisory_lock_shared, Ngoại trừ khóa,