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

73.1. Bố cục tệp cơ sở dữ kèo bóng đá pháp#

Phần này mô tả định dạng lưu trữ ở cấp độ của các kèo bóng đá pháp và thư mục.

Theo truyền thống, các tệp cấu hình và dữ kèo bóng đá pháp được sử dụng bởi cụm cơ sở dữ kèo bóng đá pháp được lưu trữ cùng nhau trong thư mục dữ kèo bóng đá pháp của cụm, thường được gọi làPGDATA(sau tên của biến môi trường có thể được sử dụng để xác định nó). Một vị trí chung chopgdata/var/lib/pgsql/data. Nhiều cụm, được quản lý bởi các phiên bản máy chủ khác nhau, có thể tồn tại trên cùng một máy.

ThePGDATAThư mục chứa một số thư mục con và kèo bóng đá pháp điều khiển, như trongBảng 73.1. Ngoài các mục yêu cầu này, các kèo bóng đá pháp cấu hình cụmPostgreSql.conf, pg_hba.confpg_ident.confđược lưu trữ theo truyền thốngPGDATA, mặc dù có thể đặt chúng ở nơi khác.

Bảng 73.1. Nội dung củaPGDATA

Mục Mô tả
PG_Version Một kèo bóng đá pháp chứa số phiên bản chính củaPostgreSQL
cơ sở 11716_11769
current_logfiles Ghi kèo bóng đá pháp (các) kèo bóng đá pháp nhật ký hiện đang được ghi bởi trình thu thập ghi nhật ký
Toàn cầu thư mục con chứa các bảng toàn bộ cụm, chẳng hạn nhưpg_database
pg_commit_ts 12288_12347
pg_dynshmem SubDirectory chứa các kèo bóng đá pháp được sử dụng bởi hệ thống con bộ nhớ chia sẻ động
pg_logical Subdirectory chứa dữ kèo bóng đá pháp trạng thái để giải mã logic
pg_multixact 12822_12904
pg_notify Subdirectory chứa dữ kèo bóng đá pháp trạng thái nghe/thông báo
PG_REPLSLOT Subdirectory chứa dữ kèo bóng đá pháp khe sao chép
pg_serial thư mục con chứa thông tin về các giao dịch serializable cam kết
pg_snapshots thư mục con chứa ảnh chụp nhanh đã xuất
pg_stat thư mục con chứa các kèo bóng đá pháp cố định cho hệ thống con thống kê
PG_STAT_TMP thư mục con chứa các kèo bóng đá pháp tạm thời cho hệ thống con thống kê
pg_subtrans SubDirectory chứa dữ kèo bóng đá pháp trạng thái phụ
PG_TBLSPC Subdirectory chứa các liên kết tượng trưng với các không gian bảng
pg_twophase Subdirectory chứa các kèo bóng đá pháp trạng thái cho các giao dịch đã chuẩn bị
pg_wal Subdirectory chứa các kèo bóng đá pháp wal (ghi trước)
PG_XACT SubDirectory chứa dữ kèo bóng đá pháp trạng thái cam kết giao dịch
PostgreSql.Auto.conf Một kèo bóng đá pháp được sử dụng để lưu trữ các tham số cấu hình được đặt bởiATTER System
Postmaster.opts Một tập tin ghi các tùy chọn dòng lệnh mà máy chủ đã bắt đầu lần cuối với
Postmaster.pid Tệp khóa ghi lại ID quy trình Postmaster (PID) hiện tại, đường dẫn thư mục dữ kèo bóng đá pháp cụm, dấu thời gian bắt đầu của PostMaster, số cổng, đường dẫn thư mục ổ cắm miền Unix (có thể trống), đầu tiên nghe hợp lệ_address (địa chỉ IP hoặc*hoặc trống nếu không nghe trên TCP) và ID phân đoạn bộ nhớ được chia sẻ (kèo bóng đá pháp này không có mặt sau khi tắt máy chủ)

Đối với mỗi cơ sở dữ kèo bóng đá pháp trong cụm có một thư mục con trongPGDATA/Base, Được đặt tên theo OID của cơ sở dữ kèo bóng đá pháp trongpg_database. SubDirectory này là vị trí mặc định cho các tệp của cơ sở dữ kèo bóng đá pháp; Cụ thể, các danh mục hệ thống của nó được lưu trữ ở đó.

Lưu ý rằng các phần sau mô tả hành vi của tích hợpHeap PostgreSQL: Tài liệu:và BuildinPostgreSQL: Tài liệu:. Do tính chất mở rộng củaPostgreSQL, Các phương thức truy cập khác có thể hoạt động khác nhau.

Mỗi bảng và chỉ mục được lưu trữ trong một kèo bóng đá pháp riêng. Đối với các mối quan hệ thông thường, các kèo bóng đá pháp này được đặt tên theo bảng hoặc chỉ mụcFilenodeSố, có thể tìm thấy trongpg_ class.relfilenode. Nhưng đối với các mối quan hệ tạm thời, tên kèo bóng đá pháp thuộc MẫuTBBB_FFF, trong đóBBBlà ID phụ trợ của phần phụ trợ đã tạo kèo bóng đá pháp vàffflà số fileNode. Trong cả hai trường hợp, ngoài kèo bóng đá pháp chính (a/k/nĩa chính), mỗi bảng và chỉ mục có mộtBản đồ không gian trống(xemPhần 73.3), nơi lưu trữ thông tin về không gian trống có sẵn trong mối quan hệ. Bản đồ không gian trống được lưu trữ trong một kèo bóng đá pháp có tên với số fileNode cộng với hậu tố_FSM. Bảng cũng cóBản đồ hiển thị, được lưu trữ trong một ngã ba với hậu tố_VM, để theo dõi những trang nào được biết là không có bộ dữ kèo bóng đá pháp chết. Bản đồ hiển thị được mô tả thêm trongPhần 73.4. Các bảng và chỉ mục chưa được tính_init(xemPhần 73.5).

