{"kind": "storage", "major": "18", "item": {"slug": "fork-init", "name": "init fork", "name_zh": "", "category": "\u5173\u7cfb\u5206\u53c9", "summary": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "aliases": [], "content_hash": "b0d579d2af1316ada7d74ceaf91f8abc794db8cf139e9c8eb678a7fa6930811e", "versions": {"10": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "related": [{"url": "/wiki/storage/storage-file-layout/?v=10", "label": "\u6570\u636e\u5e93\u6587\u4ef6\u5e03\u5c40"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v10.23/postgresql-10.23.tar.bz2", "label": "10.23", "major": "10", "channel": "stable", "revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "sources": [{"url": "/docs/10/storage-file-layout.html", "path": "storage-file-layout.html", "label": "PostgreSQL 10 English manual", "sha256": "093b3f235454c71a726c19d2a533af52677d400170ccbc8f4b8cab5cfb19946a"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/10/storage.html#STORAGE-FILE-LAYOUT", "anchor": "STORAGE-FILE-LAYOUT", "locale": "zh-Hans", "version": "10", "build_id": 63, "page_key": "storage.html", "extraction": "concept-introduction", "source_hash": "94af6cdae88f5334832106afdde2481a2ff18e6eb4fbc8aed64df3cb046e721d", "fragment_sha256": "8413a23ee3cfd7f5ed476ecfa4a0a548e1568988344dc64f5820a80df8de7327", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:62997ea80516ad012fbf6359de33f3b016b54c47e2df76e75606116b4baaf8e5", "translated_from_revision": null}, "body_sha256": "0b9738675c23c64b8f15d6ded52781838df504a34eeef6f0c344c2e81a5bd358", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "facts_zh": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "sections": [], "center_zh": {"title": "init fork", "locale": "zh-Hans", "source": {"key": "fork-init", "locale": "zh-Hans", "version": "10", "text_hash": "f311ea655bf8f56be44a798e1a6ae8d90514dac7d0669d9bd40a3974c9e66ab9", "collection": "storage", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "payload": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/10/storage.html#STORAGE-FILE-LAYOUT", "anchor": "STORAGE-FILE-LAYOUT", "locale": "zh-Hans", "version": "10", "build_id": 63, "page_key": "storage.html", "extraction": "concept-introduction", "source_hash": "94af6cdae88f5334832106afdde2481a2ff18e6eb4fbc8aed64df3cb046e721d", "fragment_sha256": "8413a23ee3cfd7f5ed476ecfa4a0a548e1568988344dc64f5820a80df8de7327", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:62997ea80516ad012fbf6359de33f3b016b54c47e2df76e75606116b4baaf8e5", "translated_from_revision": null}, "body_sha256": "0b9738675c23c64b8f15d6ded52781838df504a34eeef6f0c344c2e81a5bd358", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "sections": [], "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 67.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002</p><p>\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code class=\"varname\">PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code class=\"varname\">PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code class=\"filename\">/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002</p><p><code class=\"varname\">PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a class=\"xref\" href=\"/zh/docs/10/storage.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a067.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code class=\"filename\">postgresql.conf</code>\u3001<code class=\"filename\">pg_hba.conf</code> \u548c\n<code class=\"filename\">pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code class=\"varname\">PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002</p><p>\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code class=\"varname\">PGDATA</code><code class=\"filename\">/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code class=\"structname\">pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002</p><p><a href=\"/zh/docs/10/storage.html#STORAGE-FILE-LAYOUT\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 67.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "version": "10", "link_map": {"/zh/docs/10/storage.html#STORAGE-FILE-LAYOUT": "/docs/10/storage.html#STORAGE-FILE-LAYOUT", "/zh/docs/10/storage.html#PGDATA-CONTENTS-TABLE": "/docs/10/storage.html#PGDATA-CONTENTS-TABLE"}, "body_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002</p><p>\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002</p><p><code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/10/storage.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a067.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002</p><p>\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002</p><p><a href=\"/zh/docs/10/storage.html#STORAGE-FILE-LAYOUT\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "99bc384ba55774ebfdf6076d6f0cf6b49adb42e8358dd7c44746456f46114e1a", "content_hash": "f311ea655bf8f56be44a798e1a6ae8d90514dac7d0669d9bd40a3974c9e66ab9", "source_database": "center", "source_revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "signature": "", "tables_zh": [], "description": ["\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 67.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002"], "manual_html": "", "manual_path": "/docs/10/storage-file-layout.html", "sections_zh": [], "localization": {"status": "complete", "sources": [], "language": "zh", "original_text": {"/versions/10/description/0": "Each table and index is stored in a separate file. For ordinary relations, these files are named after the table or index's filenode number, which can be found in pg_class . relfilenode . But for temporary relations, the file name is of the form t BBB _ FFF , where BBB is the backend ID of the backend which created the file, and FFF is the filenode number. In either case, in addition to the main file (a/k/a main fork), each table and index has a free space map (see Section 67.3 ), which stores information about free space available in the relation. The free space map is stored in a file named with the filenode number plus the suffix _fsm . Tables also have a visibility map , stored in a fork with the suffix _vm , to track which pages are known to have no dead tuples. The visibility map is described further in Section 67.4 . Unlogged tables and indexes have a third fork, known as the initialization fork, which is stored in a fork with the suffix _init (see Section 67.5 ).", "/versions/10/facts/0/label": "Fork", "/versions/10/related/0/label": "Database file layout"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "c1ef0ce5ffd3d0a3481920d7dd5a2afa37e9ad8809b8ac883e1b121c6251ab54", "canonical_center_text_hash": "f311ea655bf8f56be44a798e1a6ae8d90514dac7d0669d9bd40a3974c9e66ab9"}, "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 67.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "comparison_data": {"fork": "init"}, "comparison_hash": "9a71ceea15a6734051a0b6edce03c9c6693d014169c7559f2e0f39225247c9e8", "manual_language": "zh", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002</p><p>\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002</p><p><code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/10/storage.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a067.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002</p><p>\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002</p><p><a href=\"/zh/docs/10/storage.html#STORAGE-FILE-LAYOUT\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "11": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "related": [{"url": "/wiki/storage/storage-file-layout/?v=11", "label": "\u6570\u636e\u5e93\u6587\u4ef6\u5e03\u5c40"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v11.22/postgresql-11.22.tar.bz2", "label": "11.22", "major": "11", "channel": "stable", "revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "sources": [{"url": "/docs/11/storage-file-layout.html", "path": "storage-file-layout.html", "label": "PostgreSQL 11 English manual", "sha256": "cbed09542ca2b0c2412d9e0810e5283a7626385224a23e094412d8f62be81985"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/11/storage.html#STORAGE-FILE-LAYOUT", "anchor": "STORAGE-FILE-LAYOUT", "locale": "zh-Hans", "version": "11", "build_id": 64, "page_key": "storage.html", "extraction": "concept-introduction", "source_hash": "bab880b9c4b0458a1292568ff901f9251365930386e436d45fbe7a5fa10a0cf8", "fragment_sha256": "41323feb1c52e61209cdf2a7863eb868c3334c11ae4fc1f2aafc4239573a546c", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:ef5c7bc074acae9795db16e6b7482aea3b222bd4bcce0f76831332b97a21e8a1", "translated_from_revision": null}, "body_sha256": "47d8f3128b290cdf7eca6bd24947bd1b6ce8439bf8a6ab8d3595e797ba0f8138", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "facts_zh": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "sections": [], "center_zh": {"title": "init fork", "locale": "zh-Hans", "source": {"key": "fork-init", "locale": "zh-Hans", "version": "11", "text_hash": "d322c338b64f4a8f9fd4b27a9961077187a3bab30853eada6df25984f2de49c4", "collection": "storage", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "payload": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/11/storage.html#STORAGE-FILE-LAYOUT", "anchor": "STORAGE-FILE-LAYOUT", "locale": "zh-Hans", "version": "11", "build_id": 64, "page_key": "storage.html", "extraction": "concept-introduction", "source_hash": "bab880b9c4b0458a1292568ff901f9251365930386e436d45fbe7a5fa10a0cf8", "fragment_sha256": "41323feb1c52e61209cdf2a7863eb868c3334c11ae4fc1f2aafc4239573a546c", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:ef5c7bc074acae9795db16e6b7482aea3b222bd4bcce0f76831332b97a21e8a1", "translated_from_revision": null}, "body_sha256": "47d8f3128b290cdf7eca6bd24947bd1b6ce8439bf8a6ab8d3595e797ba0f8138", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "sections": [], "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 69.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code class=\"varname\">PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code class=\"varname\">PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code class=\"filename\">/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code class=\"varname\">PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a class=\"xref\" href=\"/zh/docs/11/storage.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a069.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code class=\"filename\">postgresql.conf</code>\u3001<code class=\"filename\">pg_hba.conf</code> \u548c\n<code class=\"filename\">pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code class=\"varname\">PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code class=\"varname\">PGDATA</code><code class=\"filename\">/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code class=\"structname\">pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/11/storage.html#STORAGE-FILE-LAYOUT\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 69.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "version": "11", "link_map": {"/zh/docs/11/storage.html#STORAGE-FILE-LAYOUT": "/docs/11/storage.html#STORAGE-FILE-LAYOUT", "/zh/docs/11/storage.html#PGDATA-CONTENTS-TABLE": "/docs/11/storage.html#PGDATA-CONTENTS-TABLE"}, "body_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/11/storage.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a069.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/11/storage.html#STORAGE-FILE-LAYOUT\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "166d44fccaa19c0b69a608695894c5b6a4774df1d283615bc6a93a2ff1e5bbfa", "content_hash": "d322c338b64f4a8f9fd4b27a9961077187a3bab30853eada6df25984f2de49c4", "source_database": "center", "source_revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "signature": "", "tables_zh": [], "description": ["\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 69.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002"], "manual_html": "", "manual_path": "/docs/11/storage-file-layout.html", "sections_zh": [], "localization": {"status": "complete", "sources": [], "language": "zh", "original_text": {"/versions/11/description/0": "Each table and index is stored in a separate file. For ordinary relations, these files are named after the table or index's filenode number, which can be found in pg_class . relfilenode . But for temporary relations, the file name is of the form t BBB _ FFF , where BBB is the backend ID of the backend which created the file, and FFF is the filenode number. In either case, in addition to the main file (a/k/a main fork), each table and index has a free space map (see Section 69.3 ), which stores information about free space available in the relation. The free space map is stored in a file named with the filenode number plus the suffix _fsm . Tables also have a visibility map , stored in a fork with the suffix _vm , to track which pages are known to have no dead tuples. The visibility map is described further in Section 69.4 . Unlogged tables and indexes have a third fork, known as the initialization fork, which is stored in a fork with the suffix _init (see Section 69.5 ).", "/versions/11/facts/0/label": "Fork", "/versions/11/related/0/label": "Database file layout"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "dd049698d2017b09795b4a00e6813773a9dd93069847359d98dc4dca5d3c5edd", "canonical_center_text_hash": "d322c338b64f4a8f9fd4b27a9961077187a3bab30853eada6df25984f2de49c4"}, "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 69.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "comparison_data": {"fork": "init"}, "comparison_hash": "9a71ceea15a6734051a0b6edce03c9c6693d014169c7559f2e0f39225247c9e8", "manual_language": "zh", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/11/storage.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a069.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/11/storage.html#STORAGE-FILE-LAYOUT\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "12": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "related": [{"url": "/wiki/storage/storage-file-layout/?v=12", "label": "\u6570\u636e\u5e93\u6587\u4ef6\u5e03\u5c40"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v12.22/postgresql-12.22.tar.bz2", "label": "12.22", "major": "12", "channel": "stable", "revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "sources": [{"url": "/docs/12/storage-file-layout.html", "path": "storage-file-layout.html", "label": "PostgreSQL 12 English manual", "sha256": "cb2e82b933c3712adaf61cc5a26d266e9f007698df549f999db9962bb6f39823"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/12/storage.html#STORAGE-FILE-LAYOUT", "anchor": "STORAGE-FILE-LAYOUT", "locale": "zh-Hans", "version": "12", "build_id": 65, "page_key": "storage.html", "extraction": "concept-introduction", "source_hash": "34b63c2af8603bf1a123e05d5e1a2e513806ca27d457315a04809855c3cb457a", "fragment_sha256": "e38c729c2db8bcd3141f2c984c71866ed14ccd618b58a184a4a3153d1b5b7cb5", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:86d2ff781f93e1de17122ebc514d5e64fcb63fed15941f496d7e146c6dcc7a49", "translated_from_revision": null}, "body_sha256": "c9b0f4b7e9e54b3cd98c30c6346d24ae20ea75d6f101e4ac3ab0ef38b8e3461a", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "facts_zh": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "sections": [], "center_zh": {"title": "init fork", "locale": "zh-Hans", "source": {"key": "fork-init", "locale": "zh-Hans", "version": "12", "text_hash": "60a11b0ea3e828e6613875c0c71716bc71837eb2f08427a2b8b0cedd91d785da", "collection": "storage", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "payload": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/12/storage.html#STORAGE-FILE-LAYOUT", "anchor": "STORAGE-FILE-LAYOUT", "locale": "zh-Hans", "version": "12", "build_id": 65, "page_key": "storage.html", "extraction": "concept-introduction", "source_hash": "34b63c2af8603bf1a123e05d5e1a2e513806ca27d457315a04809855c3cb457a", "fragment_sha256": "e38c729c2db8bcd3141f2c984c71866ed14ccd618b58a184a4a3153d1b5b7cb5", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:86d2ff781f93e1de17122ebc514d5e64fcb63fed15941f496d7e146c6dcc7a49", "translated_from_revision": null}, "body_sha256": "c9b0f4b7e9e54b3cd98c30c6346d24ae20ea75d6f101e4ac3ab0ef38b8e3461a", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "sections": [], "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 69.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code class=\"varname\">PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code class=\"varname\">PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code class=\"filename\">/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code class=\"varname\">PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a class=\"xref\" href=\"/zh/docs/12/storage.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a069.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code class=\"filename\">postgresql.conf</code>\u3001<code class=\"filename\">pg_hba.conf</code> \u548c\n<code class=\"filename\">pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code class=\"varname\">PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code class=\"varname\">PGDATA</code><code class=\"filename\">/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code class=\"structname\">pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/12/storage.html#STORAGE-FILE-LAYOUT\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 69.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "version": "12", "link_map": {"/zh/docs/12/storage.html#STORAGE-FILE-LAYOUT": "/docs/12/storage.html#STORAGE-FILE-LAYOUT", "/zh/docs/12/storage.html#PGDATA-CONTENTS-TABLE": "/docs/12/storage.html#PGDATA-CONTENTS-TABLE"}, "body_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/12/storage.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a069.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/12/storage.html#STORAGE-FILE-LAYOUT\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "8758c748eb19b97bd751ad66b569d27c519ea49b9bdc4dcaec67a8d9f102be08", "content_hash": "60a11b0ea3e828e6613875c0c71716bc71837eb2f08427a2b8b0cedd91d785da", "source_database": "center", "source_revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "signature": "", "tables_zh": [], "description": ["\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 69.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002"], "manual_html": "", "manual_path": "/docs/12/storage-file-layout.html", "sections_zh": [], "localization": {"status": "complete", "sources": [], "language": "zh", "original_text": {"/versions/12/description/0": "Each table and index is stored in a separate file. For ordinary relations, these files are named after the table or index's filenode number, which can be found in pg_class . relfilenode . But for temporary relations, the file name is of the form t BBB _ FFF , where BBB is the backend ID of the backend which created the file, and FFF is the filenode number. In either case, in addition to the main file (a/k/a main fork), each table and index has a free space map (see Section 69.3 ), which stores information about free space available in the relation. The free space map is stored in a file named with the filenode number plus the suffix _fsm . Tables also have a visibility map , stored in a fork with the suffix _vm , to track which pages are known to have no dead tuples. The visibility map is described further in Section 69.4 . Unlogged tables and indexes have a third fork, known as the initialization fork, which is stored in a fork with the suffix _init (see Section 69.5 ).", "/versions/12/facts/0/label": "Fork", "/versions/12/related/0/label": "Database file layout"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "a54965c191f440e81d56bb1e521dd1bdc4517a399fc5c9ae37c90fbb77919d08", "canonical_center_text_hash": "60a11b0ea3e828e6613875c0c71716bc71837eb2f08427a2b8b0cedd91d785da"}, "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 69.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "comparison_data": {"fork": "init"}, "comparison_hash": "9a71ceea15a6734051a0b6edce03c9c6693d014169c7559f2e0f39225247c9e8", "manual_language": "zh", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/12/storage.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a069.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/12/storage.html#STORAGE-FILE-LAYOUT\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "13": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "related": [{"url": "/wiki/storage/storage-file-layout/?v=13", "label": "\u6570\u636e\u5e93\u6587\u4ef6\u5e03\u5c40"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v13.23/postgresql-13.23.tar.bz2", "label": "13.23", "major": "13", "channel": "stable", "revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "sources": [{"url": "/docs/13/storage-file-layout.html", "path": "storage-file-layout.html", "label": "PostgreSQL 13 English manual", "sha256": "2c839dc903912e2950982d087d63ebb1a03d2818c75443e237320784aa6443f8"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/13/storage.html#STORAGE-FILE-LAYOUT", "anchor": "STORAGE-FILE-LAYOUT", "locale": "zh-Hans", "version": "13", "build_id": 66, "page_key": "storage.html", "extraction": "concept-introduction", "source_hash": "efed129aff91f45e831c56ca2e3ffb09a4a8d573ef1140b791d8591907504598", "fragment_sha256": "36f8580507ed8a50ae07a7d827df5bad00f0510ead702e3ad12b756fad9e8447", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:a13a825c39f0268ef1cfe9137e283e38d0da73b2d7894f0733c7b26372a4f6a4", "translated_from_revision": null}, "body_sha256": "9cda09aa1f00b0770a3837c86a51bad607a4e9d18169c6cced4d8f9fcb2fc99b", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "facts_zh": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "sections": [], "center_zh": {"title": "init fork", "locale": "zh-Hans", "source": {"key": "fork-init", "locale": "zh-Hans", "version": "13", "text_hash": "40736f4e1c4b45509fe5c965642399646156538de9c0a67142c8eb0b8afce1fd", "collection": "storage", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "payload": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/13/storage.html#STORAGE-FILE-LAYOUT", "anchor": "STORAGE-FILE-LAYOUT", "locale": "zh-Hans", "version": "13", "build_id": 66, "page_key": "storage.html", "extraction": "concept-introduction", "source_hash": "efed129aff91f45e831c56ca2e3ffb09a4a8d573ef1140b791d8591907504598", "fragment_sha256": "36f8580507ed8a50ae07a7d827df5bad00f0510ead702e3ad12b756fad9e8447", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:a13a825c39f0268ef1cfe9137e283e38d0da73b2d7894f0733c7b26372a4f6a4", "translated_from_revision": null}, "body_sha256": "9cda09aa1f00b0770a3837c86a51bad607a4e9d18169c6cced4d8f9fcb2fc99b", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "sections": [], "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 69.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code class=\"varname\">PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code class=\"varname\">PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code class=\"filename\">/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code class=\"varname\">PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a class=\"xref\" href=\"/zh/docs/13/storage.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a069.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code class=\"filename\">postgresql.conf</code>\u3001<code class=\"filename\">pg_hba.conf</code> \u548c\n<code class=\"filename\">pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code class=\"varname\">PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code class=\"varname\">PGDATA</code><code class=\"filename\">/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code class=\"structname\">pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/13/storage.html#STORAGE-FILE-LAYOUT\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 69.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "version": "13", "link_map": {"/zh/docs/13/storage.html#STORAGE-FILE-LAYOUT": "/docs/13/storage.html#STORAGE-FILE-LAYOUT", "/zh/docs/13/storage.html#PGDATA-CONTENTS-TABLE": "/docs/13/storage.html#PGDATA-CONTENTS-TABLE"}, "body_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/13/storage.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a069.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/13/storage.html#STORAGE-FILE-LAYOUT\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "2350da31969617f846a38027cf150297098d427f22d8ddd51c755c898ae593a2", "content_hash": "40736f4e1c4b45509fe5c965642399646156538de9c0a67142c8eb0b8afce1fd", "source_database": "center", "source_revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "signature": "", "tables_zh": [], "description": ["\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 69.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002"], "manual_html": "", "manual_path": "/docs/13/storage-file-layout.html", "sections_zh": [], "localization": {"status": "complete", "sources": [], "language": "zh", "original_text": {"/versions/13/description/0": "Each table and index is stored in a separate file. For ordinary relations, these files are named after the table or index's filenode number, which can be found in pg_class . relfilenode . But for temporary relations, the file name is of the form t BBB _ FFF , where BBB is the backend ID of the backend which created the file, and FFF is the filenode number. In either case, in addition to the main file (a/k/a main fork), each table and index has a free space map (see Section 69.3 ), which stores information about free space available in the relation. The free space map is stored in a file named with the filenode number plus the suffix _fsm . Tables also have a visibility map , stored in a fork with the suffix _vm , to track which pages are known to have no dead tuples. The visibility map is described further in Section 69.4 . Unlogged tables and indexes have a third fork, known as the initialization fork, which is stored in a fork with the suffix _init (see Section 69.5 ).", "/versions/13/facts/0/label": "Fork", "/versions/13/related/0/label": "Database file layout"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "636ad5936c77472c77a7cf584232ce0b1bb9b7857585cde8f23667bad53785f8", "canonical_center_text_hash": "40736f4e1c4b45509fe5c965642399646156538de9c0a67142c8eb0b8afce1fd"}, "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 69.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "comparison_data": {"fork": "init"}, "comparison_hash": "9a71ceea15a6734051a0b6edce03c9c6693d014169c7559f2e0f39225247c9e8", "manual_language": "zh", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/13/storage.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a069.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/13/storage.html#STORAGE-FILE-LAYOUT\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "14": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "related": [{"url": "/wiki/storage/storage-file-layout/?v=14", "label": "\u6570\u636e\u5e93\u6587\u4ef6\u5e03\u5c40"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v14.24/postgresql-14.24.tar.bz2", "label": "14.24", "major": "14", "channel": "stable", "revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "sources": [{"url": "/docs/14/storage-file-layout.html", "path": "storage-file-layout.html", "label": "PostgreSQL 14 English manual", "sha256": "6321dbd90cb8a8dfdc90c0e1caeaf3d480705176bba0428510fd986fe681eae3"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/14/storage.html#STORAGE-FILE-LAYOUT", "anchor": "STORAGE-FILE-LAYOUT", "locale": "zh-Hans", "version": "14", "build_id": 99, "page_key": "storage.html", "extraction": "concept-introduction", "source_hash": "3dc0761a8e7141eb56d10a6f2a02ef28cf806c4a3d31fe0e22fd459d9d2bc9bb", "fragment_sha256": "8fa88adce13c16840a57633d5cef3e8698b75083cf224709546b8acf94330e07", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:87e6aa4fd6e1ec85c5f4a6de4f5647cfd9e5de734ca2c266d32b6d6192c662ef", "translated_from_revision": null}, "body_sha256": "67de184eee5bb7d5176d3df30d960d515e2649432f9c6535ffbdeb43f7c2921f", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "facts_zh": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "sections": [], "center_zh": {"title": "init fork", "locale": "zh-Hans", "source": {"key": "fork-init", "locale": "zh-Hans", "version": "14", "text_hash": "2f593d0648d3a8ba5d19a588f1f4eb161dd9a76f498ae164e2bb99d41dc59beb", "collection": "storage", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "payload": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/14/storage.html#STORAGE-FILE-LAYOUT", "anchor": "STORAGE-FILE-LAYOUT", "locale": "zh-Hans", "version": "14", "build_id": 99, "page_key": "storage.html", "extraction": "concept-introduction", "source_hash": "3dc0761a8e7141eb56d10a6f2a02ef28cf806c4a3d31fe0e22fd459d9d2bc9bb", "fragment_sha256": "8fa88adce13c16840a57633d5cef3e8698b75083cf224709546b8acf94330e07", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:87e6aa4fd6e1ec85c5f4a6de4f5647cfd9e5de734ca2c266d32b6d6192c662ef", "translated_from_revision": null}, "body_sha256": "67de184eee5bb7d5176d3df30d960d515e2649432f9c6535ffbdeb43f7c2921f", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "sections": [], "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 70.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code class=\"varname\">PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code class=\"varname\">PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code class=\"filename\">/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code class=\"varname\">PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a class=\"xref\" href=\"/zh/docs/14/storage.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a070.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code class=\"filename\">postgresql.conf</code>\u3001<code class=\"filename\">pg_hba.conf</code> \u548c\n<code class=\"filename\">pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code class=\"varname\">PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code class=\"varname\">PGDATA</code><code class=\"filename\">/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code class=\"structname\">pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/14/storage.html#STORAGE-FILE-LAYOUT\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 70.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "version": "14", "link_map": {"/zh/docs/14/storage.html#STORAGE-FILE-LAYOUT": "/docs/14/storage.html#STORAGE-FILE-LAYOUT", "/zh/docs/14/storage.html#PGDATA-CONTENTS-TABLE": "/docs/14/storage.html#PGDATA-CONTENTS-TABLE"}, "body_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/14/storage.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a070.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/14/storage.html#STORAGE-FILE-LAYOUT\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "2b8aa2803d98b5d9b6edf46aaf6e43fc4afc82ba9727ab193a16025f026405f9", "content_hash": "2f593d0648d3a8ba5d19a588f1f4eb161dd9a76f498ae164e2bb99d41dc59beb", "source_database": "center", "source_revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "signature": "", "tables_zh": [], "description": ["\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 70.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002"], "manual_html": "", "manual_path": "/docs/14/storage-file-layout.html", "sections_zh": [], "localization": {"status": "complete", "sources": [], "language": "zh", "original_text": {"/versions/14/description/0": "Each table and index is stored in a separate file. For ordinary relations, these files are named after the table or index's filenode number, which can be found in pg_class . relfilenode . But for temporary relations, the file name is of the form t BBB _ FFF , where BBB is the backend ID of the backend which created the file, and FFF is the filenode number. In either case, in addition to the main file (a/k/a main fork), each table and index has a free space map (see Section 70.3 ), which stores information about free space available in the relation. The free space map is stored in a file named with the filenode number plus the suffix _fsm . Tables also have a visibility map , stored in a fork with the suffix _vm , to track which pages are known to have no dead tuples. The visibility map is described further in Section 70.4 . Unlogged tables and indexes have a third fork, known as the initialization fork, which is stored in a fork with the suffix _init (see Section 70.5 ).", "/versions/14/facts/0/label": "Fork", "/versions/14/related/0/label": "Database file layout"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "bf2bcf736ad3f218f5ceb8d9b9a33a780d3fff7698379bc5c32e59125300349c", "canonical_center_text_hash": "2f593d0648d3a8ba5d19a588f1f4eb161dd9a76f498ae164e2bb99d41dc59beb"}, "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 70.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "comparison_data": {"fork": "init"}, "comparison_hash": "9a71ceea15a6734051a0b6edce03c9c6693d014169c7559f2e0f39225247c9e8", "manual_language": "zh", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/14/storage.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a070.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/14/storage.html#STORAGE-FILE-LAYOUT\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "15": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "related": [{"url": "/wiki/storage/storage-file-layout/?v=15", "label": "\u6570\u636e\u5e93\u6587\u4ef6\u5e03\u5c40"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v15.19/postgresql-15.19.tar.bz2", "label": "15.19", "major": "15", "channel": "stable", "revision": "e1a64a87a46b825b88c082e4518161a47aab53c45694964f8ba1df28f7859f89"}, "sources": [{"url": "/docs/15/storage-file-layout.html", "path": "storage-file-layout.html", "label": "PostgreSQL 15 English manual", "sha256": "01868f8e03e8749d2c1b113ab2988c459ac44259ce7416677e981e41e33015ea"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/15/storage.html#STORAGE-FILE-LAYOUT", "anchor": "STORAGE-FILE-LAYOUT", "locale": "zh-Hans", "version": "15", "build_id": 101, "page_key": "storage.html", "extraction": "concept-introduction", "source_hash": "56436f3504bf627a4cde8c272b488c76f635fa209816b310eb3db961f737bf83", "fragment_sha256": "787461c4cdd1a6137baff0a8819bad051bf27396fd93265fe65e8be31f568588", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:6bce1a2df9170cb1146a1411c5547190856638221a6539e618ee1016c9f493ad", "translated_from_revision": null}, "body_sha256": "312cda73f7b5e429fe495be540634f44fd9db399c86f0f072d83a199d58900bf", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "e1a64a87a46b825b88c082e4518161a47aab53c45694964f8ba1df28f7859f89"}, "facts_zh": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "sections": [], "center_zh": {"title": "init fork", "locale": "zh-Hans", "source": {"key": "fork-init", "locale": "zh-Hans", "version": "15", "text_hash": "c79a0f9f69c54466f8cefb6b10f874492110a76b98d6f666eae5ba17cb7a315a", "collection": "storage", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "e1a64a87a46b825b88c082e4518161a47aab53c45694964f8ba1df28f7859f89"}, "payload": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/15/storage.html#STORAGE-FILE-LAYOUT", "anchor": "STORAGE-FILE-LAYOUT", "locale": "zh-Hans", "version": "15", "build_id": 101, "page_key": "storage.html", "extraction": "concept-introduction", "source_hash": "56436f3504bf627a4cde8c272b488c76f635fa209816b310eb3db961f737bf83", "fragment_sha256": "787461c4cdd1a6137baff0a8819bad051bf27396fd93265fe65e8be31f568588", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:6bce1a2df9170cb1146a1411c5547190856638221a6539e618ee1016c9f493ad", "translated_from_revision": null}, "body_sha256": "312cda73f7b5e429fe495be540634f44fd9db399c86f0f072d83a199d58900bf", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "e1a64a87a46b825b88c082e4518161a47aab53c45694964f8ba1df28f7859f89"}, "sections": [], "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 73.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code class=\"varname\">PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code class=\"varname\">PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code class=\"filename\">/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code class=\"varname\">PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a class=\"xref\" href=\"/zh/docs/15/storage.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a073.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code class=\"filename\">postgresql.conf</code>\u3001<code class=\"filename\">pg_hba.conf</code> \u548c\n<code class=\"filename\">pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code class=\"varname\">PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code class=\"varname\">PGDATA</code><code class=\"filename\">/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code class=\"structname\">pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/15/storage.html#STORAGE-FILE-LAYOUT\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 73.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "version": "15", "link_map": {"/zh/docs/15/storage.html#STORAGE-FILE-LAYOUT": "/docs/15/storage.html#STORAGE-FILE-LAYOUT", "/zh/docs/15/storage.html#PGDATA-CONTENTS-TABLE": "/docs/15/storage.html#PGDATA-CONTENTS-TABLE"}, "body_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/15/storage.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a073.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/15/storage.html#STORAGE-FILE-LAYOUT\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "075f2ba76940bc7324ae58ac9cd9243adc5249e3dfee1cdfc06fef2e8d8b6b18", "content_hash": "c79a0f9f69c54466f8cefb6b10f874492110a76b98d6f666eae5ba17cb7a315a", "source_database": "center", "source_revision": "e1a64a87a46b825b88c082e4518161a47aab53c45694964f8ba1df28f7859f89"}, "signature": "", "tables_zh": [], "description": ["\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 73.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002"], "manual_html": "", "manual_path": "/docs/15/storage-file-layout.html", "sections_zh": [], "localization": {"status": "complete", "sources": [], "language": "zh", "original_text": {"/versions/15/description/0": "Each table and index is stored in a separate file. For ordinary relations, these files are named after the table or index's filenode number, which can be found in pg_class . relfilenode . But for temporary relations, the file name is of the form t BBB _ FFF , where BBB is the backend ID of the backend which created the file, and FFF is the filenode number. In either case, in addition to the main file (a/k/a main fork), each table and index has a free space map (see Section 73.3 ), which stores information about free space available in the relation. The free space map is stored in a file named with the filenode number plus the suffix _fsm . Tables also have a visibility map , stored in a fork with the suffix _vm , to track which pages are known to have no dead tuples. The visibility map is described further in Section 73.4 . Unlogged tables and indexes have a third fork, known as the initialization fork, which is stored in a fork with the suffix _init (see Section 73.5 ).", "/versions/15/facts/0/label": "Fork", "/versions/15/related/0/label": "Database file layout"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "8cf64f19d2ccf6102717accc4b367b6d528783c9b894bf582bbb374c6ee2d5e0", "canonical_center_text_hash": "c79a0f9f69c54466f8cefb6b10f874492110a76b98d6f666eae5ba17cb7a315a"}, "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 73.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "comparison_data": {"fork": "init"}, "comparison_hash": "9a71ceea15a6734051a0b6edce03c9c6693d014169c7559f2e0f39225247c9e8", "manual_language": "zh", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/15/storage.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a073.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/15/storage.html#STORAGE-FILE-LAYOUT\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "16": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "related": [{"url": "/wiki/storage/storage-file-layout/?v=16", "label": "\u6570\u636e\u5e93\u6587\u4ef6\u5e03\u5c40"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v16.15/postgresql-16.15.tar.bz2", "label": "16.15", "major": "16", "channel": "stable", "revision": "c1575341fa7bd40f5274ea465b34390f4dc64cdd0770af327005caaeb9f6b7ed"}, "sources": [{"url": "/docs/16/storage-file-layout.html", "path": "storage-file-layout.html", "label": "PostgreSQL 16 English manual", "sha256": "f03daad7b39b5df902b4bc6e6f856e65af368a8507ffbf02199804aa4b0d0bd5"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/16/storage-file-layout.html", "anchor": "", "locale": "zh-Hans", "version": "16", "build_id": 103, "page_key": "storage-file-layout.html", "extraction": "concept-introduction", "source_hash": "3c7e10a573ed356405b27aa7cf16673df9178d044d2e80985d79b139ccc5c113", "fragment_sha256": "cbddc0dff20de9c7e4b9fbd292b1cf71d8bfa69f9f68c0daa3a0ec5ed01c3d24", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:80579a071736780f9c4022bb5148e1fb1256f1a33591306af67816e9e9bf3a9b", "translated_from_revision": null}, "body_sha256": "17b256d3644cb513457bf4791da07b879d335b7e65d48490b87113210ddb992f", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "c1575341fa7bd40f5274ea465b34390f4dc64cdd0770af327005caaeb9f6b7ed"}, "facts_zh": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "sections": [], "center_zh": {"title": "init fork", "locale": "zh-Hans", "source": {"key": "fork-init", "locale": "zh-Hans", "version": "16", "text_hash": "889c1e143df77685ad72831962ac41706906e10086ad6378d87ea52b29ebca3d", "collection": "storage", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "c1575341fa7bd40f5274ea465b34390f4dc64cdd0770af327005caaeb9f6b7ed"}, "payload": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/16/storage-file-layout.html", "anchor": "", "locale": "zh-Hans", "version": "16", "build_id": 103, "page_key": "storage-file-layout.html", "extraction": "concept-introduction", "source_hash": "3c7e10a573ed356405b27aa7cf16673df9178d044d2e80985d79b139ccc5c113", "fragment_sha256": "cbddc0dff20de9c7e4b9fbd292b1cf71d8bfa69f9f68c0daa3a0ec5ed01c3d24", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:80579a071736780f9c4022bb5148e1fb1256f1a33591306af67816e9e9bf3a9b", "translated_from_revision": null}, "body_sha256": "17b256d3644cb513457bf4791da07b879d335b7e65d48490b87113210ddb992f", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "c1575341fa7bd40f5274ea465b34390f4dc64cdd0770af327005caaeb9f6b7ed"}, "sections": [], "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 73.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code class=\"varname\">PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code class=\"varname\">PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code class=\"filename\">/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code class=\"varname\">PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a class=\"xref\" href=\"/zh/docs/16/storage-file-layout.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a073.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code class=\"filename\">postgresql.conf</code>\u3001<code class=\"filename\">pg_hba.conf</code> \u548c\n<code class=\"filename\">pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code class=\"varname\">PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code class=\"varname\">PGDATA</code><code class=\"filename\">/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code class=\"structname\">pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/16/storage-file-layout.html\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 73.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "version": "16", "link_map": {"/zh/docs/16/storage-file-layout.html": "/docs/16/storage-file-layout.html", "/zh/docs/16/storage-file-layout.html#PGDATA-CONTENTS-TABLE": "/docs/16/storage-file-layout.html#PGDATA-CONTENTS-TABLE"}, "body_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/16/storage-file-layout.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a073.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/16/storage-file-layout.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "7df707728f889ec1e3cf0710a2fc2b1330c1f49038cd3bc58b5a59c22596db19", "content_hash": "889c1e143df77685ad72831962ac41706906e10086ad6378d87ea52b29ebca3d", "source_database": "center", "source_revision": "c1575341fa7bd40f5274ea465b34390f4dc64cdd0770af327005caaeb9f6b7ed"}, "signature": "", "tables_zh": [], "description": ["\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 73.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002"], "manual_html": "", "manual_path": "/docs/16/storage-file-layout.html", "sections_zh": [], "localization": {"status": "complete", "sources": [], "language": "zh", "original_text": {"/versions/16/description/0": "Each table and index is stored in a separate file. For ordinary relations, these files are named after the table or index's filenode number, which can be found in pg_class . relfilenode . But for temporary relations, the file name is of the form t BBB _ FFF , where BBB is the backend ID of the backend which created the file, and FFF is the filenode number. In either case, in addition to the main file (a/k/a main fork), each table and index has a free space map (see Section 73.3 ), which stores information about free space available in the relation. The free space map is stored in a file named with the filenode number plus the suffix _fsm . Tables also have a visibility map , stored in a fork with the suffix _vm , to track which pages are known to have no dead tuples. The visibility map is described further in Section 73.4 . Unlogged tables and indexes have a third fork, known as the initialization fork, which is stored in a fork with the suffix _init (see Section 73.5 ).", "/versions/16/facts/0/label": "Fork", "/versions/16/related/0/label": "Database file layout"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "c630b54d2d274aba81e8d8e29b3deaa6fa11ac691520d3cba20442e525cbe4be", "canonical_center_text_hash": "889c1e143df77685ad72831962ac41706906e10086ad6378d87ea52b29ebca3d"}, "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 73.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "comparison_data": {"fork": "init"}, "comparison_hash": "9a71ceea15a6734051a0b6edce03c9c6693d014169c7559f2e0f39225247c9e8", "manual_language": "zh", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/16/storage-file-layout.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a073.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/16/storage-file-layout.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "17": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "related": [{"url": "/wiki/storage/storage-file-layout/?v=17", "label": "\u6570\u636e\u5e93\u6587\u4ef6\u5e03\u5c40"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v17.11/postgresql-17.11.tar.bz2", "label": "17.11", "major": "17", "channel": "stable", "revision": "dd27f2b3c59e73ed14aa3324901242bf69a032a6347805f274e6260322d42979"}, "sources": [{"url": "/docs/17/storage-file-layout.html", "path": "storage-file-layout.html", "label": "PostgreSQL 17 English manual", "sha256": "f3de9587ca7d02f068a4307639ba9e24f7e90a722f8e71b496428de6aaba8652"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/17/storage-file-layout.html", "anchor": "", "locale": "zh-Hans", "version": "17", "build_id": 105, "page_key": "storage-file-layout.html", "extraction": "concept-introduction", "source_hash": "b604b572b86df5108ce198470c4f4890ba9dfac7574692e171ee471a106fcce0", "fragment_sha256": "f478df8c8ce97b75c7bcd9f10806b0b847f00fc353ae813b575fde736ffce24e", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:7340767258d21c21b36f373f1fff6bab2be18e0daca13a865129db6105c09efd", "translated_from_revision": null}, "body_sha256": "23edcfa80a8da14ace7176a43fd56ed779d85d7c62210a90579e6eb1001531b1", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "dd27f2b3c59e73ed14aa3324901242bf69a032a6347805f274e6260322d42979"}, "facts_zh": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "sections": [], "center_zh": {"title": "init fork", "locale": "zh-Hans", "source": {"key": "fork-init", "locale": "zh-Hans", "version": "17", "text_hash": "fbe0691c7a79f0930ed080ba7f675c0b24146b290d55d530063734befe811e00", "collection": "storage", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "dd27f2b3c59e73ed14aa3324901242bf69a032a6347805f274e6260322d42979"}, "payload": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/17/storage-file-layout.html", "anchor": "", "locale": "zh-Hans", "version": "17", "build_id": 105, "page_key": "storage-file-layout.html", "extraction": "concept-introduction", "source_hash": "b604b572b86df5108ce198470c4f4890ba9dfac7574692e171ee471a106fcce0", "fragment_sha256": "f478df8c8ce97b75c7bcd9f10806b0b847f00fc353ae813b575fde736ffce24e", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:7340767258d21c21b36f373f1fff6bab2be18e0daca13a865129db6105c09efd", "translated_from_revision": null}, "body_sha256": "23edcfa80a8da14ace7176a43fd56ed779d85d7c62210a90579e6eb1001531b1", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "dd27f2b3c59e73ed14aa3324901242bf69a032a6347805f274e6260322d42979"}, "sections": [], "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 65.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code class=\"varname\">PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code class=\"varname\">PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code class=\"filename\">/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code class=\"varname\">PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a class=\"xref\" href=\"/zh/docs/17/storage-file-layout.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a065.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code class=\"filename\">postgresql.conf</code>\u3001<code class=\"filename\">pg_hba.conf</code> \u548c\n<code class=\"filename\">pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code class=\"varname\">PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code class=\"varname\">PGDATA</code><code class=\"filename\">/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code class=\"structname\">pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/17/storage-file-layout.html\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 65.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "version": "17", "link_map": {"/zh/docs/17/storage-file-layout.html": "/docs/17/storage-file-layout.html", "/zh/docs/17/storage-file-layout.html#PGDATA-CONTENTS-TABLE": "/docs/17/storage-file-layout.html#PGDATA-CONTENTS-TABLE"}, "body_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/17/storage-file-layout.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a065.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/17/storage-file-layout.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "9e3fa05036844fe6f77a895db1b860bbdbf2b7a1abb68c500642aee36c27ea43", "content_hash": "fbe0691c7a79f0930ed080ba7f675c0b24146b290d55d530063734befe811e00", "source_database": "center", "source_revision": "dd27f2b3c59e73ed14aa3324901242bf69a032a6347805f274e6260322d42979"}, "signature": "", "tables_zh": [], "description": ["\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 65.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002"], "manual_html": "", "manual_path": "/docs/17/storage-file-layout.html", "sections_zh": [], "localization": {"status": "complete", "sources": [{"url": "/docs/17/storage-file-layout.html", "method": "same-major semantic node", "sha256": "560012604ef3e72433d00f8d7c10e196fc8d62ce42f886a6d72b9471e74a6257", "language": "zh", "matched_nodes": ["#STORAGE-FILE-LAYOUT/p[8]"]}], "language": "zh", "original_text": {"/versions/17/description/0": "Each table and index is stored in a separate file. For ordinary relations, these files are named after the table or index's filenode number, which can be found in pg_class . relfilenode . But for temporary relations, the file name is of the form t BBB _ FFF , where BBB is the process number of the backend which created the file, and FFF is the filenode number. In either case, in addition to the main file (a/k/a main fork), each table and index has a free space map (see Section 65.3 ), which stores information about free space available in the relation. The free space map is stored in a file named with the filenode number plus the suffix _fsm . Tables also have a visibility map , stored in a fork with the suffix _vm , to track which pages are known to have no dead tuples. The visibility map is described further in Section 65.4 . Unlogged tables and indexes have a third fork, known as the initialization fork, which is stored in a fork with the suffix _init (see Section 65.5 ).", "/versions/17/facts/0/label": "Fork", "/versions/17/related/0/label": "Database file layout"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "f70e76a19439281a3b67e2ccd1008eb1a62086b26960374a84825c7aae9f0ef8", "canonical_center_text_hash": "fbe0691c7a79f0930ed080ba7f675c0b24146b290d55d530063734befe811e00"}, "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 65.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "comparison_data": {"fork": "init"}, "comparison_hash": "9a71ceea15a6734051a0b6edce03c9c6693d014169c7559f2e0f39225247c9e8", "manual_language": "zh", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/17/storage-file-layout.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a065.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/17/storage-file-layout.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "18": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "related": [{"url": "/wiki/storage/storage-file-layout/?v=18", "label": "\u6570\u636e\u5e93\u6587\u4ef6\u5e03\u5c40"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2", "label": "18.6", "major": "18", "channel": "stable", "revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "sources": [{"url": "/docs/18/storage-file-layout.html", "path": "storage-file-layout.html", "label": "PostgreSQL 18 English manual", "sha256": "8cdf46b5af669f41f0a77c2541863d63454ef8fbb44d22a75e576cf1a7efc9c9"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/18/storage-file-layout.html", "anchor": "", "locale": "zh-Hans", "version": "18", "build_id": 107, "page_key": "storage-file-layout.html", "extraction": "concept-introduction", "source_hash": "b919cbcb8aedb49e32e5185e2c7753b075945bb7c0e00c59b81974d853143a0a", "fragment_sha256": "257fb050d6193b915e73cee0d717b72f3e9e669fd98d6e4cebef2941b6a6378b", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:08e987a66af27b98444a8057c256314eafa13611a3fb9e888214fc436824244b", "translated_from_revision": null}, "body_sha256": "4bed444e5fdf3abef08ed6fd7d3eb98d75b5df64c9749a15b1e259da0f57fc7d", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "facts_zh": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "sections": [], "center_zh": {"title": "init fork", "locale": "zh-Hans", "source": {"key": "fork-init", "locale": "zh-Hans", "version": "18", "text_hash": "c6218775266a6a5a66122117ff11b26e77ba24d789dc4b60be8f6e0601d08a68", "collection": "storage", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "payload": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/18/storage-file-layout.html", "anchor": "", "locale": "zh-Hans", "version": "18", "build_id": 107, "page_key": "storage-file-layout.html", "extraction": "concept-introduction", "source_hash": "b919cbcb8aedb49e32e5185e2c7753b075945bb7c0e00c59b81974d853143a0a", "fragment_sha256": "257fb050d6193b915e73cee0d717b72f3e9e669fd98d6e4cebef2941b6a6378b", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:08e987a66af27b98444a8057c256314eafa13611a3fb9e888214fc436824244b", "translated_from_revision": null}, "body_sha256": "4bed444e5fdf3abef08ed6fd7d3eb98d75b5df64c9749a15b1e259da0f57fc7d", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "sections": [], "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code class=\"varname\">PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code class=\"varname\">PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code class=\"filename\">/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code class=\"varname\">PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a class=\"xref\" href=\"/zh/docs/18/storage-file-layout.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code class=\"filename\">postgresql.conf</code>\u3001<code class=\"filename\">pg_hba.conf</code> \u548c\n<code class=\"filename\">pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code class=\"varname\">PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code class=\"varname\">PGDATA</code><code class=\"filename\">/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code class=\"structname\">pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/18/storage-file-layout.html\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "version": "18", "link_map": {"/zh/docs/18/storage-file-layout.html": "/docs/18/storage-file-layout.html", "/zh/docs/18/storage-file-layout.html#PGDATA-CONTENTS-TABLE": "/docs/18/storage-file-layout.html#PGDATA-CONTENTS-TABLE"}, "body_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/18/storage-file-layout.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/18/storage-file-layout.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "a8ec77e75f283f8fea3392ea9d8c17924d8dd794fe088721cfa301d6bd857235", "content_hash": "c6218775266a6a5a66122117ff11b26e77ba24d789dc4b60be8f6e0601d08a68", "source_database": "center", "source_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "signature": "", "tables_zh": [], "description": ["\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002"], "manual_html": "", "manual_path": "/docs/18/storage-file-layout.html", "sections_zh": [], "localization": {"status": "complete", "sources": [{"url": "/docs/18/storage-file-layout.html", "method": "same-major semantic node", "sha256": "55056edf7352b4e414c1366406a307a72af33aeda7854ef3a8cc1fa5c0db23ad", "language": "zh", "matched_nodes": ["#STORAGE-FILE-LAYOUT/p[8]"]}], "language": "zh", "original_text": {"/versions/18/description/0": "Each table and index is stored in a separate file. For ordinary relations, these files are named after the table or index's filenode number, which can be found in pg_class . relfilenode . But for temporary relations, the file name is of the form t BBB _ FFF , where BBB is the process number of the backend which created the file, and FFF is the filenode number. In either case, in addition to the main file (a/k/a main fork), each table and index has a free space map (see Section 66.3 ), which stores information about free space available in the relation. The free space map is stored in a file named with the filenode number plus the suffix _fsm . Tables also have a visibility map , stored in a fork with the suffix _vm , to track which pages are known to have no dead tuples. The visibility map is described further in Section 66.4 . Unlogged tables and indexes have a third fork, known as the initialization fork, which is stored in a fork with the suffix _init (see Section 66.5 ).", "/versions/18/facts/0/label": "Fork", "/versions/18/related/0/label": "Database file layout"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "216a0cb22ef0f15f231d81fc642477590cbc64908af9c49ab6926697003d5b07", "canonical_center_text_hash": "c6218775266a6a5a66122117ff11b26e77ba24d789dc4b60be8f6e0601d08a68"}, "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "comparison_data": {"fork": "init"}, "comparison_hash": "9a71ceea15a6734051a0b6edce03c9c6693d014169c7559f2e0f39225247c9e8", "manual_language": "zh", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/18/storage-file-layout.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/18/storage-file-layout.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "center_zh_rendered": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/docs/18/storage-file-layout.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/docs/18/storage-file-layout.html\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "19": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "related": [{"url": "/wiki/storage/storage-file-layout/?v=19", "label": "\u6570\u636e\u5e93\u6587\u4ef6\u5e03\u5c40"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v19rc1/postgresql-19rc1.tar.bz2", "label": "19rc1", "major": "19", "channel": "preview", "revision": "af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "sources": [{"url": "/docs/19/storage-file-layout.html", "path": "storage-file-layout.html", "label": "PostgreSQL 19 English manual", "sha256": "628996446c17dc27f581a5f3a9686a23124a9e9054ebd91e05102268155ff139"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/19/storage-file-layout.html", "anchor": "", "locale": "zh-Hans", "version": "19", "build_id": 109, "page_key": "storage-file-layout.html", "extraction": "concept-introduction", "source_hash": "f6e631b917f227057ee82b298b6f3c8e4b0d41412bf3f05307bf17353b8b3d2d", "fragment_sha256": "55664dc7fcb3a6d96522818960b039803e0152ead6fe00062bee6180b4d68f92", "source_revision": "sha256:af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:65fda1f1b62a89992b84014c9157e61b67dbe8190e93945826efec668fad038c", "translated_from_revision": "sha256:af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "body_sha256": "11f4481cce787eb69227e37b86c77b86912930bd6a85965697f2f2b3a208569e", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "facts_zh": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "sections": [], "center_zh": {"title": "init fork", "locale": "zh-Hans", "source": {"key": "fork-init", "locale": "zh-Hans", "version": "19", "text_hash": "5d5312f240355483b8487e40335609e84c9d97620ac5b945ed81e1cb6f1a6e5b", "collection": "storage", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "payload": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/19/storage-file-layout.html", "anchor": "", "locale": "zh-Hans", "version": "19", "build_id": 109, "page_key": "storage-file-layout.html", "extraction": "concept-introduction", "source_hash": "f6e631b917f227057ee82b298b6f3c8e4b0d41412bf3f05307bf17353b8b3d2d", "fragment_sha256": "55664dc7fcb3a6d96522818960b039803e0152ead6fe00062bee6180b4d68f92", "source_revision": "sha256:af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:65fda1f1b62a89992b84014c9157e61b67dbe8190e93945826efec668fad038c", "translated_from_revision": "sha256:af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "body_sha256": "11f4481cce787eb69227e37b86c77b86912930bd6a85965697f2f2b3a208569e", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "sections": [], "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code class=\"varname\">PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code class=\"varname\">PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code class=\"filename\">/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code class=\"varname\">PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a class=\"xref\" href=\"/zh/docs/19/storage-file-layout.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code class=\"filename\">postgresql.conf</code>\u3001<code class=\"filename\">pg_hba.conf</code> \u548c\n<code class=\"filename\">pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code class=\"varname\">PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code class=\"varname\">PGDATA</code><code class=\"filename\">/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code class=\"structname\">pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/19/storage-file-layout.html\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "version": "19", "link_map": {"/zh/docs/19/storage-file-layout.html": "/docs/19/storage-file-layout.html", "/zh/docs/19/storage-file-layout.html#PGDATA-CONTENTS-TABLE": "/docs/19/storage-file-layout.html#PGDATA-CONTENTS-TABLE"}, "body_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/19/storage-file-layout.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/19/storage-file-layout.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "04f4249379c096348b811a9fcadaa1c92daa5e7bb3729e5ee3763e2753607cca", "content_hash": "5d5312f240355483b8487e40335609e84c9d97620ac5b945ed81e1cb6f1a6e5b", "source_database": "center", "source_revision": "af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "signature": "", "tables_zh": [], "description": ["\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002"], "manual_html": "", "manual_path": "/docs/19/storage-file-layout.html", "sections_zh": [], "localization": {"status": "complete", "sources": [{"url": "/docs/19/storage-file-layout.html", "method": "same-major semantic node", "sha256": "9a13b1f05755a7031d551a429c6d21bff35d965f098909408a39259ca751f156", "language": "zh", "matched_nodes": ["#STORAGE-FILE-LAYOUT/p[8]"]}], "language": "zh", "original_text": {"/versions/19/description/0": "Each table and index is stored in a separate file. For ordinary relations, these files are named after the table or index's filenode number, which can be found in pg_class . relfilenode . But for temporary relations, the file name is of the form t BBB _ FFF , where BBB is the process number of the backend which created the file, and FFF is the filenode number. In either case, in addition to the main file (a/k/a main fork), each table and index has a free space map (see Section 66.3 ), which stores information about free space available in the relation. The free space map is stored in a file named with the filenode number plus the suffix _fsm . Tables also have a visibility map , stored in a fork with the suffix _vm , to track which pages are known to have no dead tuples. The visibility map is described further in Section 66.4 . Unlogged tables and indexes have a third fork, known as the initialization fork, which is stored in a fork with the suffix _init (see Section 66.5 ).", "/versions/19/facts/0/label": "Fork", "/versions/19/related/0/label": "Database file layout"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "9a31bbe2052eac4fc5f0db94cea883660f5a4135fde26f17193ed4dc4da5c783", "canonical_center_text_hash": "5d5312f240355483b8487e40335609e84c9d97620ac5b945ed81e1cb6f1a6e5b"}, "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "comparison_data": {"fork": "init"}, "comparison_hash": "9a71ceea15a6734051a0b6edce03c9c6693d014169c7559f2e0f39225247c9e8", "manual_language": "zh", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/19/storage-file-layout.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/19/storage-file-layout.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "source_revalidation": {"kind": "static-same-version-source-and-manual-replay", "audit": "wiki-audit-20261023", "runtime_rerun": false, "compared_fields": "entity membership and source-derived facts; presentation markup normalized", "source_revision": "af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701", "previous_source_revision": "83157ee9c599d03b2f7a3d73ef3a56ec24e0e79cc2b3501a64d1364f56398c86"}}, "20": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "related": [{"url": "/wiki/storage/storage-file-layout/?v=20", "label": "\u6570\u636e\u5e93\u6587\u4ef6\u5e03\u5c40"}], "release": {"ref": "https://ftp.postgresql.org/pub/snapshot/dev/postgresql-snapshot.tar.bz2", "label": "20devel", "major": "20", "channel": "devel", "revision": "49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "sources": [{"url": "/docs/devel/storage-file-layout.html", "path": "storage-file-layout.html", "label": "PostgreSQL 20 English manual", "sha256": "385ac3f959e9f95fdfb8048a6ca4058330dbe7b5b87c109015b1e800c40615ad"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/devel/storage-file-layout.html", "anchor": "", "locale": "zh-Hans", "version": "20", "build_id": 111, "page_key": "storage-file-layout.html", "extraction": "concept-introduction", "source_hash": "7b2d4aa0007100fe3f3cd28777f7bb94cbf0f1fe1c209a6ce2a1991aed1c8055", "fragment_sha256": "75cccea55320b48d9b18a16895bc2eab9984e7b238f7f0af81cbc71e86b8f4f9", "source_revision": "sha256:49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:98c980963b401d40bd50df72b909e7523e3148b8fdb48edd897de2efb67e5235", "translated_from_revision": "sha256:49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "body_sha256": "dd7117c7a63d6184b63b6b2eb6fa7355ad6ffa4682bb707c4e58fd1a63632b29", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "facts_zh": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "sections": [], "center_zh": {"title": "init fork", "locale": "zh-Hans", "source": {"key": "fork-init", "locale": "zh-Hans", "version": "20", "text_hash": "9937776094ca4dfae0ca7e78a47f557e9383b08c76e341ef8857c513014fb77a", "collection": "storage", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "payload": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/devel/storage-file-layout.html", "anchor": "", "locale": "zh-Hans", "version": "20", "build_id": 111, "page_key": "storage-file-layout.html", "extraction": "concept-introduction", "source_hash": "7b2d4aa0007100fe3f3cd28777f7bb94cbf0f1fe1c209a6ce2a1991aed1c8055", "fragment_sha256": "75cccea55320b48d9b18a16895bc2eab9984e7b238f7f0af81cbc71e86b8f4f9", "source_revision": "sha256:49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:98c980963b401d40bd50df72b909e7523e3148b8fdb48edd897de2efb67e5235", "translated_from_revision": "sha256:49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "body_sha256": "dd7117c7a63d6184b63b6b2eb6fa7355ad6ffa4682bb707c4e58fd1a63632b29", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "sections": [], "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code class=\"varname\">PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code class=\"varname\">PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code class=\"filename\">/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code class=\"varname\">PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a class=\"xref\" href=\"/zh/docs/devel/storage-file-layout.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code class=\"filename\">postgresql.conf</code>\u3001<code class=\"filename\">pg_hba.conf</code> \u548c\n<code class=\"filename\">pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code class=\"varname\">PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code class=\"varname\">PGDATA</code><code class=\"filename\">/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code class=\"structname\">pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/devel/storage-file-layout.html\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "version": "20", "link_map": {"/zh/docs/devel/storage-file-layout.html": "/docs/devel/storage-file-layout.html", "/zh/docs/devel/storage-file-layout.html#PGDATA-CONTENTS-TABLE": "/docs/devel/storage-file-layout.html#PGDATA-CONTENTS-TABLE"}, "body_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/devel/storage-file-layout.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/devel/storage-file-layout.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "453e6bed1f26191e1219c8816e6bae1afd0fddad59bdc6f66a716723be49081c", "content_hash": "9937776094ca4dfae0ca7e78a47f557e9383b08c76e341ef8857c513014fb77a", "source_database": "center", "source_revision": "49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "signature": "", "tables_zh": [], "description": ["\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002"], "manual_html": "", "manual_path": "/docs/devel/storage-file-layout.html", "sections_zh": [], "localization": {"status": "complete", "sources": [{"url": "/docs/devel/storage-file-layout.html", "method": "same-major semantic node", "sha256": "b9b6648fd2b429a3ecdd8415a850a0a45442ec89c62b4df06cbd7805b21a9363", "language": "zh", "matched_nodes": ["#STORAGE-FILE-LAYOUT/p[8]"]}], "language": "zh", "original_text": {"/summary": "Each table and index is stored in a separate file. For ordinary relations, these files are named after the table or index's filenode number, which can be found in pg_class . relfilenode . But for temporary relations, the file name is of the form t BBB _ FFF , where BBB is the process number of the backend which created the file, and FFF is the filenode number. In either case, in addition to the main file (a/k/a main fork), each table and index has a free space map (see Section 66.3 ), which stores information about free space available in the relation. The free space map is stored in a file named with the filenode number plus the suffix _fsm . Tables also have a visibility map , stored in a fork with the suffix _vm , to track which pages are known to have no dead tuples. The visibility map is described further in Section 66.4 . Unlogged tables and indexes have a third fork, known as the initialization fork, which is stored in a fork with the suffix _init (see Section 66.5 ).", "/category": "Relation forks", "/versions/20/description/0": "Each table and index is stored in a separate file. For ordinary relations, these files are named after the table or index's filenode number, which can be found in pg_class . relfilenode . But for temporary relations, the file name is of the form t BBB _ FFF , where BBB is the process number of the backend which created the file, and FFF is the filenode number. In either case, in addition to the main file (a/k/a main fork), each table and index has a free space map (see Section 66.3 ), which stores information about free space available in the relation. The free space map is stored in a file named with the filenode number plus the suffix _fsm . Tables also have a visibility map , stored in a fork with the suffix _vm , to track which pages are known to have no dead tuples. The visibility map is described further in Section 66.4 . Unlogged tables and indexes have a third fork, known as the initialization fork, which is stored in a fork with the suffix _init (see Section 66.5 ).", "/versions/20/facts/0/label": "Fork", "/versions/20/related/0/label": "Database file layout"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "760459dc6f9f40d059c2b6b97b4f0620ef6589234bdd4f05f26c49f1e58ad54f", "canonical_center_text_hash": "9937776094ca4dfae0ca7e78a47f557e9383b08c76e341ef8857c513014fb77a"}, "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "comparison_data": {"fork": "init"}, "comparison_hash": "9a71ceea15a6734051a0b6edce03c9c6693d014169c7559f2e0f39225247c9e8", "manual_language": "zh", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/devel/storage-file-layout.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/devel/storage-file-layout.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "source_revalidation": {"kind": "static-same-version-source-and-manual-replay", "audit": "wiki-audit-20261023", "runtime_rerun": false, "compared_fields": "entity membership and source-derived facts; presentation markup normalized", "source_revision": "49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac", "previous_source_revision": "4d3346909b201ac1648232cf290462a7070c119326f56196f1f0253ed80fae41"}}}}, "snapshot": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "related": [{"url": "/wiki/storage/storage-file-layout/?v=18", "label": "\u6570\u636e\u5e93\u6587\u4ef6\u5e03\u5c40"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2", "label": "18.6", "major": "18", "channel": "stable", "revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "sources": [{"url": "/docs/18/storage-file-layout.html", "path": "storage-file-layout.html", "label": "PostgreSQL 18 English manual", "sha256": "8cdf46b5af669f41f0a77c2541863d63454ef8fbb44d22a75e576cf1a7efc9c9"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/18/storage-file-layout.html", "anchor": "", "locale": "zh-Hans", "version": "18", "build_id": 107, "page_key": "storage-file-layout.html", "extraction": "concept-introduction", "source_hash": "b919cbcb8aedb49e32e5185e2c7753b075945bb7c0e00c59b81974d853143a0a", "fragment_sha256": "257fb050d6193b915e73cee0d717b72f3e9e669fd98d6e4cebef2941b6a6378b", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:08e987a66af27b98444a8057c256314eafa13611a3fb9e888214fc436824244b", "translated_from_revision": null}, "body_sha256": "4bed444e5fdf3abef08ed6fd7d3eb98d75b5df64c9749a15b1e259da0f57fc7d", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "facts_zh": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "sections": [], "center_zh": {"title": "init fork", "locale": "zh-Hans", "source": {"key": "fork-init", "locale": "zh-Hans", "version": "18", "text_hash": "c6218775266a6a5a66122117ff11b26e77ba24d789dc4b60be8f6e0601d08a68", "collection": "storage", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "payload": {"facts": [{"label": "\u5173\u7cfb\u5206\u53c9", "value": "init"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/18/storage-file-layout.html", "anchor": "", "locale": "zh-Hans", "version": "18", "build_id": 107, "page_key": "storage-file-layout.html", "extraction": "concept-introduction", "source_hash": "b919cbcb8aedb49e32e5185e2c7753b075945bb7c0e00c59b81974d853143a0a", "fragment_sha256": "257fb050d6193b915e73cee0d717b72f3e9e669fd98d6e4cebef2941b6a6378b", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:08e987a66af27b98444a8057c256314eafa13611a3fb9e888214fc436824244b", "translated_from_revision": null}, "body_sha256": "4bed444e5fdf3abef08ed6fd7d3eb98d75b5df64c9749a15b1e259da0f57fc7d", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "sections": [], "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code class=\"varname\">PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code class=\"varname\">PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code class=\"filename\">/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code class=\"varname\">PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a class=\"xref\" href=\"/zh/docs/18/storage-file-layout.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code class=\"filename\">postgresql.conf</code>\u3001<code class=\"filename\">pg_hba.conf</code> \u548c\n<code class=\"filename\">pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code class=\"varname\">PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code class=\"varname\">PGDATA</code><code class=\"filename\">/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code class=\"structname\">pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/18/storage-file-layout.html\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "version": "18", "link_map": {"/zh/docs/18/storage-file-layout.html": "/docs/18/storage-file-layout.html", "/zh/docs/18/storage-file-layout.html#PGDATA-CONTENTS-TABLE": "/docs/18/storage-file-layout.html#PGDATA-CONTENTS-TABLE"}, "body_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/18/storage-file-layout.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/18/storage-file-layout.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "a8ec77e75f283f8fea3392ea9d8c17924d8dd794fe088721cfa301d6bd857235", "content_hash": "c6218775266a6a5a66122117ff11b26e77ba24d789dc4b60be8f6e0601d08a68", "source_database": "center", "source_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "signature": "", "tables_zh": [], "description": ["\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002"], "manual_html": "", "manual_path": "/docs/18/storage-file-layout.html", "sections_zh": [], "localization": {"status": "complete", "sources": [{"url": "/docs/18/storage-file-layout.html", "method": "same-major semantic node", "sha256": "55056edf7352b4e414c1366406a307a72af33aeda7854ef3a8cc1fa5c0db23ad", "language": "zh", "matched_nodes": ["#STORAGE-FILE-LAYOUT/p[8]"]}], "language": "zh", "original_text": {"/versions/18/description/0": "Each table and index is stored in a separate file. For ordinary relations, these files are named after the table or index's filenode number, which can be found in pg_class . relfilenode . But for temporary relations, the file name is of the form t BBB _ FFF , where BBB is the process number of the backend which created the file, and FFF is the filenode number. In either case, in addition to the main file (a/k/a main fork), each table and index has a free space map (see Section 66.3 ), which stores information about free space available in the relation. The free space map is stored in a file named with the filenode number plus the suffix _fsm . Tables also have a visibility map , stored in a fork with the suffix _vm , to track which pages are known to have no dead tuples. The visibility map is described further in Section 66.4 . Unlogged tables and indexes have a third fork, known as the initialization fork, which is stored in a fork with the suffix _init (see Section 66.5 ).", "/versions/18/facts/0/label": "Fork", "/versions/18/related/0/label": "Database file layout"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "216a0cb22ef0f15f231d81fc642477590cbc64908af9c49ab6926697003d5b07", "canonical_center_text_hash": "c6218775266a6a5a66122117ff11b26e77ba24d789dc4b60be8f6e0601d08a68"}, "description_zh": "\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002 \u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a PGDATA \uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002 PGDATA \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f /var/lib/pgsql/data \u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002 PGDATA \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982 \u8868 66.1 \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6 postgresql.conf \u3001 pg_hba.conf \u548c pg_ident.conf \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 PGDATA \u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002 \u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c PGDATA /base \u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 pg_database \u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002", "comparison_data": {"fork": "init"}, "comparison_hash": "9a71ceea15a6734051a0b6edce03c9c6693d014169c7559f2e0f39225247c9e8", "manual_language": "zh", "description_zh_html": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/zh/docs/18/storage-file-layout.html#PGDATA-CONTENTS-TABLE\" rel=\"nofollow\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/zh/docs/18/storage-file-layout.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "center_zh_rendered": "<p>\u5b58\u50a8\u7ed3\u6784 fork-init\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n\u672c\u8282\u4ece\u6587\u4ef6\u548c\u76ee\u5f55\u7684\u5c42\u6b21\u63cf\u8ff0\u5b58\u50a8\u683c\u5f0f\u3002\n</p><p>\n\u4f20\u7edf\u4e0a\uff0c\u6570\u636e\u5e93\u96c6\u7c07\u6240\u4f7f\u7528\u7684\u914d\u7f6e\u6587\u4ef6\u548c\u6570\u636e\u6587\u4ef6\u90fd\u5b58\u653e\u5728\u96c6\u7c07\u7684\u6570\u636e\u76ee\u5f55\u4e2d\uff0c\u8fd9\u4e2a\u76ee\u5f55\u901a\u5e38\u79f0\u4e3a <code>PGDATA</code>\uff08\u540d\u5b57\u6765\u81ea\u53ef\u7528\u4e8e\u5b9a\u4e49\u5b83\u7684\u73af\u5883\u53d8\u91cf\uff09\u3002<code>PGDATA</code> \u7684\u4e00\u4e2a\u5e38\u89c1\u4f4d\u7f6e\u662f\n<code>/var/lib/pgsql/data</code>\u3002\u540c\u4e00\u53f0\u673a\u5668\u4e0a\u53ef\u4ee5\u5b58\u5728\u591a\u4e2a\u7531\u4e0d\u540c\u670d\u52a1\u5668\u5b9e\u4f8b\u7ba1\u7406\u7684\u96c6\u7c07\u3002\n</p><p>\n<code>PGDATA</code> \u76ee\u5f55\u5305\u542b\u82e5\u5e72\u5b50\u76ee\u5f55\u548c\u63a7\u5236\u6587\u4ef6\uff0c\u5982<a href=\"/docs/18/storage-file-layout.html#PGDATA-CONTENTS-TABLE\">\u8868\u00a066.1</a> \u6240\u793a\u3002\u9664\u8fd9\u4e9b\u5fc5\u9700\u9879\u4e4b\u5916\uff0c\u96c6\u7c07\u914d\u7f6e\u6587\u4ef6\n<code>postgresql.conf</code>\u3001<code>pg_hba.conf</code> \u548c\n<code>pg_ident.conf</code> \u4f20\u7edf\u4e0a\u4e5f\u5b58\u653e\u5728 <code>PGDATA</code>\n\u4e2d\uff0c\u4e0d\u8fc7\u4e5f\u53ef\u4ee5\u628a\u5b83\u4eec\u653e\u5728\u5176\u4ed6\u5730\u65b9\u3002\n</p><p>\n\u5bf9\u4e8e\u96c6\u7c07\u4e2d\u7684\u6bcf\u4e2a\u6570\u636e\u5e93\uff0c<code>PGDATA</code><code>/base</code>\n\u4e2d\u90fd\u6709\u4e00\u4e2a\u5b50\u76ee\u5f55\uff0c\u5176\u540d\u79f0\u662f\u8be5\u6570\u636e\u5e93\u5728 <code>pg_database</code>\n\u4e2d\u7684 OID\u3002\u8fd9\u4e2a\u5b50\u76ee\u5f55\u662f\u8be5\u6570\u636e\u5e93\u6587\u4ef6\u7684\u9ed8\u8ba4\u4f4d\u7f6e\uff1b\u7279\u522b\u662f\uff0c\u5b83\u7684\u7cfb\u7edf\u76ee\u5f55\u5c31\u5b58\u653e\u5728\u8fd9\u91cc\u3002\n</p><p><a href=\"/docs/18/storage-file-layout.html\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "comparison": {"left": "17", "right": "18", "status": "unchanged", "diff": ""}}