THẬN TRỌNG

Lưu ý rằng trong khi FileNode của bảng thường khớp với OID của nó, thì đây làkhôngnhất thiết là trường hợp; Một số hoạt động, nhưcắt ngắn, Reindex, cụmvà một số hình thức củaBảng thay đổi, có thể thay đổi kèo bóng đá pháp trong khi bảo tồn OID. Tránh giả sử rằng Filenode và bảng OID là như nhau. Ngoài ra, đối với các danh mục hệ thống nhất định bao gồmpg_ classchính nó,pg_ class.relfilenodechứa số không. Số lượng tệp thực tế của các danh mục này được lưu trữ trong cấu trúc dữ kèo bóng đá pháp cấp thấp hơn và có thể thu được bằng cách sử dụngpg_relation_filenode ()chức năng.

Khi bảng hoặc chỉ mục vượt quá 1 GB, nó được chia thành quy mô gigabytephân đoạn. Tên kèo bóng đá pháp của phân đoạn đầu tiên giống như FILENODE; Các phân đoạn tiếp theo được đặt tên là FILENODE.1, FILENODE.2, v.v ... Sắp xếp này tránh các vấn đề trên các nền tảng có giới hạn kích thước kèo bóng đá pháp. .--with-segsizeKhi xây dựngPostgreSQL.) Về nguyên tắc, bản đồ không gian tự do và bản đồ tầm nhìn cũng có thể yêu cầu nhiều phân đoạn, mặc dù điều này khó có thể xảy ra trong thực tế.

Một bảng có các cột có các mục có khả năng lớn sẽ có liên quanbánh mì nướngBảng, được sử dụng để lưu trữ ngoại tuyến các giá trị trường quá lớn để giữ trong các hàng bảng thích hợp.PG_Class.reltoastrelidLiên kết từ bảng đến nóPostgresql: TàiBảng, nếu có. Nhìn thấyPhần 73.2Để biết thêm thông tin.

Nội dung của các bảng và chỉ mục được thảo luận thêm trongPhần 73.6.

Không gian bảng làm cho kịch bản trở nên phức tạp hơn. Mỗi không gian bảng do người dùng xác định có một liên kết tượng trưng bên trongPGDATA/pg_tblspcThư mục, chỉ vào thư mục không gian bảng vật lý (tức là, vị trí được chỉ định trong không gian bảngTạo không gian bảnglệnh). Liên kết tượng trưng này được đặt tên theo OID của bảng. Bên trong thư mục không gian bảng vật lý có một thư mục con với tên phụ thuộc vàoPostgreSQLPhiên bản máy chủ, chẳng hạn nhưPG_9.0_201008051. (Lý do sử dụng thư mục con này là để các phiên bản liên tiếp của cơ sở dữ kèo bóng đá pháp có thể sử dụng cùngTạo không gian bảngGiá trị vị trí không có xung đột.) Trong thư mục con dành riêng cho phiên bản, có một thư mục con cho mỗi cơ sở dữ kèo bóng đá pháp có các phần tử trong không gian bảng, được đặt theo tên của cơ sở dữ kèo bóng đá pháp OID. Các bảng và chỉ mục được lưu trữ trong thư mục đó, sử dụng sơ đồ đặt tên FILENode. Thepg_defaultKhông gian bảng không được truy cập thông quaPG_TBLSPC, nhưng tương ứng vớiPGDATA/Base. Tương tự,pg_globalKhông gian bảng không được truy cập thông quaPG_TBLSPC, nhưng tương ứng vớiPGDATA/Global.

Thepg_relation_filepath ()Hàm hiển thị toàn bộ đường dẫn (liên quan đếnPGDATA) của bất kỳ mối quan hệ nào. Nó thường hữu ích để thay thế cho việc ghi nhớ nhiều quy tắc trên. Nhưng hãy nhớ rằng chức năng này chỉ đặt tên của phân đoạn đầu tiên của ngã ba chính của mối quan hệ - bạn có thể cần nối thêm một số phân đoạn và/hoặc_FSM, _VMhoặc_initĐể tìm tất cả các kèo bóng đá pháp được liên kết với mối quan hệ.

Tệp tạm thời (cho các hoạt động như sắp xếp nhiều dữ kèo bóng đá pháp hơn có thể phù hợp với bộ nhớ) được tạo trongPGDATA/base/pgsql_tmphoặc trong APGSQL_TMP22871_22940pg_defaultđược chỉ định cho chúng. Tên của một kèo bóng đá pháp tạm thời có biểu mẫuPGSQL_TMPPPP.nnn, trong đóPPPlà PID của phần phụ trợ sở hữu vànnnPhân biệt các kèo bóng đá pháp tạm thời khác nhau của phụ trợ đó.

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài kèo bóng đá pháp không chính xác, không khớp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài kèo bóng đá pháp.