{"kind": "tool", "major": "18", "item": {"slug": "pg-receivewal", "name": "pg_receivewal", "name_zh": "", "category": "\u5ba2\u6237\u7aef\u7a0b\u5e8f", "summary": "pg_receivewal \u2014 \u4ece PostgreSQL \u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7", "aliases": ["pg_receivewal"], "content_hash": "c88a13219ece526d0708c6bc048af08136561df0af0e8b10a7d75b8d692938c0", "versions": {"10": {"facts": [{"label": "\u624b\u518c\u4e2d\u7684\u53ef\u6267\u884c\u7a0b\u5e8f", "value": "pg_receivewal"}, {"label": "\u7a0b\u5e8f\u7248\u672c", "value": "10.23"}, {"label": "\u53c2\u8003\u6e05\u5355", "value": "\u5ba2\u6237\u7aef\u7a0b\u5e8f"}, {"label": "\u9009\u9879\u5b9a\u4e49\u7ec4", "value": "18"}], "tables": [{"key": "options", "rows": [{"summary": "\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-D directory --directory= directory"}}, {"summary": "\u5f53\u6307\u5b9a --create-slot \u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "--if-not-exists"}}, {"summary": "\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-n --no-loop"}}, {"summary": "\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-s interval --status-interval= interval"}}, {"summary": "\u8981\u6c42 pg_receivewal \u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1 \u7b2c 26.2.6 \u8282 \uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c pg_receivewal \u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-S slotname --slot= slotname"}}, {"summary": "\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba --status-interval \u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "--synchronous"}}, {"summary": "\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-v --verbose"}}, {"summary": "\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684 gzip \u538b\u7f29\uff0c\u5e76\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff080 \u5230 9\uff0c0 \u8868\u793a\u4e0d\u538b\u7f29\uff0c9 \u8868\u793a\u6700\u4f73\u538b\u7f29\uff09\u3002\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0 .gz \u540e\u7f00\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-Z level --compress= level"}}, {"summary": "\u4ee5 \u8fde\u63a5\u5b57\u7b26\u4e32 \u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-d connstr --dbname= connstr"}}, {"summary": "\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGHOST \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-h host --host= host"}}, {"summary": "\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGPORT \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-p port --port= port"}}, {"summary": "\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-U username --username= username"}}, {"summary": "\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7 .pgpass \u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-w --no-password"}}, {"summary": "\u5f3a\u5236 pg_receivewal \u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-W --password"}}, {"summary": "\u4f7f\u7528 --slot \u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "--create-slot"}}, {"summary": "\u5220\u9664 --slot \u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "--drop-slot"}}, {"summary": "\u6253\u5370 pg_receivewal \u7684\u7248\u672c\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-V --version"}}, {"summary": "\u663e\u793a pg_receivewal \u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/10/app-pgreceivewal.html", "text": "-? --help"}}], "title": "\u624b\u518c\u4e2d\u7684\u9009\u9879", "columns": [{"key": "signature", "label": "\u9009\u9879\u4e0e\u53c2\u6570"}, {"key": "summary", "label": "\u8bf4\u660e"}]}], "options": [{"names": ["-D directory", "--directory= directory"], "summary": "Directory to write the output to.", "signature": "-D directory --directory= directory", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Directory to write the output to. This parameter is required."}, {"names": ["--if-not-exists"], "summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "signature": "--if-not-exists", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "summary": "Don't loop on connection errors. Instead, exit right away with an error.", "signature": "-n --no-loop", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["-s interval", "--status-interval= interval"], "summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "signature": "-s interval --status-interval= interval", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "signature": "-S slotname --slot= slotname", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "signature": "--synchronous", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "summary": "Enables verbose mode.", "signature": "-v --verbose", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Enables verbose mode."}, {"names": ["-Z level", "--compress= level"], "summary": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames.", "signature": "-Z level --compress= level", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames."}, {"names": ["-d connstr", "--dbname= connstr"], "summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "signature": "-d connstr --dbname= connstr", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "signature": "-h host --host= host", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "signature": "-p port --port= port", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "summary": "User name to connect as.", "signature": "-U username --username= username", "source_url": "/docs/10/app-pgreceivewal.html", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "signature": "-w --no-password", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "signature": "-W --password", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "signature": "--create-slot", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "summary": "Drop the replication slot with the name specified in --slot , then exit.", "signature": "--drop-slot", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "summary": "Print the pg_receivewal version and exit.", "signature": "-V --version", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "summary": "Show help about pg_receivewal command line arguments, and exit.", "signature": "-? --help", "source_url": "/docs/10/app-pgreceivewal.html", "description": "Show help about pg_receivewal command line arguments, and exit."}], "related": [{"url": "/wiki/conn/?v=10", "label": "libpq \u8fde\u63a5\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v10.23/postgresql-10.23.tar.bz2", "label": "10.23", "major": "10", "channel": "historical", "manifest": {"pdf": {"A4": {"url": "/files/documentation/pdf/10/postgresql-10-A4.pdf", "bytes": 12631706, "pages": 2591, "sha256": "34497ab9efb45c5bdf1bd11b9016b5451354feb462fa029cf74557a5fa5fbbc1", "built_at": "2026-09-26"}, "US": {"url": "/files/documentation/pdf/10/postgresql-10-US.pdf", "bytes": 12531684, "pages": 2724, "sha256": "429cc7133ddf4f97c560aa466dc9caea4b718721a8321e293357037cf0af4733", "built_at": "2026-09-26"}}, "tree": "10", "index": "index.html", "major": "10", "pages": 1085, "release": "10.23", "source_url": "https://ftp.postgresql.org/pub/source/v10.23/postgresql-10.23.tar.bz2", "svg_assets": 0, "source_mode": "en HTML verified against the pinned official archive", "source_sha256": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "revision": "f9301feba91e2e2566038a36b8cee0e4402db68989538f88670fddd20b1f78ea", "evidence_kind": "English manual and source declarations", "source_sha256": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "sources": [{"url": "https://pg.center/docs/10/app-pgreceivewal.html", "file": "app-pgreceivewal.html", "label": "10.23 English manual \u00b7 app-pgreceivewal.html", "anchor": "", "sha256": "ff7abcc16d8d8b7d42bd6db88fba87107c4c14616467e4981bb2c8d5a2dc702b", "language": "en", "original_url": "/docs/10/app-pgreceivewal.html"}, {"url": "https://pg.center/docs/10/reference-client.html", "file": "reference-client.html", "label": "Client applications inventory", "anchor": "", "sha256": "e4330732b6acd6c025a1fbdce45574b23d964de847a1b849ea88b98ab628d2e2", "language": "en", "original_url": "/docs/10/reference-client.html"}], "sections": [], "synopsis": ["pg_receivewal [ option ...]"], "signature": "pg_receivewal [ option ...]", "description": ["pg_receivewal \u2014 \u4ece PostgreSQL \u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7"], "environment": [], "manual_html": "<div><div class=\"refentry\" id=\"APP-PGRECEIVEWAL\">\n<div class=\"titlepage\"></div>\n<div class=\"refnamediv\">\n<h2><span class=\"refentrytitle\">pg_receivewal</span></h2>\n<p lang=\"zh\">pg_receivewal \u2014 \u4ece<span class=\"productname\">PostgreSQL</span>\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7</p>\n</div>\n<div class=\"refsynopsisdiv\">\n<h2 lang=\"zh\">\u5927\u7eb2</h2>\n<div class=\"cmdsynopsis\">\n<p id=\"id-1.9.4.15.4.1\"><code class=\"command\">pg_receivewal</code> [<em class=\"replaceable\"><code>option</code></em>...]</p>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.5\">\n<h2 lang=\"zh\">\u8bf4\u660e</h2>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u7528\u4e8e\u4ece\u6b63\u5728\u8fd0\u884c\u7684<span class=\"productname\">PostgreSQL</span>\u6570\u636e\u5e93\u96c6\u7c07\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u3002\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u6d41\u590d\u5236\u534f\u8bae\u4f20\u8f93\uff0c\u5e76\u5199\u5165\u672c\u5730\u76ee\u5f55\u4e2d\u7684\u6587\u4ef6\u3002\u8be5\u76ee\u5f55\u53ef\u4f5c\u4e3a\u4f7f\u7528\u65f6\u95f4\u70b9\u6062\u590d\u6267\u884c\u6062\u590d\u65f6\u7684\u5f52\u6863\u4f4d\u7f6e\uff08\u89c1<a class=\"xref\" href=\"/docs/10/continuous-archiving.html\" title=\"25.3.\u00a0\u6301\u7eed\u5f52\u6863\u548c\u65f6\u95f4\u70b9\u6062\u590d\uff08PITR\uff09\">\u7b2c\u00a025.3\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u670d\u52a1\u5668\u751f\u6210\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u540c\u65f6\u5b9e\u65f6\u6d41\u5f0f\u63a5\u6536\uff0c\u800c\u4e0d\u50cf<a class=\"xref\" href=\"/docs/10/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u90a3\u6837\u7b49\u5f85 WAL \u6bb5\u5b8c\u6210\u3002\u56e0\u6b64\uff0c\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u65f6\u65e0\u9700\u8bbe\u7f6e<a class=\"xref\" href=\"/docs/10/runtime-config-wal.html#GUC-ARCHIVE-TIMEOUT\">archive_timeout</a>\u3002</p>\n<p lang=\"zh\">\u4e0e PostgreSQL \u5907\u5e93\u7684 WAL \u63a5\u6536\u8fdb\u7a0b\u4e0d\u540c\uff0c<span class=\"application\">pg_receivewal</span>\u9ed8\u8ba4\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8981\u5b9e\u65f6\u5237\u5199 WAL \u6570\u636e\uff0c\u5fc5\u987b\u6307\u5b9a<code class=\"option\">--synchronous</code>\u9009\u9879\u3002\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u4e0d\u4f1a\u5e94\u7528 WAL\uff0c\u56e0\u6b64\u5f53<a class=\"xref\" href=\"/docs/10/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\">synchronous_commit</a>\u7b49\u4e8e<code class=\"literal\">remote_apply</code>\u65f6\uff0c\u4e0d\u5e94\u8ba9\u5b83\u6210\u4e3a\u540c\u6b65\u5907\u5e93\u3002\u5982\u679c\u8fd9\u6837\u505a\uff0c\u5b83\u770b\u8d77\u6765\u4f1a\u50cf\u4e00\u53f0\u6c38\u8fdc\u8ffd\u4e0d\u4e0a\u7684\u5907\u5e93\uff0c\u5e76\u5bfc\u81f4\u4e8b\u52a1\u63d0\u4ea4\u963b\u585e\u3002\u4e3a\u907f\u514d\u8fd9\u79cd\u60c5\u51b5\uff0c\u5e94\u5f53\u4e3a<a class=\"xref\" href=\"/docs/10/runtime-config-replication.html#GUC-SYNCHRONOUS-STANDBY-NAMES\">synchronous_standby_names</a>\u914d\u7f6e\u5408\u9002\u7684\u503c\uff0c\u6216\u8005\u4e3a<span class=\"application\">pg_receivewal</span>\u6307\u5b9a\u4e00\u4e2a\u4e0e\u4e4b\u4e0d\u5339\u914d\u7684<code class=\"varname\">application_name</code>\uff0c\u6216\u8005\u5c06<code class=\"varname\">synchronous_commit</code>\u6539\u6210<code class=\"literal\">remote_apply</code>\u4ee5\u5916\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u666e\u901a\u7684<span class=\"productname\">PostgreSQL</span>\u8fde\u63a5\u8fdb\u884c\u6d41\u5f0f\u4f20\u8f93\uff0c\u5e76\u4f7f\u7528\u590d\u5236\u534f\u8bae\u3002\u5efa\u7acb\u8be5\u8fde\u63a5\u65f6\uff0c\u5fc5\u987b\u4f7f\u7528\u5177\u6709<code class=\"literal\">REPLICATION</code>\u6743\u9650\uff08\u89c1<a class=\"xref\" href=\"/docs/10/role-attributes.html\" title=\"21.2.\u00a0\u89d2\u8272\u5c5e\u6027\">\u7b2c\u00a021.2\u00a0\u8282</a>\uff09\u7684\u7528\u6237\u6216\u8d85\u7ea7\u7528\u6237\uff0c\u5e76\u4e14<code class=\"filename\">pg_hba.conf</code>\u5fc5\u987b\u5141\u8bb8\u590d\u5236\u8fde\u63a5\u3002\u670d\u52a1\u5668\u8fd8\u5fc5\u987b\u5c06<a class=\"xref\" href=\"/docs/10/runtime-config-replication.html#GUC-MAX-WAL-SENDERS\">max_wal_senders</a>\u8bbe\u7f6e\u5f97\u8db3\u591f\u9ad8\uff0c\u4ee5\u4fbf\u81f3\u5c11\u4e3a\u8be5\u6d41\u4fdd\u7559\u4e00\u4e2a\u53ef\u7528\u4f1a\u8bdd\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u6d41\u4f20\u8f93\u7684\u8d77\u70b9\u4f1a\u5728 <span class=\"application\">pg_receivewal</span> \u542f\u52a8\u65f6\u8ba1\u7b97\uff1a</p>\n<div class=\"orderedlist\">\n<ol class=\"orderedlist\">\n<li class=\"listitem\" lang=\"zh\">\n<p>\u9996\u5148\uff0c\u626b\u63cf\u5199\u5165 WAL \u6bb5\u6587\u4ef6\u7684\u76ee\u5f55\uff0c\u627e\u5230\u6700\u65b0\u7684\u5df2\u5b8c\u6210\u6bb5\u6587\u4ef6\uff0c\u5e76\u5c06\u4e0b\u4e00\u4e2a WAL \u6bb5\u6587\u4ef6\u7684\u5f00\u5934\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u4f7f\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u70b9\uff0c\u5c31\u4f7f\u7528\u670d\u52a1\u5668\u901a\u8fc7<code class=\"literal\">IDENTIFY_SYSTEM</code>\u547d\u4ee4\u62a5\u544a\u7684\u6700\u65b0 WAL \u5237\u76d8\u4f4d\u7f6e\u3002</p>\n</li>\n</ol>\n</div>\n<p lang=\"zh\">\u5982\u679c\u56e0\u975e\u81f4\u547d\u9519\u8bef\u5bfc\u81f4\u8fde\u63a5\u4e2d\u65ad\u6216\u521d\u6b21\u8fde\u63a5\u65e0\u6cd5\u5efa\u7acb\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u65e0\u9650\u671f\u91cd\u8bd5\u8be5\u8fde\u63a5\uff0c\u5e76\u5c3d\u5feb\u91cd\u65b0\u5efa\u7acb\u6d41\u5f0f\u4f20\u8f93\u3002\u8981\u907f\u514d\u8fd9\u79cd\u884c\u4e3a\uff0c\u8bf7\u4f7f\u7528<code class=\"literal\">-n</code>\u53c2\u6570\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.6\">\n<h2 lang=\"zh\">\u9009\u9879</h2>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-D <em class=\"replaceable\"><code>directory</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--directory=<em class=\"replaceable\"><code>directory</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u53c2\u6570\u662f\u5fc5\u9700\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--if-not-exists</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5f53\u6307\u5b9a<code class=\"option\">--create-slot</code>\u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-n</code><br/></span><span class=\"term\"><code class=\"option\">--no-loop</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-s <em class=\"replaceable\"><code>interval</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--status-interval=<em class=\"replaceable\"><code>interval</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-S <em class=\"replaceable\"><code>slotname</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--slot=<em class=\"replaceable\"><code>slotname</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u8981\u6c42<span class=\"application\">pg_receivewal</span>\u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1<a class=\"xref\" href=\"/docs/10/warm-standby.html#STREAMING-REPLICATION-SLOTS\" title=\"26.2.6.\u00a0\u590d\u5236\u69fd\">\u7b2c\u00a026.2.6\u00a0\u8282</a>\uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002</p>\n<p lang=\"zh\">\u5f53\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\u65f6\uff0c\u4f7f\u7528\u590d\u5236\u69fd\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u4f46\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u62a5\u544a\u3002\u56e0\u6b64\uff0c\u8fd9\u79cd\u914d\u7f6e\u4f1a\u5bfc\u81f4\u4e3b\u5e93\u4e0a\u7684\u4e8b\u52a1\u957f\u65f6\u95f4\u7b49\u5f85\uff0c\u5b9e\u9645\u4e0a\u65e0\u6cd5\u4ee4\u4eba\u6ee1\u610f\u5730\u5de5\u4f5c\u3002\u8981\u8ba9\u8fd9\u79cd\u914d\u7f6e\u6b63\u786e\u5de5\u4f5c\uff0c\u8fd8\u5fc5\u987b\u53e6\u5916\u6307\u5b9a<code class=\"literal\">--synchronous</code>\u9009\u9879\uff08\u89c1\u4e0b\u6587\uff09\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--synchronous</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba<code class=\"literal\">--status-interval</code>\u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\uff0c\u5219\u5e94\u6307\u5b9a\u6b64\u9009\u9879\uff0c\u4ee5\u786e\u4fdd\u53ca\u65f6\u5411\u670d\u52a1\u5668\u53d1\u9001\u53cd\u9988\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-v</code><br/></span><span class=\"term\"><code class=\"option\">--verbose</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>level</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684 gzip \u538b\u7f29\uff0c\u5e76\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff080 \u5230 9\uff0c0 \u8868\u793a\u4e0d\u538b\u7f29\uff0c9 \u8868\u793a\u6700\u4f73\u538b\u7f29\uff09\u3002\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0<code class=\"filename\">.gz</code>\u540e\u7f00\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4ee5\u4e0b\u547d\u4ee4\u884c\u9009\u9879\u63a7\u5236\u6570\u636e\u5e93\u8fde\u63a5\u53c2\u6570\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-d <em class=\"replaceable\"><code>connstr</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--dbname=<em class=\"replaceable\"><code>connstr</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u4ee5<a class=\"link\" href=\"/docs/10/libpq.html#LIBPQ-CONNSTRING\" title=\"33.1.1.\u00a0\u8fde\u63a5\u5b57\u7b26\u4e32\">\u8fde\u63a5\u5b57\u7b26\u4e32</a>\u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002</p>\n<p lang=\"zh\">\u4e3a\u4e86\u4e0e\u5176\u4ed6\u5ba2\u6237\u7aef\u5e94\u7528\u4fdd\u6301\u4e00\u81f4\uff0c\u8be5\u9009\u9879\u88ab\u79f0\u4e3a<code class=\"literal\">--dbname</code>\uff0c\u4f46\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u5e76\u4e0d\u8fde\u63a5\u5230\u96c6\u7c07\u4e2d\u7684\u4efb\u4f55\u7279\u5b9a\u6570\u636e\u5e93\uff0c\u8fde\u63a5\u5b57\u7b26\u4e32\u4e2d\u7684\u6570\u636e\u5e93\u540d\u4f1a\u88ab\u5ffd\u7565\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-h <em class=\"replaceable\"><code>host</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--host=<em class=\"replaceable\"><code>host</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGHOST</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-p <em class=\"replaceable\"><code>port</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--port=<em class=\"replaceable\"><code>port</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGPORT</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-U <em class=\"replaceable\"><code>username</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--username=<em class=\"replaceable\"><code>username</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-w</code><br/></span><span class=\"term\"><code class=\"option\">--no-password</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7<code class=\"filename\">.pgpass</code>\u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-W</code><br/></span><span class=\"term\"><code class=\"option\">--password</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f3a\u5236<span class=\"application\">pg_receivewal</span>\u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4ece\u6765\u90fd\u4e0d\u662f\u5fc5\u9700\u7684\uff0c\u56e0\u4e3a\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u81ea\u52a8\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u4e0d\u8fc7\uff0c<span class=\"application\">pg_receivewal</span>\u9700\u8981\u5148\u6d6a\u8d39\u4e00\u6b21\u8fde\u63a5\u5c1d\u8bd5\uff0c\u624d\u80fd\u53d1\u73b0\u670d\u52a1\u5668\u9700\u8981\u5bc6\u7801\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u8f93\u5165<code class=\"option\">-W</code>\u4ee5\u907f\u514d\u8fd9\u6b21\u989d\u5916\u7684\u8fde\u63a5\u5c1d\u8bd5\u662f\u503c\u5f97\u7684\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e3a\u4e86\u63a7\u5236\u7269\u7406\u590d\u5236\u69fd\uff0c<span class=\"application\">pg_receivewal</span> \u53ef\u4ee5\u6267\u884c\u4e0b\u5217\u4e24\u79cd\u64cd\u4f5c\u4e4b\u4e00\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">--create-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u4f7f\u7528<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--drop-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5220\u9664<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u8fd8\u53ef\u4ee5\u4f7f\u7528\u5176\u4ed6\u9009\u9879\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-V</code><br/></span><span class=\"term\"><code class=\"option\">--version</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6253\u5370<span class=\"application\">pg_receivewal</span>\u7684\u7248\u672c\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-?</code><br/></span><span class=\"term\"><code class=\"option\">--help</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u663e\u793a<span class=\"application\">pg_receivewal</span>\u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.7\">\n<h2 lang=\"zh\">\u73af\u5883</h2>\n<p lang=\"zh\">\u4e0e\u5927\u591a\u6570\u5176\u4ed6<span class=\"productname\">PostgreSQL</span>\u5de5\u5177\u4e00\u6837\uff0c\u6b64\u5de5\u5177\u4e5f\u4f7f\u7528<span class=\"application\">libpq</span>\u652f\u6301\u7684\u73af\u5883\u53d8\u91cf\uff08\u89c1<a class=\"xref\" href=\"/docs/10/libpq-envars.html\" title=\"33.14.\u00a0\u73af\u5883\u53d8\u91cf\">\u7b2c\u00a033.14\u00a0\u8282</a>\uff09\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.8\">\n<h2 lang=\"zh\">\u6ce8\u89e3</h2>\n<p lang=\"zh\">\u5f53\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u800c\u4e0d\u662f<a class=\"xref\" href=\"/docs/10/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u4f5c\u4e3a\u4e3b\u8981 WAL \u5907\u4efd\u65b9\u6cd5\u65f6\uff0c\u5f3a\u70c8\u5efa\u8bae\u4f7f\u7528\u590d\u5236\u69fd\u3002\u5426\u5219\uff0c\u670d\u52a1\u5668\u53ef\u4ee5\u5728\u8fd9\u4e9b\u9884\u5199\u5f0f\u65e5\u5fd7\u6587\u4ef6\u5907\u4efd\u5b8c\u6210\u4e4b\u524d\u81ea\u7531\u56de\u6536\u6216\u5220\u9664\u5b83\u4eec\uff0c\u56e0\u4e3a\u65e0\u8bba\u662f<a class=\"xref\" href=\"/docs/10/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u8fd8\u662f\u590d\u5236\u69fd\uff0c\u90fd\u4e0d\u4f1a\u5411\u670d\u52a1\u5668\u63d0\u4f9b WAL \u6d41\u5df2\u7ecf\u5f52\u6863\u5230\u4ec0\u4e48\u4f4d\u7f6e\u7684\u4fe1\u606f\u3002\u4e0d\u8fc7\u8bf7\u6ce8\u610f\uff0c\u5982\u679c\u63a5\u6536\u7aef\u8ddf\u4e0d\u4e0a\u83b7\u53d6 WAL \u6570\u636e\u7684\u901f\u5ea6\uff0c\u590d\u5236\u69fd\u4f1a\u5360\u6ee1\u670d\u52a1\u5668\u7684\u78c1\u76d8\u7a7a\u95f4\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.9\">\n<h2 lang=\"zh\">\u793a\u4f8b</h2>\n<p lang=\"zh\">\u8981\u4ece\u4f4d\u4e8e<code class=\"literal\">mydbserver</code>\u7684\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\uff0c\u5e76\u5c06\u5176\u5b58\u50a8\u5230\u672c\u5730\u76ee\u5f55<code class=\"filename\">/usr/local/pgsql/archive</code>\uff1a</p>\n<pre class=\"screen\"><code class=\"prompt\">$</code> <strong class=\"userinput\"><code>pg_receivewal -h mydbserver -D /usr/local/pgsql/archive</code></strong>\n</pre></div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.10\">\n<h2 lang=\"zh\">\u53c2\u89c1</h2>\n<span class=\"simplelist\"><a class=\"xref\" href=\"https://pg.center/docs/10/app-pgbasebackup.html\" title=\"pg_basebackup\"><span class=\"refentrytitle\">pg_basebackup</span></a></span></div>\n</div></div>", "manual_path": "app-pgreceivewal.html", "localization": {"status": "complete", "sources": [{"url": "/docs/10/app-pgreceivewal.html", "method": "same-major semantic node", "sha256": "3e36ce3ec0afcf1d208984f184b8807b0de88345ce6605ea439327361ad48e72", "language": "zh", "matched_nodes": ["#APP-PGRECEIVEWAL/div[2]/p[1]", "#APP-PGRECEIVEWAL/div[3]/h2[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[1]", "#APP-PGRECEIVEWAL/div[4]/p[1]", "#APP-PGRECEIVEWAL/div[4]/p[2]", "#APP-PGRECEIVEWAL/div[4]/p[3]", "#APP-PGRECEIVEWAL/div[4]/p[4]", "#APP-PGRECEIVEWAL/div[4]/p[5]", "#APP-PGRECEIVEWAL/div[4]/p[7]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[11]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[11]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[9]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/p[2]", "#APP-PGRECEIVEWAL/div[5]/p[4]", "#APP-PGRECEIVEWAL/div[5]/p[6]", "#APP-PGRECEIVEWAL/div[6]/h2[0]", "#APP-PGRECEIVEWAL/div[6]/p[1]", "#APP-PGRECEIVEWAL/div[7]/h2[0]", "#APP-PGRECEIVEWAL/div[7]/p[1]", "#APP-PGRECEIVEWAL/div[8]/h2[0]", "#APP-PGRECEIVEWAL/div[8]/p[1]", "#APP-PGRECEIVEWAL/div[9]/h2[0]"]}], "language": "zh", "original_text": {"/versions/10/description/0": "pg_receivewal \u2014 stream write-ahead logs from a PostgreSQL server", "/versions/10/facts/0/label": "Documented executable", "/versions/10/facts/1/label": "Executable version", "/versions/10/facts/2/label": "Reference inventory", "/versions/10/facts/2/value": "Client applications", "/versions/10/facts/3/label": "Option definition groups", "/versions/10/tables/0/title": "Documented options", "/versions/10/related/0/label": "libpq connection parameters", "/versions/10/tables/0/rows/0/summary": "Directory to write the output to.", "/versions/10/tables/0/rows/1/summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "/versions/10/tables/0/rows/2/summary": "Don't loop on connection errors. Instead, exit right away with an error.", "/versions/10/tables/0/rows/3/summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "/versions/10/tables/0/rows/4/summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "/versions/10/tables/0/rows/5/summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "/versions/10/tables/0/rows/6/summary": "Enables verbose mode.", "/versions/10/tables/0/rows/7/summary": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames.", "/versions/10/tables/0/rows/8/summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "/versions/10/tables/0/rows/9/summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "/versions/10/tables/0/columns/0/label": "Option and arguments", "/versions/10/tables/0/columns/1/label": "Description", "/versions/10/tables/0/rows/10/summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "/versions/10/tables/0/rows/11/summary": "User name to connect as.", "/versions/10/tables/0/rows/12/summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "/versions/10/tables/0/rows/13/summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "/versions/10/tables/0/rows/14/summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "/versions/10/tables/0/rows/15/summary": "Drop the replication slot with the name specified in --slot , then exit.", "/versions/10/tables/0/rows/16/summary": "Print the pg_receivewal version and exit.", "/versions/10/tables/0/rows/17/summary": "Show help about pg_receivewal command line arguments, and exit."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "b500e01a01cc47e392026ced33f68db6b94b66cf9e4d87adbacf9b4410e23e04"}, "comparison_data": {"options": [{"names": ["-D directory", "--directory= directory"], "signature": "-D directory --directory= directory", "description": "Directory to write the output to. This parameter is required."}, {"names": ["--if-not-exists"], "signature": "--if-not-exists", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "signature": "-n --no-loop", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["-s interval", "--status-interval= interval"], "signature": "-s interval --status-interval= interval", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "signature": "-S slotname --slot= slotname", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "signature": "--synchronous", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "signature": "-v --verbose", "description": "Enables verbose mode."}, {"names": ["-Z level", "--compress= level"], "signature": "-Z level --compress= level", "description": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames."}, {"names": ["-d connstr", "--dbname= connstr"], "signature": "-d connstr --dbname= connstr", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "signature": "-h host --host= host", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "signature": "-p port --port= port", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "signature": "-U username --username= username", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "signature": "-w --no-password", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "signature": "-W --password", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "signature": "--create-slot", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "signature": "--drop-slot", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "signature": "-V --version", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "signature": "-? --help", "description": "Show help about pg_receivewal command line arguments, and exit."}], "synopsis": ["pg_receivewal [ option ...]"], "environment": []}, "comparison_hash": "5775c1e18fcb165689cbc4339c72e071d2678021fab4d41c6d8a73c24cda716d", "manual_language": "zh"}, "11": {"facts": [{"label": "\u624b\u518c\u4e2d\u7684\u53ef\u6267\u884c\u7a0b\u5e8f", "value": "pg_receivewal"}, {"label": "\u7a0b\u5e8f\u7248\u672c", "value": "11.22"}, {"label": "\u53c2\u8003\u6e05\u5355", "value": "\u5ba2\u6237\u7aef\u7a0b\u5e8f"}, {"label": "\u9009\u9879\u5b9a\u4e49\u7ec4", "value": "20"}], "tables": [{"key": "options", "rows": [{"summary": "\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-D directory --directory= directory"}}, {"summary": "\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-E lsn --endpos= lsn"}}, {"summary": "\u5f53\u6307\u5b9a --create-slot \u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "--if-not-exists"}}, {"summary": "\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-n --no-loop"}}, {"summary": "\u6b64\u9009\u9879\u4f1a\u4f7f pg_receivewal \u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "--no-sync"}}, {"summary": "\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-s interval --status-interval= interval"}}, {"summary": "\u8981\u6c42 pg_receivewal \u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1 \u7b2c 26.2.6 \u8282 \uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c pg_receivewal \u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-S slotname --slot= slotname"}}, {"summary": "\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba --status-interval \u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "--synchronous"}}, {"summary": "\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-v --verbose"}}, {"summary": "\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684 gzip \u538b\u7f29\uff0c\u5e76\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff080 \u5230 9\uff0c0 \u8868\u793a\u4e0d\u538b\u7f29\uff0c9 \u8868\u793a\u6700\u4f73\u538b\u7f29\uff09\u3002\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0 .gz \u540e\u7f00\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-Z level --compress= level"}}, {"summary": "\u4ee5 \u8fde\u63a5\u5b57\u7b26\u4e32 \u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-d connstr --dbname= connstr"}}, {"summary": "\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGHOST \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-h host --host= host"}}, {"summary": "\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGPORT \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-p port --port= port"}}, {"summary": "\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-U username --username= username"}}, {"summary": "\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7 .pgpass \u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-w --no-password"}}, {"summary": "\u5f3a\u5236 pg_receivewal \u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-W --password"}}, {"summary": "\u4f7f\u7528 --slot \u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "--create-slot"}}, {"summary": "\u5220\u9664 --slot \u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "--drop-slot"}}, {"summary": "\u6253\u5370 pg_receivewal \u7684\u7248\u672c\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-V --version"}}, {"summary": "\u663e\u793a pg_receivewal \u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/11/app-pgreceivewal.html", "text": "-? --help"}}], "title": "\u624b\u518c\u4e2d\u7684\u9009\u9879", "columns": [{"key": "signature", "label": "\u9009\u9879\u4e0e\u53c2\u6570"}, {"key": "summary", "label": "\u8bf4\u660e"}]}], "options": [{"names": ["-D directory", "--directory= directory"], "summary": "Directory to write the output to.", "signature": "-D directory --directory= directory", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "signature": "-E lsn --endpos= lsn", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "signature": "--if-not-exists", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "summary": "Don't loop on connection errors. Instead, exit right away with an error.", "signature": "-n --no-loop", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "signature": "--no-sync", "source_url": "/docs/11/app-pgreceivewal.html", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "signature": "-s interval --status-interval= interval", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "signature": "-S slotname --slot= slotname", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "signature": "--synchronous", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "summary": "Enables verbose mode.", "signature": "-v --verbose", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Enables verbose mode."}, {"names": ["-Z level", "--compress= level"], "summary": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames.", "signature": "-Z level --compress= level", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames."}, {"names": ["-d connstr", "--dbname= connstr"], "summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "signature": "-d connstr --dbname= connstr", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "signature": "-h host --host= host", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "signature": "-p port --port= port", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "summary": "User name to connect as.", "signature": "-U username --username= username", "source_url": "/docs/11/app-pgreceivewal.html", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "signature": "-w --no-password", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "signature": "-W --password", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "signature": "--create-slot", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "summary": "Drop the replication slot with the name specified in --slot , then exit.", "signature": "--drop-slot", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "summary": "Print the pg_receivewal version and exit.", "signature": "-V --version", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "summary": "Show help about pg_receivewal command line arguments, and exit.", "signature": "-? --help", "source_url": "/docs/11/app-pgreceivewal.html", "description": "Show help about pg_receivewal command line arguments, and exit."}], "related": [{"url": "/wiki/conn/?v=11", "label": "libpq \u8fde\u63a5\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v11.22/postgresql-11.22.tar.bz2", "label": "11.22", "major": "11", "channel": "historical", "manifest": {"pdf": {"A4": {"url": "/files/documentation/pdf/11/postgresql-11-A4.pdf", "bytes": 13057499, "pages": 2732, "sha256": "41d75855e610d0d9b8802b87dc5b080bef8d7e91c7cf69401fbf8d3cf801b4b5", "built_at": "2026-09-26"}, "US": {"url": "/files/documentation/pdf/11/postgresql-11-US.pdf", "bytes": 12961189, "pages": 2883, "sha256": "6a8899ef36935a5b7ed2b436207564a567a4ef1eb1c2200195876b8de4d4fa30", "built_at": "2026-09-26"}}, "tree": "11", "index": "index.html", "major": "11", "pages": 1125, "release": "11.22", "source_url": "https://ftp.postgresql.org/pub/source/v11.22/postgresql-11.22.tar.bz2", "svg_assets": 0, "source_mode": "en HTML verified against the pinned official archive", "source_sha256": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "revision": "53315ddaf3b3f9e6669fd1edc096bbb2cd4a65ea3e836c89e542b43af9ba3a7f", "evidence_kind": "English manual and source declarations", "source_sha256": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "sources": [{"url": "https://pg.center/docs/11/app-pgreceivewal.html", "file": "app-pgreceivewal.html", "label": "11.22 English manual \u00b7 app-pgreceivewal.html", "anchor": "", "sha256": "e2846a79562df487cc2a3d1d8db0bf76c758279e31fc48a2828ec7383d52ac38", "language": "en", "original_url": "/docs/11/app-pgreceivewal.html"}, {"url": "https://pg.center/docs/11/reference-client.html", "file": "reference-client.html", "label": "Client applications inventory", "anchor": "", "sha256": "3a30e696058b118a55cc42892c39671d9bae86f77e1024d5ebcc4688ad9ab4c3", "language": "en", "original_url": "/docs/11/reference-client.html"}], "sections": [], "synopsis": ["pg_receivewal [ option ...]"], "signature": "pg_receivewal [ option ...]", "description": ["pg_receivewal \u2014 \u4ece PostgreSQL \u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7"], "environment": [], "manual_html": "<div><div class=\"refentry\" id=\"APP-PGRECEIVEWAL\">\n<div class=\"titlepage\"></div>\n<div class=\"refnamediv\">\n<h2><span class=\"refentrytitle\">pg_receivewal</span></h2>\n<p lang=\"zh\">pg_receivewal \u2014 \u4ece<span class=\"productname\">PostgreSQL</span>\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7</p>\n</div>\n<div class=\"refsynopsisdiv\">\n<h2 lang=\"zh\">\u5927\u7eb2</h2>\n<div class=\"cmdsynopsis\">\n<p id=\"id-1.9.4.15.4.1\"><code class=\"command\">pg_receivewal</code> [<em class=\"replaceable\"><code>option</code></em>...]</p>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.5\">\n<h2 lang=\"zh\">\u8bf4\u660e</h2>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u7528\u4e8e\u4ece\u6b63\u5728\u8fd0\u884c\u7684<span class=\"productname\">PostgreSQL</span>\u6570\u636e\u5e93\u96c6\u7c07\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u3002\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u6d41\u590d\u5236\u534f\u8bae\u4f20\u8f93\uff0c\u5e76\u5199\u5165\u672c\u5730\u76ee\u5f55\u4e2d\u7684\u6587\u4ef6\u3002\u8be5\u76ee\u5f55\u53ef\u4f5c\u4e3a\u4f7f\u7528\u65f6\u95f4\u70b9\u6062\u590d\u6267\u884c\u6062\u590d\u65f6\u7684\u5f52\u6863\u4f4d\u7f6e\uff08\u89c1<a class=\"xref\" href=\"/docs/11/continuous-archiving.html\" title=\"25.3.\u00a0\u6301\u7eed\u5f52\u6863\u548c\u65f6\u95f4\u70b9\u6062\u590d\uff08PITR\uff09\">\u7b2c\u00a025.3\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u670d\u52a1\u5668\u751f\u6210\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u540c\u65f6\u5b9e\u65f6\u6d41\u5f0f\u63a5\u6536\uff0c\u800c\u4e0d\u50cf<a class=\"xref\" href=\"/docs/11/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u90a3\u6837\u7b49\u5f85 WAL \u6bb5\u5b8c\u6210\u3002\u56e0\u6b64\uff0c\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u65f6\u65e0\u9700\u8bbe\u7f6e<a class=\"xref\" href=\"/docs/11/runtime-config-wal.html#GUC-ARCHIVE-TIMEOUT\">archive_timeout</a>\u3002</p>\n<p lang=\"zh\">\u4e0e PostgreSQL \u5907\u5e93\u7684 WAL \u63a5\u6536\u8fdb\u7a0b\u4e0d\u540c\uff0c<span class=\"application\">pg_receivewal</span>\u9ed8\u8ba4\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8981\u5b9e\u65f6\u5237\u5199 WAL \u6570\u636e\uff0c\u5fc5\u987b\u6307\u5b9a<code class=\"option\">--synchronous</code>\u9009\u9879\u3002\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u4e0d\u4f1a\u5e94\u7528 WAL\uff0c\u56e0\u6b64\u5f53<a class=\"xref\" href=\"/docs/11/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\">synchronous_commit</a>\u7b49\u4e8e<code class=\"literal\">remote_apply</code>\u65f6\uff0c\u4e0d\u5e94\u8ba9\u5b83\u6210\u4e3a\u540c\u6b65\u5907\u5e93\u3002\u5982\u679c\u8fd9\u6837\u505a\uff0c\u5b83\u770b\u8d77\u6765\u4f1a\u50cf\u4e00\u53f0\u6c38\u8fdc\u8ffd\u4e0d\u4e0a\u7684\u5907\u5e93\uff0c\u5e76\u5bfc\u81f4\u4e8b\u52a1\u63d0\u4ea4\u963b\u585e\u3002\u4e3a\u907f\u514d\u8fd9\u79cd\u60c5\u51b5\uff0c\u5e94\u5f53\u4e3a<a class=\"xref\" href=\"/docs/11/runtime-config-replication.html#GUC-SYNCHRONOUS-STANDBY-NAMES\">synchronous_standby_names</a>\u914d\u7f6e\u5408\u9002\u7684\u503c\uff0c\u6216\u8005\u4e3a<span class=\"application\">pg_receivewal</span>\u6307\u5b9a\u4e00\u4e2a\u4e0e\u4e4b\u4e0d\u5339\u914d\u7684<code class=\"varname\">application_name</code>\uff0c\u6216\u8005\u5c06<code class=\"varname\">synchronous_commit</code>\u6539\u6210<code class=\"literal\">remote_apply</code>\u4ee5\u5916\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u666e\u901a\u7684<span class=\"productname\">PostgreSQL</span>\u8fde\u63a5\u8fdb\u884c\u6d41\u5f0f\u4f20\u8f93\uff0c\u5e76\u4f7f\u7528\u590d\u5236\u534f\u8bae\u3002\u5efa\u7acb\u8be5\u8fde\u63a5\u65f6\uff0c\u5fc5\u987b\u4f7f\u7528\u5177\u6709<code class=\"literal\">REPLICATION</code>\u6743\u9650\uff08\u89c1<a class=\"xref\" href=\"/docs/11/role-attributes.html\" title=\"21.2.\u00a0\u89d2\u8272\u5c5e\u6027\">\u7b2c\u00a021.2\u00a0\u8282</a>\uff09\u7684\u7528\u6237\u6216\u8d85\u7ea7\u7528\u6237\uff0c\u5e76\u4e14<code class=\"filename\">pg_hba.conf</code>\u5fc5\u987b\u5141\u8bb8\u590d\u5236\u8fde\u63a5\u3002\u670d\u52a1\u5668\u8fd8\u5fc5\u987b\u5c06<a class=\"xref\" href=\"/docs/11/runtime-config-replication.html#GUC-MAX-WAL-SENDERS\">max_wal_senders</a>\u8bbe\u7f6e\u5f97\u8db3\u591f\u9ad8\uff0c\u4ee5\u4fbf\u81f3\u5c11\u4e3a\u8be5\u6d41\u4fdd\u7559\u4e00\u4e2a\u53ef\u7528\u4f1a\u8bdd\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u6d41\u4f20\u8f93\u7684\u8d77\u70b9\u4f1a\u5728 <span class=\"application\">pg_receivewal</span> \u542f\u52a8\u65f6\u8ba1\u7b97\uff1a</p>\n<div class=\"orderedlist\">\n<ol class=\"orderedlist\">\n<li class=\"listitem\" lang=\"zh\">\n<p>\u9996\u5148\uff0c\u626b\u63cf\u5199\u5165 WAL \u6bb5\u6587\u4ef6\u7684\u76ee\u5f55\uff0c\u627e\u5230\u6700\u65b0\u7684\u5df2\u5b8c\u6210\u6bb5\u6587\u4ef6\uff0c\u5e76\u5c06\u4e0b\u4e00\u4e2a WAL \u6bb5\u6587\u4ef6\u7684\u5f00\u5934\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u4f7f\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u70b9\uff0c\u5c31\u4f7f\u7528\u670d\u52a1\u5668\u901a\u8fc7<code class=\"literal\">IDENTIFY_SYSTEM</code>\u547d\u4ee4\u62a5\u544a\u7684\u6700\u65b0 WAL \u5237\u76d8\u4f4d\u7f6e\u3002</p>\n</li>\n</ol>\n</div>\n<p lang=\"zh\">\u5982\u679c\u56e0\u975e\u81f4\u547d\u9519\u8bef\u5bfc\u81f4\u8fde\u63a5\u4e2d\u65ad\u6216\u521d\u6b21\u8fde\u63a5\u65e0\u6cd5\u5efa\u7acb\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u65e0\u9650\u671f\u91cd\u8bd5\u8be5\u8fde\u63a5\uff0c\u5e76\u5c3d\u5feb\u91cd\u65b0\u5efa\u7acb\u6d41\u5f0f\u4f20\u8f93\u3002\u8981\u907f\u514d\u8fd9\u79cd\u884c\u4e3a\uff0c\u8bf7\u4f7f\u7528<code class=\"literal\">-n</code>\u53c2\u6570\u3002</p>\n<p lang=\"zh\">\u5728\u6ca1\u6709\u81f4\u547d\u9519\u8bef\u7684\u60c5\u51b5\u4e0b\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u4e00\u76f4\u8fd0\u884c\uff0c\u76f4\u5230\u6536\u5230<span class=\"systemitem\">SIGINT</span>\uff08<span class=\"keycap\"><strong>Control</strong></span>+<span class=\"keycap\"><strong>C</strong></span>\uff09\u4fe1\u53f7\u4e3a\u6b62\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.6\">\n<h2 lang=\"zh\">\u9009\u9879</h2>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-D <em class=\"replaceable\"><code>directory</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--directory=<em class=\"replaceable\"><code>directory</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u53c2\u6570\u662f\u5fc5\u9700\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-E <em class=\"replaceable\"><code>lsn</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--endpos=<em class=\"replaceable\"><code>lsn</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u5b58\u5728 LSN \u6070\u597d\u7b49\u4e8e<em class=\"replaceable\"><code>lsn</code></em>\u7684\u8bb0\u5f55\uff0c\u8be5\u8bb0\u5f55\u4e5f\u4f1a\u88ab\u5904\u7406\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--if-not-exists</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5f53\u6307\u5b9a<code class=\"option\">--create-slot</code>\u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-n</code><br/></span><span class=\"term\"><code class=\"option\">--no-loop</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--no-sync</code></span></dt>\n<dd>\n<p lang=\"zh\">\u6b64\u9009\u9879\u4f1a\u4f7f<code class=\"command\">pg_receivewal</code>\u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4e0e<code class=\"literal\">--synchronous</code>\u4e0d\u517c\u5bb9\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-s <em class=\"replaceable\"><code>interval</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--status-interval=<em class=\"replaceable\"><code>interval</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-S <em class=\"replaceable\"><code>slotname</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--slot=<em class=\"replaceable\"><code>slotname</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u8981\u6c42<span class=\"application\">pg_receivewal</span>\u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1<a class=\"xref\" href=\"/docs/11/warm-standby.html#STREAMING-REPLICATION-SLOTS\" title=\"26.2.6.\u00a0\u590d\u5236\u69fd\">\u7b2c\u00a026.2.6\u00a0\u8282</a>\uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002</p>\n<p lang=\"zh\">\u5f53\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\u65f6\uff0c\u4f7f\u7528\u590d\u5236\u69fd\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u4f46\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u62a5\u544a\u3002\u56e0\u6b64\uff0c\u8fd9\u79cd\u914d\u7f6e\u4f1a\u5bfc\u81f4\u4e3b\u5e93\u4e0a\u7684\u4e8b\u52a1\u957f\u65f6\u95f4\u7b49\u5f85\uff0c\u5b9e\u9645\u4e0a\u65e0\u6cd5\u4ee4\u4eba\u6ee1\u610f\u5730\u5de5\u4f5c\u3002\u8981\u8ba9\u8fd9\u79cd\u914d\u7f6e\u6b63\u786e\u5de5\u4f5c\uff0c\u8fd8\u5fc5\u987b\u53e6\u5916\u6307\u5b9a<code class=\"literal\">--synchronous</code>\u9009\u9879\uff08\u89c1\u4e0b\u6587\uff09\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--synchronous</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba<code class=\"literal\">--status-interval</code>\u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\uff0c\u5219\u5e94\u6307\u5b9a\u6b64\u9009\u9879\uff0c\u4ee5\u786e\u4fdd\u53ca\u65f6\u5411\u670d\u52a1\u5668\u53d1\u9001\u53cd\u9988\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-v</code><br/></span><span class=\"term\"><code class=\"option\">--verbose</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>level</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684 gzip \u538b\u7f29\uff0c\u5e76\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff080 \u5230 9\uff0c0 \u8868\u793a\u4e0d\u538b\u7f29\uff0c9 \u8868\u793a\u6700\u4f73\u538b\u7f29\uff09\u3002\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0<code class=\"filename\">.gz</code>\u540e\u7f00\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4ee5\u4e0b\u547d\u4ee4\u884c\u9009\u9879\u63a7\u5236\u6570\u636e\u5e93\u8fde\u63a5\u53c2\u6570\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-d <em class=\"replaceable\"><code>connstr</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--dbname=<em class=\"replaceable\"><code>connstr</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u4ee5<a class=\"link\" href=\"/docs/11/libpq.html#LIBPQ-CONNSTRING\" title=\"34.1.1.\u00a0\u8fde\u63a5\u5b57\u7b26\u4e32\">\u8fde\u63a5\u5b57\u7b26\u4e32</a>\u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002</p>\n<p lang=\"zh\">\u4e3a\u4e86\u4e0e\u5176\u4ed6\u5ba2\u6237\u7aef\u5e94\u7528\u4fdd\u6301\u4e00\u81f4\uff0c\u8be5\u9009\u9879\u88ab\u79f0\u4e3a<code class=\"literal\">--dbname</code>\uff0c\u4f46\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u5e76\u4e0d\u8fde\u63a5\u5230\u96c6\u7c07\u4e2d\u7684\u4efb\u4f55\u7279\u5b9a\u6570\u636e\u5e93\uff0c\u8fde\u63a5\u5b57\u7b26\u4e32\u4e2d\u7684\u6570\u636e\u5e93\u540d\u4f1a\u88ab\u5ffd\u7565\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-h <em class=\"replaceable\"><code>host</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--host=<em class=\"replaceable\"><code>host</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGHOST</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-p <em class=\"replaceable\"><code>port</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--port=<em class=\"replaceable\"><code>port</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGPORT</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-U <em class=\"replaceable\"><code>username</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--username=<em class=\"replaceable\"><code>username</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-w</code><br/></span><span class=\"term\"><code class=\"option\">--no-password</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7<code class=\"filename\">.pgpass</code>\u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-W</code><br/></span><span class=\"term\"><code class=\"option\">--password</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f3a\u5236<span class=\"application\">pg_receivewal</span>\u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4ece\u6765\u90fd\u4e0d\u662f\u5fc5\u9700\u7684\uff0c\u56e0\u4e3a\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u81ea\u52a8\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u4e0d\u8fc7\uff0c<span class=\"application\">pg_receivewal</span>\u9700\u8981\u5148\u6d6a\u8d39\u4e00\u6b21\u8fde\u63a5\u5c1d\u8bd5\uff0c\u624d\u80fd\u53d1\u73b0\u670d\u52a1\u5668\u9700\u8981\u5bc6\u7801\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u8f93\u5165<code class=\"option\">-W</code>\u4ee5\u907f\u514d\u8fd9\u6b21\u989d\u5916\u7684\u8fde\u63a5\u5c1d\u8bd5\u662f\u503c\u5f97\u7684\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e3a\u4e86\u63a7\u5236\u7269\u7406\u590d\u5236\u69fd\uff0c<span class=\"application\">pg_receivewal</span> \u53ef\u4ee5\u6267\u884c\u4e0b\u5217\u4e24\u79cd\u64cd\u4f5c\u4e4b\u4e00\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">--create-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u4f7f\u7528<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--drop-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5220\u9664<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u8fd8\u53ef\u4ee5\u4f7f\u7528\u4e0b\u5217\u5176\u4ed6\u9009\u9879\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-V</code><br/></span><span class=\"term\"><code class=\"option\">--version</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6253\u5370<span class=\"application\">pg_receivewal</span>\u7684\u7248\u672c\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-?</code><br/></span><span class=\"term\"><code class=\"option\">--help</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u663e\u793a<span class=\"application\">pg_receivewal</span>\u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.7\">\n<h2 lang=\"zh\">\u9000\u51fa\u72b6\u6001</h2>\n<p lang=\"zh\">\u5f53\u56e0<span class=\"systemitem\">SIGINT</span>\u4fe1\u53f7\u7ec8\u6b62\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u4ee5\u72b6\u6001 0 \u9000\u51fa\u3002\uff08\u8fd9\u662f\u5176\u6b63\u5e38\u7ed3\u675f\u65b9\u5f0f\uff0c\u56e0\u6b64\u4e0d\u7b97\u9519\u8bef\u3002\uff09\u5bf9\u4e8e\u81f4\u547d\u9519\u8bef\u6216\u5176\u4ed6\u4fe1\u53f7\uff0c\u9000\u51fa\u72b6\u6001\u5c06\u4e3a\u975e\u96f6\u503c\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.8\">\n<h2 lang=\"zh\">\u73af\u5883</h2>\n<p lang=\"zh\">\u4e0e\u5927\u591a\u6570\u5176\u4ed6<span class=\"productname\">PostgreSQL</span>\u5de5\u5177\u4e00\u6837\uff0c\u6b64\u5de5\u5177\u4e5f\u4f7f\u7528<span class=\"application\">libpq</span>\u652f\u6301\u7684\u73af\u5883\u53d8\u91cf\uff08\u89c1<a class=\"xref\" href=\"/docs/11/libpq-envars.html\" title=\"34.14.\u00a0\u73af\u5883\u53d8\u91cf\">\u7b2c\u00a034.14\u00a0\u8282</a>\uff09\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.9\">\n<h2 lang=\"zh\">\u6ce8\u89e3</h2>\n<p lang=\"zh\">\u5f53\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u800c\u4e0d\u662f<a class=\"xref\" href=\"/docs/11/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u4f5c\u4e3a\u4e3b\u8981 WAL \u5907\u4efd\u65b9\u6cd5\u65f6\uff0c\u5f3a\u70c8\u5efa\u8bae\u4f7f\u7528\u590d\u5236\u69fd\u3002\u5426\u5219\uff0c\u670d\u52a1\u5668\u53ef\u4ee5\u5728\u8fd9\u4e9b\u9884\u5199\u5f0f\u65e5\u5fd7\u6587\u4ef6\u5907\u4efd\u5b8c\u6210\u4e4b\u524d\u81ea\u7531\u56de\u6536\u6216\u5220\u9664\u5b83\u4eec\uff0c\u56e0\u4e3a\u65e0\u8bba\u662f<a class=\"xref\" href=\"/docs/11/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u8fd8\u662f\u590d\u5236\u69fd\uff0c\u90fd\u4e0d\u4f1a\u5411\u670d\u52a1\u5668\u63d0\u4f9b WAL \u6d41\u5df2\u7ecf\u5f52\u6863\u5230\u4ec0\u4e48\u4f4d\u7f6e\u7684\u4fe1\u606f\u3002\u4e0d\u8fc7\u8bf7\u6ce8\u610f\uff0c\u5982\u679c\u63a5\u6536\u7aef\u8ddf\u4e0d\u4e0a\u83b7\u53d6 WAL \u6570\u636e\u7684\u901f\u5ea6\uff0c\u590d\u5236\u69fd\u4f1a\u5360\u6ee1\u670d\u52a1\u5668\u7684\u78c1\u76d8\u7a7a\u95f4\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u6e90\u96c6\u7c07\u542f\u7528\u4e86\u7ec4\u6743\u9650\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u63a5\u6536\u5230\u7684 WAL \u6587\u4ef6\u4e0a\u4fdd\u7559\u8fd9\u4e9b\u7ec4\u6743\u9650\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.10\">\n<h2 lang=\"zh\">\u793a\u4f8b</h2>\n<p lang=\"zh\">\u8981\u4ece\u4f4d\u4e8e<code class=\"literal\">mydbserver</code>\u7684\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\uff0c\u5e76\u5c06\u5176\u5b58\u50a8\u5230\u672c\u5730\u76ee\u5f55<code class=\"filename\">/usr/local/pgsql/archive</code>\uff1a</p>\n<pre class=\"screen\"><code class=\"prompt\">$</code> <strong class=\"userinput\"><code>pg_receivewal -h mydbserver -D /usr/local/pgsql/archive</code></strong>\n</pre>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.11\">\n<h2 lang=\"zh\">\u53e6\u89c1</h2><span class=\"simplelist\"><a class=\"xref\" href=\"https://pg.center/docs/11/app-pgbasebackup.html\" title=\"pg_basebackup\"><span class=\"refentrytitle\">pg_basebackup</span></a></span>\n</div>\n</div></div>", "manual_path": "app-pgreceivewal.html", "localization": {"status": "complete", "sources": [{"url": "/docs/11/app-pgreceivewal.html", "method": "same-major semantic node", "sha256": "e1e899aeb6122f830bae377674899644fdbab19d076cfdffdfbadc8c09170a56", "language": "zh", "matched_nodes": ["#APP-PGRECEIVEWAL/div[10]/h2[0]", "#APP-PGRECEIVEWAL/div[2]/p[1]", "#APP-PGRECEIVEWAL/div[3]/h2[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[1]", "#APP-PGRECEIVEWAL/div[4]/p[1]", "#APP-PGRECEIVEWAL/div[4]/p[2]", "#APP-PGRECEIVEWAL/div[4]/p[3]", "#APP-PGRECEIVEWAL/div[4]/p[4]", "#APP-PGRECEIVEWAL/div[4]/p[5]", "#APP-PGRECEIVEWAL/div[4]/p[7]", "#APP-PGRECEIVEWAL/div[4]/p[8]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[11]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[17]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[9]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/p[2]", "#APP-PGRECEIVEWAL/div[5]/p[4]", "#APP-PGRECEIVEWAL/div[5]/p[6]", "#APP-PGRECEIVEWAL/div[6]/h2[0]", "#APP-PGRECEIVEWAL/div[6]/p[1]", "#APP-PGRECEIVEWAL/div[7]/h2[0]", "#APP-PGRECEIVEWAL/div[7]/p[1]", "#APP-PGRECEIVEWAL/div[8]/h2[0]", "#APP-PGRECEIVEWAL/div[8]/p[1]", "#APP-PGRECEIVEWAL/div[8]/p[2]", "#APP-PGRECEIVEWAL/div[9]/h2[0]", "#APP-PGRECEIVEWAL/div[9]/p[1]"]}], "language": "zh", "original_text": {"/versions/11/description/0": "pg_receivewal \u2014 stream write-ahead logs from a PostgreSQL server", "/versions/11/facts/0/label": "Documented executable", "/versions/11/facts/1/label": "Executable version", "/versions/11/facts/2/label": "Reference inventory", "/versions/11/facts/2/value": "Client applications", "/versions/11/facts/3/label": "Option definition groups", "/versions/11/tables/0/title": "Documented options", "/versions/11/related/0/label": "libpq connection parameters", "/versions/11/tables/0/rows/0/summary": "Directory to write the output to.", "/versions/11/tables/0/rows/1/summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "/versions/11/tables/0/rows/2/summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "/versions/11/tables/0/rows/3/summary": "Don't loop on connection errors. Instead, exit right away with an error.", "/versions/11/tables/0/rows/4/summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "/versions/11/tables/0/rows/5/summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "/versions/11/tables/0/rows/6/summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "/versions/11/tables/0/rows/7/summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "/versions/11/tables/0/rows/8/summary": "Enables verbose mode.", "/versions/11/tables/0/rows/9/summary": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames.", "/versions/11/tables/0/columns/0/label": "Option and arguments", "/versions/11/tables/0/columns/1/label": "Description", "/versions/11/tables/0/rows/10/summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "/versions/11/tables/0/rows/11/summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "/versions/11/tables/0/rows/12/summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "/versions/11/tables/0/rows/13/summary": "User name to connect as.", "/versions/11/tables/0/rows/14/summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "/versions/11/tables/0/rows/15/summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "/versions/11/tables/0/rows/16/summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "/versions/11/tables/0/rows/17/summary": "Drop the replication slot with the name specified in --slot , then exit.", "/versions/11/tables/0/rows/18/summary": "Print the pg_receivewal version and exit.", "/versions/11/tables/0/rows/19/summary": "Show help about pg_receivewal command line arguments, and exit."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "265176fe1a94d56ae492bfdc7481f78ce60ce87ceb807699a206241ee74034d2"}, "comparison_data": {"options": [{"names": ["-D directory", "--directory= directory"], "signature": "-D directory --directory= directory", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "signature": "-E lsn --endpos= lsn", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "signature": "--if-not-exists", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "signature": "-n --no-loop", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "signature": "--no-sync", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "signature": "-s interval --status-interval= interval", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "signature": "-S slotname --slot= slotname", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "signature": "--synchronous", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "signature": "-v --verbose", "description": "Enables verbose mode."}, {"names": ["-Z level", "--compress= level"], "signature": "-Z level --compress= level", "description": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames."}, {"names": ["-d connstr", "--dbname= connstr"], "signature": "-d connstr --dbname= connstr", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "signature": "-h host --host= host", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "signature": "-p port --port= port", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "signature": "-U username --username= username", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "signature": "-w --no-password", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "signature": "-W --password", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "signature": "--create-slot", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "signature": "--drop-slot", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "signature": "-V --version", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "signature": "-? --help", "description": "Show help about pg_receivewal command line arguments, and exit."}], "synopsis": ["pg_receivewal [ option ...]"], "environment": []}, "comparison_hash": "9ae69760509e8cbee7d9a8a6c07ffe3e0ad4416c3c28594bb521c0db4549cacc", "manual_language": "zh"}, "12": {"facts": [{"label": "\u624b\u518c\u4e2d\u7684\u53ef\u6267\u884c\u7a0b\u5e8f", "value": "pg_receivewal"}, {"label": "\u7a0b\u5e8f\u7248\u672c", "value": "12.22"}, {"label": "\u53c2\u8003\u6e05\u5355", "value": "\u5ba2\u6237\u7aef\u7a0b\u5e8f"}, {"label": "\u9009\u9879\u5b9a\u4e49\u7ec4", "value": "20"}], "tables": [{"key": "options", "rows": [{"summary": "\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-D directory --directory= directory"}}, {"summary": "\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-E lsn --endpos= lsn"}}, {"summary": "\u5f53\u6307\u5b9a --create-slot \u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "--if-not-exists"}}, {"summary": "\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-n --no-loop"}}, {"summary": "\u6b64\u9009\u9879\u4f1a\u4f7f pg_receivewal \u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "--no-sync"}}, {"summary": "\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-s interval --status-interval= interval"}}, {"summary": "\u8981\u6c42 pg_receivewal \u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1 \u7b2c 26.2.6 \u8282 \uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c pg_receivewal \u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-S slotname --slot= slotname"}}, {"summary": "\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba --status-interval \u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "--synchronous"}}, {"summary": "\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-v --verbose"}}, {"summary": "\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684 gzip \u538b\u7f29\uff0c\u5e76\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff080 \u5230 9\uff0c0 \u8868\u793a\u4e0d\u538b\u7f29\uff0c9 \u8868\u793a\u6700\u4f73\u538b\u7f29\uff09\u3002\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0 .gz \u540e\u7f00\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-Z level --compress= level"}}, {"summary": "\u4ee5 \u8fde\u63a5\u5b57\u7b26\u4e32 \u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-d connstr --dbname= connstr"}}, {"summary": "\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGHOST \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-h host --host= host"}}, {"summary": "\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGPORT \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-p port --port= port"}}, {"summary": "\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-U username --username= username"}}, {"summary": "\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7 .pgpass \u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-w --no-password"}}, {"summary": "\u5f3a\u5236 pg_receivewal \u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-W --password"}}, {"summary": "\u4f7f\u7528 --slot \u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "--create-slot"}}, {"summary": "\u5220\u9664 --slot \u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "--drop-slot"}}, {"summary": "\u6253\u5370 pg_receivewal \u7684\u7248\u672c\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-V --version"}}, {"summary": "\u663e\u793a pg_receivewal \u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/12/app-pgreceivewal.html", "text": "-? --help"}}], "title": "\u624b\u518c\u4e2d\u7684\u9009\u9879", "columns": [{"key": "signature", "label": "\u9009\u9879\u4e0e\u53c2\u6570"}, {"key": "summary", "label": "\u8bf4\u660e"}]}], "options": [{"names": ["-D directory", "--directory= directory"], "summary": "Directory to write the output to.", "signature": "-D directory --directory= directory", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "signature": "-E lsn --endpos= lsn", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "signature": "--if-not-exists", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "summary": "Don't loop on connection errors. Instead, exit right away with an error.", "signature": "-n --no-loop", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "signature": "--no-sync", "source_url": "/docs/12/app-pgreceivewal.html", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "signature": "-s interval --status-interval= interval", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "signature": "-S slotname --slot= slotname", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "signature": "--synchronous", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "summary": "Enables verbose mode.", "signature": "-v --verbose", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Enables verbose mode."}, {"names": ["-Z level", "--compress= level"], "summary": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames.", "signature": "-Z level --compress= level", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames."}, {"names": ["-d connstr", "--dbname= connstr"], "summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "signature": "-d connstr --dbname= connstr", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "signature": "-h host --host= host", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "signature": "-p port --port= port", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "summary": "User name to connect as.", "signature": "-U username --username= username", "source_url": "/docs/12/app-pgreceivewal.html", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "signature": "-w --no-password", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "signature": "-W --password", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "signature": "--create-slot", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "summary": "Drop the replication slot with the name specified in --slot , then exit.", "signature": "--drop-slot", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "summary": "Print the pg_receivewal version and exit.", "signature": "-V --version", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "summary": "Show help about pg_receivewal command line arguments, and exit.", "signature": "-? --help", "source_url": "/docs/12/app-pgreceivewal.html", "description": "Show help about pg_receivewal command line arguments, and exit."}], "related": [{"url": "/wiki/conn/?v=12", "label": "libpq \u8fde\u63a5\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v12.22/postgresql-12.22.tar.bz2", "label": "12.22", "major": "12", "channel": "historical", "manifest": {"pdf": {"A4": {"url": "/files/documentation/pdf/12/postgresql-12-A4.pdf", "bytes": 13424351, "pages": 2803, "sha256": "7422cf53fd1939e7a3d2925231a88b0330e468afa5393627cac0ff86158a0621", "built_at": "2026-09-26"}, "US": {"url": "/files/documentation/pdf/12/postgresql-12-US.pdf", "bytes": 13322565, "pages": 2958, "sha256": "51f3b04e72907fc38512685946223452ea65f84419c60c66241dfa3396035e77", "built_at": "2026-09-26"}}, "tree": "12", "index": "index.html", "major": "12", "pages": 1131, "release": "12.22", "source_url": "https://ftp.postgresql.org/pub/source/v12.22/postgresql-12.22.tar.bz2", "svg_assets": 2, "source_mode": "en HTML verified against the pinned official archive", "source_sha256": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "revision": "7a827e97cbfacd7febff75f34443e2043e40723de5b6d8c9d81a9430b65a37e4", "evidence_kind": "English manual and source declarations", "source_sha256": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "sources": [{"url": "https://pg.center/docs/12/app-pgreceivewal.html", "file": "app-pgreceivewal.html", "label": "12.22 English manual \u00b7 app-pgreceivewal.html", "anchor": "", "sha256": "9a7f99024279047d758d483e47215f0ee7c49173d0eab744a8124b822875af25", "language": "en", "original_url": "/docs/12/app-pgreceivewal.html"}, {"url": "https://pg.center/docs/12/reference-client.html", "file": "reference-client.html", "label": "Client applications inventory", "anchor": "", "sha256": "089624dd131f52eea682b304f87a1acb03392ee7bcf78b000699c9b17c7ca22d", "language": "en", "original_url": "/docs/12/reference-client.html"}], "sections": [], "synopsis": ["pg_receivewal [ option ...]"], "signature": "pg_receivewal [ option ...]", "description": ["pg_receivewal \u2014 \u4ece PostgreSQL \u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7"], "environment": [], "manual_html": "<div><div class=\"refentry\" id=\"APP-PGRECEIVEWAL\">\n<div class=\"titlepage\"></div>\n<div class=\"refnamediv\">\n<h2><span class=\"refentrytitle\">pg_receivewal</span></h2>\n<p lang=\"zh\">pg_receivewal \u2014 \u4ece<span class=\"productname\">PostgreSQL</span>\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7</p>\n</div>\n<div class=\"refsynopsisdiv\">\n<h2 lang=\"zh\">\u5927\u7eb2</h2>\n<div class=\"cmdsynopsis\">\n<p id=\"id-1.9.4.15.4.1\"><code class=\"command\">pg_receivewal</code> [<em class=\"replaceable\"><code>option</code></em>...]</p>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.5\">\n<h2 lang=\"zh\">\u8bf4\u660e</h2>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u7528\u4e8e\u4ece\u6b63\u5728\u8fd0\u884c\u7684<span class=\"productname\">PostgreSQL</span>\u6570\u636e\u5e93\u96c6\u7c07\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u3002\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u6d41\u590d\u5236\u534f\u8bae\u4f20\u8f93\uff0c\u5e76\u5199\u5165\u672c\u5730\u76ee\u5f55\u4e2d\u7684\u6587\u4ef6\u3002\u8be5\u76ee\u5f55\u53ef\u4f5c\u4e3a\u4f7f\u7528\u65f6\u95f4\u70b9\u6062\u590d\u6267\u884c\u6062\u590d\u65f6\u7684\u5f52\u6863\u4f4d\u7f6e\uff08\u89c1<a class=\"xref\" href=\"/docs/12/continuous-archiving.html\" title=\"25.3.\u00a0\u6301\u7eed\u5f52\u6863\u548c\u65f6\u95f4\u70b9\u6062\u590d\uff08PITR\uff09\">\u7b2c\u00a025.3\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u670d\u52a1\u5668\u751f\u6210\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u540c\u65f6\u5b9e\u65f6\u6d41\u5f0f\u63a5\u6536\uff0c\u800c\u4e0d\u50cf<a class=\"xref\" href=\"/docs/12/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u90a3\u6837\u7b49\u5f85 WAL \u6bb5\u5b8c\u6210\u3002\u56e0\u6b64\uff0c\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u65f6\u65e0\u9700\u8bbe\u7f6e<a class=\"xref\" href=\"/docs/12/runtime-config-wal.html#GUC-ARCHIVE-TIMEOUT\">archive_timeout</a>\u3002</p>\n<p lang=\"zh\">\u4e0e PostgreSQL \u5907\u5e93\u7684 WAL \u63a5\u6536\u8fdb\u7a0b\u4e0d\u540c\uff0c<span class=\"application\">pg_receivewal</span>\u9ed8\u8ba4\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8981\u5b9e\u65f6\u5237\u5199 WAL \u6570\u636e\uff0c\u5fc5\u987b\u6307\u5b9a<code class=\"option\">--synchronous</code>\u9009\u9879\u3002\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u4e0d\u4f1a\u5e94\u7528 WAL\uff0c\u56e0\u6b64\u5f53<a class=\"xref\" href=\"/docs/12/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\">synchronous_commit</a>\u7b49\u4e8e<code class=\"literal\">remote_apply</code>\u65f6\uff0c\u4e0d\u5e94\u8ba9\u5b83\u6210\u4e3a\u540c\u6b65\u5907\u5e93\u3002\u5982\u679c\u8fd9\u6837\u505a\uff0c\u5b83\u770b\u8d77\u6765\u4f1a\u50cf\u4e00\u53f0\u6c38\u8fdc\u8ffd\u4e0d\u4e0a\u7684\u5907\u5e93\uff0c\u5e76\u5bfc\u81f4\u4e8b\u52a1\u63d0\u4ea4\u963b\u585e\u3002\u4e3a\u907f\u514d\u8fd9\u79cd\u60c5\u51b5\uff0c\u5e94\u5f53\u4e3a<a class=\"xref\" href=\"/docs/12/runtime-config-replication.html#GUC-SYNCHRONOUS-STANDBY-NAMES\">synchronous_standby_names</a>\u914d\u7f6e\u5408\u9002\u7684\u503c\uff0c\u6216\u8005\u4e3a<span class=\"application\">pg_receivewal</span>\u6307\u5b9a\u4e00\u4e2a\u4e0e\u4e4b\u4e0d\u5339\u914d\u7684<code class=\"varname\">application_name</code>\uff0c\u6216\u8005\u5c06<code class=\"varname\">synchronous_commit</code>\u6539\u6210<code class=\"literal\">remote_apply</code>\u4ee5\u5916\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u666e\u901a\u7684<span class=\"productname\">PostgreSQL</span>\u8fde\u63a5\u8fdb\u884c\u6d41\u5f0f\u4f20\u8f93\uff0c\u5e76\u4f7f\u7528\u590d\u5236\u534f\u8bae\u3002\u5efa\u7acb\u8be5\u8fde\u63a5\u65f6\uff0c\u5fc5\u987b\u4f7f\u7528\u5177\u6709<code class=\"literal\">REPLICATION</code>\u6743\u9650\uff08\u89c1<a class=\"xref\" href=\"/docs/12/role-attributes.html\" title=\"21.2.\u00a0\u89d2\u8272\u5c5e\u6027\">\u7b2c\u00a021.2\u00a0\u8282</a>\uff09\u7684\u7528\u6237\u6216\u8d85\u7ea7\u7528\u6237\uff0c\u5e76\u4e14<code class=\"filename\">pg_hba.conf</code>\u5fc5\u987b\u5141\u8bb8\u590d\u5236\u8fde\u63a5\u3002\u670d\u52a1\u5668\u8fd8\u5fc5\u987b\u5c06<a class=\"xref\" href=\"/docs/12/runtime-config-replication.html#GUC-MAX-WAL-SENDERS\">max_wal_senders</a>\u8bbe\u7f6e\u5f97\u8db3\u591f\u9ad8\uff0c\u4ee5\u4fbf\u81f3\u5c11\u4e3a\u8be5\u6d41\u4fdd\u7559\u4e00\u4e2a\u53ef\u7528\u4f1a\u8bdd\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u6d41\u4f20\u8f93\u7684\u8d77\u70b9\u4f1a\u5728 <span class=\"application\">pg_receivewal</span> \u542f\u52a8\u65f6\u8ba1\u7b97\uff1a</p>\n<div class=\"orderedlist\">\n<ol class=\"orderedlist\">\n<li class=\"listitem\" lang=\"zh\">\n<p>\u9996\u5148\uff0c\u626b\u63cf\u5199\u5165 WAL \u6bb5\u6587\u4ef6\u7684\u76ee\u5f55\uff0c\u627e\u5230\u6700\u65b0\u7684\u5df2\u5b8c\u6210\u6bb5\u6587\u4ef6\uff0c\u5e76\u5c06\u4e0b\u4e00\u4e2a WAL \u6bb5\u6587\u4ef6\u7684\u5f00\u5934\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u4f7f\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u70b9\uff0c\u5c31\u4f7f\u7528\u670d\u52a1\u5668\u901a\u8fc7<code class=\"literal\">IDENTIFY_SYSTEM</code>\u547d\u4ee4\u62a5\u544a\u7684\u6700\u65b0 WAL \u5237\u76d8\u4f4d\u7f6e\u3002</p>\n</li>\n</ol>\n</div>\n<p lang=\"zh\">\u5982\u679c\u56e0\u975e\u81f4\u547d\u9519\u8bef\u5bfc\u81f4\u8fde\u63a5\u4e2d\u65ad\u6216\u521d\u6b21\u8fde\u63a5\u65e0\u6cd5\u5efa\u7acb\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u65e0\u9650\u671f\u91cd\u8bd5\u8be5\u8fde\u63a5\uff0c\u5e76\u5c3d\u5feb\u91cd\u65b0\u5efa\u7acb\u6d41\u5f0f\u4f20\u8f93\u3002\u8981\u907f\u514d\u8fd9\u79cd\u884c\u4e3a\uff0c\u8bf7\u4f7f\u7528<code class=\"literal\">-n</code>\u53c2\u6570\u3002</p>\n<p lang=\"zh\">\u5728\u6ca1\u6709\u81f4\u547d\u9519\u8bef\u7684\u60c5\u51b5\u4e0b\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u4e00\u76f4\u8fd0\u884c\uff0c\u76f4\u5230\u6536\u5230<span class=\"systemitem\">SIGINT</span>\uff08<span class=\"keycap\"><strong>Control</strong></span>+<span class=\"keycap\"><strong>C</strong></span>\uff09\u4fe1\u53f7\u4e3a\u6b62\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.6\">\n<h2 lang=\"zh\">\u9009\u9879</h2>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-D <em class=\"replaceable\"><code>directory</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--directory=<em class=\"replaceable\"><code>directory</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u53c2\u6570\u662f\u5fc5\u9700\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-E <em class=\"replaceable\"><code>lsn</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--endpos=<em class=\"replaceable\"><code>lsn</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u5b58\u5728 LSN \u6070\u597d\u7b49\u4e8e<em class=\"replaceable\"><code>lsn</code></em>\u7684\u8bb0\u5f55\uff0c\u8be5\u8bb0\u5f55\u4e5f\u4f1a\u88ab\u5904\u7406\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--if-not-exists</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5f53\u6307\u5b9a<code class=\"option\">--create-slot</code>\u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-n</code><br/></span><span class=\"term\"><code class=\"option\">--no-loop</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--no-sync</code></span></dt>\n<dd>\n<p lang=\"zh\">\u6b64\u9009\u9879\u4f1a\u4f7f<code class=\"command\">pg_receivewal</code>\u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4e0e<code class=\"literal\">--synchronous</code>\u4e0d\u517c\u5bb9\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-s <em class=\"replaceable\"><code>interval</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--status-interval=<em class=\"replaceable\"><code>interval</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-S <em class=\"replaceable\"><code>slotname</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--slot=<em class=\"replaceable\"><code>slotname</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u8981\u6c42<span class=\"application\">pg_receivewal</span>\u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1<a class=\"xref\" href=\"/docs/12/warm-standby.html#STREAMING-REPLICATION-SLOTS\" title=\"26.2.6.\u00a0\u590d\u5236\u69fd\">\u7b2c\u00a026.2.6\u00a0\u8282</a>\uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002</p>\n<p lang=\"zh\">\u5f53\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\u65f6\uff0c\u4f7f\u7528\u590d\u5236\u69fd\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u4f46\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u62a5\u544a\u3002\u56e0\u6b64\uff0c\u8fd9\u79cd\u914d\u7f6e\u4f1a\u5bfc\u81f4\u4e3b\u5e93\u4e0a\u7684\u4e8b\u52a1\u957f\u65f6\u95f4\u7b49\u5f85\uff0c\u5b9e\u9645\u4e0a\u65e0\u6cd5\u4ee4\u4eba\u6ee1\u610f\u5730\u5de5\u4f5c\u3002\u8981\u8ba9\u8fd9\u79cd\u914d\u7f6e\u6b63\u786e\u5de5\u4f5c\uff0c\u8fd8\u5fc5\u987b\u53e6\u5916\u6307\u5b9a<code class=\"literal\">--synchronous</code>\u9009\u9879\uff08\u89c1\u4e0b\u6587\uff09\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--synchronous</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba<code class=\"literal\">--status-interval</code>\u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\uff0c\u5219\u5e94\u6307\u5b9a\u6b64\u9009\u9879\uff0c\u4ee5\u786e\u4fdd\u53ca\u65f6\u5411\u670d\u52a1\u5668\u53d1\u9001\u53cd\u9988\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-v</code><br/></span><span class=\"term\"><code class=\"option\">--verbose</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>level</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684 gzip \u538b\u7f29\uff0c\u5e76\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff080 \u5230 9\uff0c0 \u8868\u793a\u4e0d\u538b\u7f29\uff0c9 \u8868\u793a\u6700\u4f73\u538b\u7f29\uff09\u3002\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0<code class=\"filename\">.gz</code>\u540e\u7f00\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4ee5\u4e0b\u547d\u4ee4\u884c\u9009\u9879\u63a7\u5236\u6570\u636e\u5e93\u8fde\u63a5\u53c2\u6570\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-d <em class=\"replaceable\"><code>connstr</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--dbname=<em class=\"replaceable\"><code>connstr</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u4ee5<a class=\"link\" href=\"/docs/12/libpq.html#LIBPQ-CONNSTRING\" title=\"33.1.1.\u00a0\u8fde\u63a5\u5b57\u7b26\u4e32\">\u8fde\u63a5\u5b57\u7b26\u4e32</a>\u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002</p>\n<p lang=\"zh\">\u4e3a\u4e86\u4e0e\u5176\u4ed6\u5ba2\u6237\u7aef\u5e94\u7528\u4fdd\u6301\u4e00\u81f4\uff0c\u8be5\u9009\u9879\u88ab\u79f0\u4e3a<code class=\"literal\">--dbname</code>\uff0c\u4f46\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u5e76\u4e0d\u8fde\u63a5\u5230\u96c6\u7c07\u4e2d\u7684\u4efb\u4f55\u7279\u5b9a\u6570\u636e\u5e93\uff0c\u8fde\u63a5\u5b57\u7b26\u4e32\u4e2d\u7684\u6570\u636e\u5e93\u540d\u4f1a\u88ab\u5ffd\u7565\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-h <em class=\"replaceable\"><code>host</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--host=<em class=\"replaceable\"><code>host</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGHOST</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-p <em class=\"replaceable\"><code>port</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--port=<em class=\"replaceable\"><code>port</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGPORT</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-U <em class=\"replaceable\"><code>username</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--username=<em class=\"replaceable\"><code>username</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-w</code><br/></span><span class=\"term\"><code class=\"option\">--no-password</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7<code class=\"filename\">.pgpass</code>\u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-W</code><br/></span><span class=\"term\"><code class=\"option\">--password</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f3a\u5236<span class=\"application\">pg_receivewal</span>\u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4ece\u6765\u90fd\u4e0d\u662f\u5fc5\u9700\u7684\uff0c\u56e0\u4e3a\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u81ea\u52a8\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u4e0d\u8fc7\uff0c<span class=\"application\">pg_receivewal</span>\u9700\u8981\u5148\u6d6a\u8d39\u4e00\u6b21\u8fde\u63a5\u5c1d\u8bd5\uff0c\u624d\u80fd\u53d1\u73b0\u670d\u52a1\u5668\u9700\u8981\u5bc6\u7801\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u8f93\u5165<code class=\"option\">-W</code>\u4ee5\u907f\u514d\u8fd9\u6b21\u989d\u5916\u7684\u8fde\u63a5\u5c1d\u8bd5\u662f\u503c\u5f97\u7684\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e3a\u4e86\u63a7\u5236\u7269\u7406\u590d\u5236\u69fd\uff0c<span class=\"application\">pg_receivewal</span> \u53ef\u4ee5\u6267\u884c\u4e0b\u5217\u4e24\u79cd\u64cd\u4f5c\u4e4b\u4e00\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">--create-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u4f7f\u7528<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--drop-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5220\u9664<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u8fd8\u53ef\u4ee5\u4f7f\u7528\u4e0b\u5217\u5176\u4ed6\u9009\u9879\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-V</code><br/></span><span class=\"term\"><code class=\"option\">--version</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6253\u5370<span class=\"application\">pg_receivewal</span>\u7684\u7248\u672c\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-?</code><br/></span><span class=\"term\"><code class=\"option\">--help</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u663e\u793a<span class=\"application\">pg_receivewal</span>\u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.7\">\n<h2 lang=\"zh\">\u9000\u51fa\u72b6\u6001</h2>\n<p lang=\"zh\">\u5f53\u56e0<span class=\"systemitem\">SIGINT</span>\u4fe1\u53f7\u7ec8\u6b62\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u4ee5\u72b6\u6001 0 \u9000\u51fa\u3002\uff08\u8fd9\u662f\u5176\u6b63\u5e38\u7ed3\u675f\u65b9\u5f0f\uff0c\u56e0\u6b64\u4e0d\u7b97\u9519\u8bef\u3002\uff09\u5bf9\u4e8e\u81f4\u547d\u9519\u8bef\u6216\u5176\u4ed6\u4fe1\u53f7\uff0c\u9000\u51fa\u72b6\u6001\u5c06\u4e3a\u975e\u96f6\u503c\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.8\">\n<h2 lang=\"zh\">\u73af\u5883</h2>\n<p lang=\"zh\">\u4e0e\u5927\u591a\u6570\u5176\u4ed6<span class=\"productname\">PostgreSQL</span>\u5de5\u5177\u4e00\u6837\uff0c\u6b64\u5de5\u5177\u4e5f\u4f7f\u7528<span class=\"application\">libpq</span>\u652f\u6301\u7684\u73af\u5883\u53d8\u91cf\uff08\u89c1<a class=\"xref\" href=\"/docs/12/libpq-envars.html\" title=\"33.14.\u00a0\u73af\u5883\u53d8\u91cf\">\u7b2c\u00a033.14\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\">\u73af\u5883\u53d8\u91cf<code class=\"envar\">PG_COLOR</code>\u6307\u5b9a\u662f\u5426\u5728\u8bca\u65ad\u6d88\u606f\u4e2d\u4f7f\u7528\u989c\u8272\u3002\u53ef\u80fd\u7684\u503c\u4e3a<code class=\"literal\">always</code>\u3001<code class=\"literal\">auto</code>\u548c<code class=\"literal\">never</code>\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.9\">\n<h2 lang=\"zh\">\u6ce8\u89e3</h2>\n<p lang=\"zh\">\u5f53\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u800c\u4e0d\u662f<a class=\"xref\" href=\"/docs/12/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u4f5c\u4e3a\u4e3b\u8981 WAL \u5907\u4efd\u65b9\u6cd5\u65f6\uff0c\u5f3a\u70c8\u5efa\u8bae\u4f7f\u7528\u590d\u5236\u69fd\u3002\u5426\u5219\uff0c\u670d\u52a1\u5668\u53ef\u4ee5\u5728\u8fd9\u4e9b\u9884\u5199\u5f0f\u65e5\u5fd7\u6587\u4ef6\u5907\u4efd\u5b8c\u6210\u4e4b\u524d\u81ea\u7531\u56de\u6536\u6216\u5220\u9664\u5b83\u4eec\uff0c\u56e0\u4e3a\u65e0\u8bba\u662f<a class=\"xref\" href=\"/docs/12/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u8fd8\u662f\u590d\u5236\u69fd\uff0c\u90fd\u4e0d\u4f1a\u5411\u670d\u52a1\u5668\u63d0\u4f9b WAL \u6d41\u5df2\u7ecf\u5f52\u6863\u5230\u4ec0\u4e48\u4f4d\u7f6e\u7684\u4fe1\u606f\u3002\u4e0d\u8fc7\u8bf7\u6ce8\u610f\uff0c\u5982\u679c\u63a5\u6536\u7aef\u8ddf\u4e0d\u4e0a\u83b7\u53d6 WAL \u6570\u636e\u7684\u901f\u5ea6\uff0c\u590d\u5236\u69fd\u4f1a\u5360\u6ee1\u670d\u52a1\u5668\u7684\u78c1\u76d8\u7a7a\u95f4\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u6e90\u96c6\u7c07\u542f\u7528\u4e86\u7ec4\u6743\u9650\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u63a5\u6536\u5230\u7684 WAL \u6587\u4ef6\u4e0a\u4fdd\u7559\u8fd9\u4e9b\u7ec4\u6743\u9650\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.10\">\n<h2 lang=\"zh\">\u793a\u4f8b</h2>\n<p lang=\"zh\">\u8981\u4ece\u4f4d\u4e8e<code class=\"literal\">mydbserver</code>\u7684\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\uff0c\u5e76\u5c06\u5176\u5b58\u50a8\u5230\u672c\u5730\u76ee\u5f55<code class=\"filename\">/usr/local/pgsql/archive</code>\uff1a</p>\n<pre class=\"screen\"><code class=\"prompt\">$</code> <strong class=\"userinput\"><code>pg_receivewal -h mydbserver -D /usr/local/pgsql/archive</code></strong>\n</pre>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.11\">\n<h2 lang=\"zh\">\u53e6\u89c1</h2><span class=\"simplelist\"><a class=\"xref\" href=\"https://pg.center/docs/12/app-pgbasebackup.html\" title=\"pg_basebackup\"><span class=\"refentrytitle\">pg_basebackup</span></a></span>\n</div>\n</div></div>", "manual_path": "app-pgreceivewal.html", "localization": {"status": "complete", "sources": [{"url": "/docs/12/app-pgreceivewal.html", "method": "same-major semantic node", "sha256": "d60f63118c86d3d0e7ed168f183a86e53c34093365b255890a26b77de4172383", "language": "zh", "matched_nodes": ["#APP-PGRECEIVEWAL/div[10]/h2[0]", "#APP-PGRECEIVEWAL/div[2]/p[1]", "#APP-PGRECEIVEWAL/div[3]/h2[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[1]", "#APP-PGRECEIVEWAL/div[4]/p[1]", "#APP-PGRECEIVEWAL/div[4]/p[2]", "#APP-PGRECEIVEWAL/div[4]/p[3]", "#APP-PGRECEIVEWAL/div[4]/p[4]", "#APP-PGRECEIVEWAL/div[4]/p[5]", "#APP-PGRECEIVEWAL/div[4]/p[7]", "#APP-PGRECEIVEWAL/div[4]/p[8]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[11]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[17]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[9]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/p[2]", "#APP-PGRECEIVEWAL/div[5]/p[4]", "#APP-PGRECEIVEWAL/div[5]/p[6]", "#APP-PGRECEIVEWAL/div[6]/h2[0]", "#APP-PGRECEIVEWAL/div[6]/p[1]", "#APP-PGRECEIVEWAL/div[7]/h2[0]", "#APP-PGRECEIVEWAL/div[7]/p[1]", "#APP-PGRECEIVEWAL/div[7]/p[2]", "#APP-PGRECEIVEWAL/div[8]/h2[0]", "#APP-PGRECEIVEWAL/div[8]/p[1]", "#APP-PGRECEIVEWAL/div[8]/p[2]", "#APP-PGRECEIVEWAL/div[9]/h2[0]", "#APP-PGRECEIVEWAL/div[9]/p[1]"]}], "language": "zh", "original_text": {"/versions/12/description/0": "pg_receivewal \u2014 stream write-ahead logs from a PostgreSQL server", "/versions/12/facts/0/label": "Documented executable", "/versions/12/facts/1/label": "Executable version", "/versions/12/facts/2/label": "Reference inventory", "/versions/12/facts/2/value": "Client applications", "/versions/12/facts/3/label": "Option definition groups", "/versions/12/tables/0/title": "Documented options", "/versions/12/related/0/label": "libpq connection parameters", "/versions/12/tables/0/rows/0/summary": "Directory to write the output to.", "/versions/12/tables/0/rows/1/summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "/versions/12/tables/0/rows/2/summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "/versions/12/tables/0/rows/3/summary": "Don't loop on connection errors. Instead, exit right away with an error.", "/versions/12/tables/0/rows/4/summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "/versions/12/tables/0/rows/5/summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "/versions/12/tables/0/rows/6/summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "/versions/12/tables/0/rows/7/summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "/versions/12/tables/0/rows/8/summary": "Enables verbose mode.", "/versions/12/tables/0/rows/9/summary": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames.", "/versions/12/tables/0/columns/0/label": "Option and arguments", "/versions/12/tables/0/columns/1/label": "Description", "/versions/12/tables/0/rows/10/summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "/versions/12/tables/0/rows/11/summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "/versions/12/tables/0/rows/12/summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "/versions/12/tables/0/rows/13/summary": "User name to connect as.", "/versions/12/tables/0/rows/14/summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "/versions/12/tables/0/rows/15/summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "/versions/12/tables/0/rows/16/summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "/versions/12/tables/0/rows/17/summary": "Drop the replication slot with the name specified in --slot , then exit.", "/versions/12/tables/0/rows/18/summary": "Print the pg_receivewal version and exit.", "/versions/12/tables/0/rows/19/summary": "Show help about pg_receivewal command line arguments, and exit."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "4837bd12b01fce4b26f9bbc5ca5090a451bae782877042d2e201b4fe92a6bc35"}, "comparison_data": {"options": [{"names": ["-D directory", "--directory= directory"], "signature": "-D directory --directory= directory", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "signature": "-E lsn --endpos= lsn", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "signature": "--if-not-exists", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "signature": "-n --no-loop", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "signature": "--no-sync", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "signature": "-s interval --status-interval= interval", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "signature": "-S slotname --slot= slotname", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "signature": "--synchronous", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "signature": "-v --verbose", "description": "Enables verbose mode."}, {"names": ["-Z level", "--compress= level"], "signature": "-Z level --compress= level", "description": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames."}, {"names": ["-d connstr", "--dbname= connstr"], "signature": "-d connstr --dbname= connstr", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "signature": "-h host --host= host", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "signature": "-p port --port= port", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "signature": "-U username --username= username", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "signature": "-w --no-password", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "signature": "-W --password", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "signature": "--create-slot", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "signature": "--drop-slot", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "signature": "-V --version", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "signature": "-? --help", "description": "Show help about pg_receivewal command line arguments, and exit."}], "synopsis": ["pg_receivewal [ option ...]"], "environment": []}, "comparison_hash": "9ae69760509e8cbee7d9a8a6c07ffe3e0ad4416c3c28594bb521c0db4549cacc", "manual_language": "zh"}, "13": {"facts": [{"label": "\u624b\u518c\u4e2d\u7684\u53ef\u6267\u884c\u7a0b\u5e8f", "value": "pg_receivewal"}, {"label": "\u7a0b\u5e8f\u7248\u672c", "value": "13.23"}, {"label": "\u53c2\u8003\u6e05\u5355", "value": "\u5ba2\u6237\u7aef\u7a0b\u5e8f"}, {"label": "\u9009\u9879\u5b9a\u4e49\u7ec4", "value": "20"}], "tables": [{"key": "options", "rows": [{"summary": "\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-D directory --directory= directory"}}, {"summary": "\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-E lsn --endpos= lsn"}}, {"summary": "\u5f53\u6307\u5b9a --create-slot \u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "--if-not-exists"}}, {"summary": "\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-n --no-loop"}}, {"summary": "\u6b64\u9009\u9879\u4f1a\u4f7f pg_receivewal \u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "--no-sync"}}, {"summary": "\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-s interval --status-interval= interval"}}, {"summary": "\u8981\u6c42 pg_receivewal \u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1 \u7b2c 26.2.6 \u8282 \uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c pg_receivewal \u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-S slotname --slot= slotname"}}, {"summary": "\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba --status-interval \u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "--synchronous"}}, {"summary": "\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-v --verbose"}}, {"summary": "\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684 gzip \u538b\u7f29\uff0c\u5e76\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff080 \u5230 9\uff0c0 \u8868\u793a\u4e0d\u538b\u7f29\uff0c9 \u8868\u793a\u6700\u4f73\u538b\u7f29\uff09\u3002\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0 .gz \u540e\u7f00\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-Z level --compress= level"}}, {"summary": "\u4ee5 \u8fde\u63a5\u5b57\u7b26\u4e32 \u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-d connstr --dbname= connstr"}}, {"summary": "\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGHOST \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-h host --host= host"}}, {"summary": "\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGPORT \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-p port --port= port"}}, {"summary": "\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-U username --username= username"}}, {"summary": "\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7 .pgpass \u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-w --no-password"}}, {"summary": "\u5f3a\u5236 pg_receivewal \u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-W --password"}}, {"summary": "\u4f7f\u7528 --slot \u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "--create-slot"}}, {"summary": "\u5220\u9664 --slot \u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "--drop-slot"}}, {"summary": "\u6253\u5370 pg_receivewal \u7684\u7248\u672c\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-V --version"}}, {"summary": "\u663e\u793a pg_receivewal \u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/13/app-pgreceivewal.html", "text": "-? --help"}}], "title": "\u624b\u518c\u4e2d\u7684\u9009\u9879", "columns": [{"key": "signature", "label": "\u9009\u9879\u4e0e\u53c2\u6570"}, {"key": "summary", "label": "\u8bf4\u660e"}]}], "options": [{"names": ["-D directory", "--directory= directory"], "summary": "Directory to write the output to.", "signature": "-D directory --directory= directory", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "signature": "-E lsn --endpos= lsn", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "signature": "--if-not-exists", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "summary": "Don't loop on connection errors. Instead, exit right away with an error.", "signature": "-n --no-loop", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "signature": "--no-sync", "source_url": "/docs/13/app-pgreceivewal.html", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "signature": "-s interval --status-interval= interval", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "signature": "-S slotname --slot= slotname", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "signature": "--synchronous", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "summary": "Enables verbose mode.", "signature": "-v --verbose", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Enables verbose mode."}, {"names": ["-Z level", "--compress= level"], "summary": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames.", "signature": "-Z level --compress= level", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames."}, {"names": ["-d connstr", "--dbname= connstr"], "summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "signature": "-d connstr --dbname= connstr", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "signature": "-h host --host= host", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "signature": "-p port --port= port", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "summary": "User name to connect as.", "signature": "-U username --username= username", "source_url": "/docs/13/app-pgreceivewal.html", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "signature": "-w --no-password", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "signature": "-W --password", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "signature": "--create-slot", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "summary": "Drop the replication slot with the name specified in --slot , then exit.", "signature": "--drop-slot", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "summary": "Print the pg_receivewal version and exit.", "signature": "-V --version", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "summary": "Show help about pg_receivewal command line arguments, and exit.", "signature": "-? --help", "source_url": "/docs/13/app-pgreceivewal.html", "description": "Show help about pg_receivewal command line arguments, and exit."}], "related": [{"url": "/wiki/conn/?v=13", "label": "libpq \u8fde\u63a5\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v13.23/postgresql-13.23.tar.bz2", "label": "13.23", "major": "13", "channel": "historical", "manifest": {"pdf": {"A4": {"url": "/files/documentation/pdf/13/postgresql-13-A4.pdf", "bytes": 13843239, "pages": 2826, "sha256": "171cc09f90936dbc1cbd503a98ff07ae72ea58ab9771ff051313f1217737799c", "built_at": "2026-09-26"}, "US": {"url": "/files/documentation/pdf/13/postgresql-13-US.pdf", "bytes": 13739572, "pages": 2984, "sha256": "48d09c6e197d9db4220f41afe83efe848a8661b1b168d3b89419751ecaf6c24d", "built_at": "2026-09-26"}}, "tree": "13", "index": "index.html", "major": "13", "pages": 1139, "release": "13.23", "source_url": "https://ftp.postgresql.org/pub/source/v13.23/postgresql-13.23.tar.bz2", "svg_assets": 3, "source_mode": "en HTML verified against the pinned official archive", "source_sha256": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "revision": "614ee3133270254e476c118cdf6f72af78d4e4b8bbd9b28ed9ab1e14e4e9c0f6", "evidence_kind": "English manual and source declarations", "source_sha256": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "sources": [{"url": "https://pg.center/docs/13/app-pgreceivewal.html", "file": "app-pgreceivewal.html", "label": "13.23 English manual \u00b7 app-pgreceivewal.html", "anchor": "", "sha256": "6a250ac8f9f01240edf2af04b013b452ba661c980b81ddf3e1f5c448d29f1551", "language": "en", "original_url": "/docs/13/app-pgreceivewal.html"}, {"url": "https://pg.center/docs/13/reference-client.html", "file": "reference-client.html", "label": "Client applications inventory", "anchor": "", "sha256": "2a16c2982d9803edd4bd6920f76b66083e7f2959182d6a3bcec7ccfbac0a9ad8", "language": "en", "original_url": "/docs/13/reference-client.html"}], "sections": [], "synopsis": ["pg_receivewal [ option ...]"], "signature": "pg_receivewal [ option ...]", "description": ["pg_receivewal \u2014 \u4ece PostgreSQL \u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7"], "environment": [], "manual_html": "<div><div class=\"refentry\" id=\"APP-PGRECEIVEWAL\">\n<div class=\"titlepage\"></div>\n<div class=\"refnamediv\">\n<h2><span class=\"refentrytitle\">pg_receivewal</span></h2>\n<p lang=\"zh\">pg_receivewal \u2014 \u4ece<span class=\"productname\">PostgreSQL</span>\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7</p>\n</div>\n<div class=\"refsynopsisdiv\">\n<h2 lang=\"zh\">\u5927\u7eb2</h2>\n<div class=\"cmdsynopsis\">\n<p id=\"id-1.9.4.15.4.1\"><code class=\"command\">pg_receivewal</code> [<em class=\"replaceable\"><code>option</code></em>...]</p>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.5\">\n<h2 lang=\"zh\">\u8bf4\u660e</h2>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u7528\u4e8e\u4ece\u6b63\u5728\u8fd0\u884c\u7684<span class=\"productname\">PostgreSQL</span>\u6570\u636e\u5e93\u96c6\u7c07\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u3002\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u6d41\u590d\u5236\u534f\u8bae\u4f20\u8f93\uff0c\u5e76\u5199\u5165\u672c\u5730\u76ee\u5f55\u4e2d\u7684\u6587\u4ef6\u3002\u8be5\u76ee\u5f55\u53ef\u4f5c\u4e3a\u4f7f\u7528\u65f6\u95f4\u70b9\u6062\u590d\u6267\u884c\u6062\u590d\u65f6\u7684\u5f52\u6863\u4f4d\u7f6e\uff08\u89c1<a class=\"xref\" href=\"/docs/13/continuous-archiving.html\" title=\"25.3.\u00a0\u6301\u7eed\u5f52\u6863\u548c\u65f6\u95f4\u70b9\u6062\u590d\uff08PITR\uff09\">\u7b2c\u00a025.3\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u670d\u52a1\u5668\u751f\u6210\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u540c\u65f6\u5b9e\u65f6\u6d41\u5f0f\u63a5\u6536\uff0c\u800c\u4e0d\u50cf<a class=\"xref\" href=\"/docs/13/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u90a3\u6837\u7b49\u5f85 WAL \u6bb5\u5b8c\u6210\u3002\u56e0\u6b64\uff0c\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u65f6\u65e0\u9700\u8bbe\u7f6e<a class=\"xref\" href=\"/docs/13/runtime-config-wal.html#GUC-ARCHIVE-TIMEOUT\">archive_timeout</a>\u3002</p>\n<p lang=\"zh\">\u4e0e PostgreSQL \u5907\u5e93\u7684 WAL \u63a5\u6536\u8fdb\u7a0b\u4e0d\u540c\uff0c<span class=\"application\">pg_receivewal</span>\u9ed8\u8ba4\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8981\u5b9e\u65f6\u5237\u5199 WAL \u6570\u636e\uff0c\u5fc5\u987b\u6307\u5b9a<code class=\"option\">--synchronous</code>\u9009\u9879\u3002\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u4e0d\u4f1a\u5e94\u7528 WAL\uff0c\u56e0\u6b64\u5f53<a class=\"xref\" href=\"/docs/13/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\">synchronous_commit</a>\u7b49\u4e8e<code class=\"literal\">remote_apply</code>\u65f6\uff0c\u4e0d\u5e94\u8ba9\u5b83\u6210\u4e3a\u540c\u6b65\u5907\u5e93\u3002\u5982\u679c\u8fd9\u6837\u505a\uff0c\u5b83\u770b\u8d77\u6765\u4f1a\u50cf\u4e00\u53f0\u6c38\u8fdc\u8ffd\u4e0d\u4e0a\u7684\u5907\u5e93\uff0c\u5e76\u5bfc\u81f4\u4e8b\u52a1\u63d0\u4ea4\u963b\u585e\u3002\u4e3a\u907f\u514d\u8fd9\u79cd\u60c5\u51b5\uff0c\u5e94\u5f53\u4e3a<a class=\"xref\" href=\"/docs/13/runtime-config-replication.html#GUC-SYNCHRONOUS-STANDBY-NAMES\">synchronous_standby_names</a>\u914d\u7f6e\u5408\u9002\u7684\u503c\uff0c\u6216\u8005\u4e3a<span class=\"application\">pg_receivewal</span>\u6307\u5b9a\u4e00\u4e2a\u4e0e\u4e4b\u4e0d\u5339\u914d\u7684<code class=\"varname\">application_name</code>\uff0c\u6216\u8005\u5c06<code class=\"varname\">synchronous_commit</code>\u6539\u6210<code class=\"literal\">remote_apply</code>\u4ee5\u5916\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u666e\u901a\u7684<span class=\"productname\">PostgreSQL</span>\u8fde\u63a5\u8fdb\u884c\u6d41\u5f0f\u4f20\u8f93\uff0c\u5e76\u4f7f\u7528\u590d\u5236\u534f\u8bae\u3002\u5efa\u7acb\u8be5\u8fde\u63a5\u65f6\uff0c\u5fc5\u987b\u4f7f\u7528\u5177\u6709<code class=\"literal\">REPLICATION</code>\u6743\u9650\uff08\u89c1<a class=\"xref\" href=\"/docs/13/role-attributes.html\" title=\"21.2.\u00a0\u89d2\u8272\u5c5e\u6027\">\u7b2c\u00a021.2\u00a0\u8282</a>\uff09\u7684\u7528\u6237\u6216\u8d85\u7ea7\u7528\u6237\uff0c\u5e76\u4e14<code class=\"filename\">pg_hba.conf</code>\u5fc5\u987b\u5141\u8bb8\u590d\u5236\u8fde\u63a5\u3002\u670d\u52a1\u5668\u8fd8\u5fc5\u987b\u5c06<a class=\"xref\" href=\"/docs/13/runtime-config-replication.html#GUC-MAX-WAL-SENDERS\">max_wal_senders</a>\u8bbe\u7f6e\u5f97\u8db3\u591f\u9ad8\uff0c\u4ee5\u4fbf\u81f3\u5c11\u4e3a\u8be5\u6d41\u4fdd\u7559\u4e00\u4e2a\u53ef\u7528\u4f1a\u8bdd\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u6d41\u4f20\u8f93\u7684\u8d77\u70b9\u4f1a\u5728 <span class=\"application\">pg_receivewal</span> \u542f\u52a8\u65f6\u8ba1\u7b97\uff1a</p>\n<div class=\"orderedlist\">\n<ol class=\"orderedlist\">\n<li class=\"listitem\" lang=\"zh\">\n<p>\u9996\u5148\uff0c\u626b\u63cf\u5199\u5165 WAL \u6bb5\u6587\u4ef6\u7684\u76ee\u5f55\uff0c\u627e\u5230\u6700\u65b0\u7684\u5df2\u5b8c\u6210\u6bb5\u6587\u4ef6\uff0c\u5e76\u5c06\u4e0b\u4e00\u4e2a WAL \u6bb5\u6587\u4ef6\u7684\u5f00\u5934\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u4f7f\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u70b9\uff0c\u5c31\u4f7f\u7528\u670d\u52a1\u5668\u901a\u8fc7<code class=\"literal\">IDENTIFY_SYSTEM</code>\u547d\u4ee4\u62a5\u544a\u7684\u6700\u65b0 WAL \u5237\u76d8\u4f4d\u7f6e\u3002</p>\n</li>\n</ol>\n</div>\n<p lang=\"zh\">\u5982\u679c\u56e0\u975e\u81f4\u547d\u9519\u8bef\u5bfc\u81f4\u8fde\u63a5\u4e2d\u65ad\u6216\u521d\u6b21\u8fde\u63a5\u65e0\u6cd5\u5efa\u7acb\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u65e0\u9650\u671f\u91cd\u8bd5\u8be5\u8fde\u63a5\uff0c\u5e76\u5c3d\u5feb\u91cd\u65b0\u5efa\u7acb\u6d41\u5f0f\u4f20\u8f93\u3002\u8981\u907f\u514d\u8fd9\u79cd\u884c\u4e3a\uff0c\u8bf7\u4f7f\u7528<code class=\"literal\">-n</code>\u53c2\u6570\u3002</p>\n<p lang=\"zh\">\u5728\u6ca1\u6709\u81f4\u547d\u9519\u8bef\u7684\u60c5\u51b5\u4e0b\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u4e00\u76f4\u8fd0\u884c\uff0c\u76f4\u5230\u6536\u5230<span class=\"systemitem\">SIGINT</span>\uff08<span class=\"keycap\"><strong>Control</strong></span>+<span class=\"keycap\"><strong>C</strong></span>\uff09\u4fe1\u53f7\u4e3a\u6b62\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.6\">\n<h2 lang=\"zh\">\u9009\u9879</h2>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-D <em class=\"replaceable\"><code>directory</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--directory=<em class=\"replaceable\"><code>directory</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u53c2\u6570\u662f\u5fc5\u9700\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-E <em class=\"replaceable\"><code>lsn</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--endpos=<em class=\"replaceable\"><code>lsn</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u5b58\u5728 LSN \u6070\u597d\u7b49\u4e8e<em class=\"replaceable\"><code>lsn</code></em>\u7684\u8bb0\u5f55\uff0c\u8be5\u8bb0\u5f55\u4e5f\u4f1a\u88ab\u5904\u7406\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--if-not-exists</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5f53\u6307\u5b9a<code class=\"option\">--create-slot</code>\u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-n</code><br/></span><span class=\"term\"><code class=\"option\">--no-loop</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--no-sync</code></span></dt>\n<dd>\n<p lang=\"zh\">\u6b64\u9009\u9879\u4f1a\u4f7f<code class=\"command\">pg_receivewal</code>\u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4e0e<code class=\"literal\">--synchronous</code>\u4e0d\u517c\u5bb9\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-s <em class=\"replaceable\"><code>interval</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--status-interval=<em class=\"replaceable\"><code>interval</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-S <em class=\"replaceable\"><code>slotname</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--slot=<em class=\"replaceable\"><code>slotname</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u8981\u6c42<span class=\"application\">pg_receivewal</span>\u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1<a class=\"xref\" href=\"/docs/13/warm-standby.html#STREAMING-REPLICATION-SLOTS\" title=\"26.2.6.\u00a0\u590d\u5236\u69fd\">\u7b2c\u00a026.2.6\u00a0\u8282</a>\uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002</p>\n<p lang=\"zh\">\u5f53\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\u65f6\uff0c\u4f7f\u7528\u590d\u5236\u69fd\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u4f46\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u62a5\u544a\u3002\u56e0\u6b64\uff0c\u8fd9\u79cd\u914d\u7f6e\u4f1a\u5bfc\u81f4\u4e3b\u5e93\u4e0a\u7684\u4e8b\u52a1\u957f\u65f6\u95f4\u7b49\u5f85\uff0c\u5b9e\u9645\u4e0a\u65e0\u6cd5\u4ee4\u4eba\u6ee1\u610f\u5730\u5de5\u4f5c\u3002\u8981\u8ba9\u8fd9\u79cd\u914d\u7f6e\u6b63\u786e\u5de5\u4f5c\uff0c\u8fd8\u5fc5\u987b\u53e6\u5916\u6307\u5b9a<code class=\"literal\">--synchronous</code>\u9009\u9879\uff08\u89c1\u4e0b\u6587\uff09\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--synchronous</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba<code class=\"literal\">--status-interval</code>\u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\uff0c\u5219\u5e94\u6307\u5b9a\u6b64\u9009\u9879\uff0c\u4ee5\u786e\u4fdd\u53ca\u65f6\u5411\u670d\u52a1\u5668\u53d1\u9001\u53cd\u9988\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-v</code><br/></span><span class=\"term\"><code class=\"option\">--verbose</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>level</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684 gzip \u538b\u7f29\uff0c\u5e76\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff080 \u5230 9\uff0c0 \u8868\u793a\u4e0d\u538b\u7f29\uff0c9 \u8868\u793a\u6700\u4f73\u538b\u7f29\uff09\u3002\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0<code class=\"filename\">.gz</code>\u540e\u7f00\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4ee5\u4e0b\u547d\u4ee4\u884c\u9009\u9879\u63a7\u5236\u6570\u636e\u5e93\u8fde\u63a5\u53c2\u6570\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-d <em class=\"replaceable\"><code>connstr</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--dbname=<em class=\"replaceable\"><code>connstr</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u4ee5<a class=\"link\" href=\"/docs/13/libpq.html#LIBPQ-CONNSTRING\" title=\"33.1.1.\u00a0\u8fde\u63a5\u5b57\u7b26\u4e32\">\u8fde\u63a5\u5b57\u7b26\u4e32</a>\u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002</p>\n<p lang=\"zh\">\u4e3a\u4e86\u4e0e\u5176\u4ed6\u5ba2\u6237\u7aef\u5e94\u7528\u4fdd\u6301\u4e00\u81f4\uff0c\u8be5\u9009\u9879\u88ab\u79f0\u4e3a<code class=\"literal\">--dbname</code>\uff0c\u4f46\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u5e76\u4e0d\u8fde\u63a5\u5230\u96c6\u7c07\u4e2d\u7684\u4efb\u4f55\u7279\u5b9a\u6570\u636e\u5e93\uff0c\u8fde\u63a5\u5b57\u7b26\u4e32\u4e2d\u7684\u6570\u636e\u5e93\u540d\u4f1a\u88ab\u5ffd\u7565\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-h <em class=\"replaceable\"><code>host</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--host=<em class=\"replaceable\"><code>host</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGHOST</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-p <em class=\"replaceable\"><code>port</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--port=<em class=\"replaceable\"><code>port</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGPORT</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-U <em class=\"replaceable\"><code>username</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--username=<em class=\"replaceable\"><code>username</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-w</code><br/></span><span class=\"term\"><code class=\"option\">--no-password</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7<code class=\"filename\">.pgpass</code>\u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-W</code><br/></span><span class=\"term\"><code class=\"option\">--password</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f3a\u5236<span class=\"application\">pg_receivewal</span>\u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4ece\u6765\u90fd\u4e0d\u662f\u5fc5\u9700\u7684\uff0c\u56e0\u4e3a\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u81ea\u52a8\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u4e0d\u8fc7\uff0c<span class=\"application\">pg_receivewal</span>\u9700\u8981\u5148\u6d6a\u8d39\u4e00\u6b21\u8fde\u63a5\u5c1d\u8bd5\uff0c\u624d\u80fd\u53d1\u73b0\u670d\u52a1\u5668\u9700\u8981\u5bc6\u7801\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u8f93\u5165<code class=\"option\">-W</code>\u4ee5\u907f\u514d\u8fd9\u6b21\u989d\u5916\u7684\u8fde\u63a5\u5c1d\u8bd5\u662f\u503c\u5f97\u7684\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e3a\u4e86\u63a7\u5236\u7269\u7406\u590d\u5236\u69fd\uff0c<span class=\"application\">pg_receivewal</span> \u53ef\u4ee5\u6267\u884c\u4e0b\u5217\u4e24\u79cd\u64cd\u4f5c\u4e4b\u4e00\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">--create-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u4f7f\u7528<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--drop-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5220\u9664<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u8fd8\u53ef\u4ee5\u4f7f\u7528\u4e0b\u5217\u5176\u4ed6\u9009\u9879\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-V</code><br/></span><span class=\"term\"><code class=\"option\">--version</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6253\u5370<span class=\"application\">pg_receivewal</span>\u7684\u7248\u672c\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-?</code><br/></span><span class=\"term\"><code class=\"option\">--help</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u663e\u793a<span class=\"application\">pg_receivewal</span>\u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.7\">\n<h2 lang=\"zh\">\u9000\u51fa\u72b6\u6001</h2>\n<p lang=\"zh\">\u5f53\u56e0<span class=\"systemitem\">SIGINT</span>\u4fe1\u53f7\u7ec8\u6b62\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u4ee5\u72b6\u6001 0 \u9000\u51fa\u3002\uff08\u8fd9\u662f\u5176\u6b63\u5e38\u7ed3\u675f\u65b9\u5f0f\uff0c\u56e0\u6b64\u4e0d\u7b97\u9519\u8bef\u3002\uff09\u5bf9\u4e8e\u81f4\u547d\u9519\u8bef\u6216\u5176\u4ed6\u4fe1\u53f7\uff0c\u9000\u51fa\u72b6\u6001\u5c06\u4e3a\u975e\u96f6\u503c\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.8\">\n<h2 lang=\"zh\">\u73af\u5883</h2>\n<p lang=\"zh\">\u4e0e\u5927\u591a\u6570\u5176\u4ed6<span class=\"productname\">PostgreSQL</span>\u5de5\u5177\u4e00\u6837\uff0c\u6b64\u5de5\u5177\u4e5f\u4f7f\u7528<span class=\"application\">libpq</span>\u652f\u6301\u7684\u73af\u5883\u53d8\u91cf\uff08\u89c1<a class=\"xref\" href=\"/docs/13/libpq-envars.html\" title=\"33.14.\u00a0\u73af\u5883\u53d8\u91cf\">\u7b2c\u00a033.14\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\">\u73af\u5883\u53d8\u91cf<code class=\"envar\">PG_COLOR</code>\u6307\u5b9a\u662f\u5426\u5728\u8bca\u65ad\u6d88\u606f\u4e2d\u4f7f\u7528\u989c\u8272\u3002\u53ef\u80fd\u7684\u503c\u4e3a<code class=\"literal\">always</code>\u3001<code class=\"literal\">auto</code>\u548c<code class=\"literal\">never</code>\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.9\">\n<h2 lang=\"zh\">\u6ce8\u89e3</h2>\n<p lang=\"zh\">\u5f53\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u800c\u4e0d\u662f<a class=\"xref\" href=\"/docs/13/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u4f5c\u4e3a\u4e3b\u8981 WAL \u5907\u4efd\u65b9\u6cd5\u65f6\uff0c\u5f3a\u70c8\u5efa\u8bae\u4f7f\u7528\u590d\u5236\u69fd\u3002\u5426\u5219\uff0c\u670d\u52a1\u5668\u53ef\u4ee5\u5728\u8fd9\u4e9b\u9884\u5199\u5f0f\u65e5\u5fd7\u6587\u4ef6\u5907\u4efd\u5b8c\u6210\u4e4b\u524d\u81ea\u7531\u56de\u6536\u6216\u5220\u9664\u5b83\u4eec\uff0c\u56e0\u4e3a\u65e0\u8bba\u662f<a class=\"xref\" href=\"/docs/13/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u8fd8\u662f\u590d\u5236\u69fd\uff0c\u90fd\u4e0d\u4f1a\u5411\u670d\u52a1\u5668\u63d0\u4f9b WAL \u6d41\u5df2\u7ecf\u5f52\u6863\u5230\u4ec0\u4e48\u4f4d\u7f6e\u7684\u4fe1\u606f\u3002\u4e0d\u8fc7\u8bf7\u6ce8\u610f\uff0c\u5982\u679c\u63a5\u6536\u7aef\u8ddf\u4e0d\u4e0a\u83b7\u53d6 WAL \u6570\u636e\u7684\u901f\u5ea6\uff0c\u590d\u5236\u69fd\u4f1a\u5360\u6ee1\u670d\u52a1\u5668\u7684\u78c1\u76d8\u7a7a\u95f4\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u6e90\u96c6\u7c07\u542f\u7528\u4e86\u7ec4\u6743\u9650\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u63a5\u6536\u5230\u7684 WAL \u6587\u4ef6\u4e0a\u4fdd\u7559\u8fd9\u4e9b\u7ec4\u6743\u9650\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.10\">\n<h2 lang=\"zh\">\u793a\u4f8b</h2>\n<p lang=\"zh\">\u8981\u4ece\u4f4d\u4e8e<code class=\"literal\">mydbserver</code>\u7684\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\uff0c\u5e76\u5c06\u5176\u5b58\u50a8\u5230\u672c\u5730\u76ee\u5f55<code class=\"filename\">/usr/local/pgsql/archive</code>\uff1a</p>\n<pre class=\"screen\"><code class=\"prompt\">$</code> <strong class=\"userinput\"><code>pg_receivewal -h mydbserver -D /usr/local/pgsql/archive</code></strong>\n</pre>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.15.11\">\n<h2 lang=\"zh\">\u53e6\u89c1</h2><span class=\"simplelist\"><a class=\"xref\" href=\"https://pg.center/docs/13/app-pgbasebackup.html\" title=\"pg_basebackup\"><span class=\"refentrytitle\"><span class=\"application\">pg_basebackup</span></span></a></span>\n</div>\n</div></div>", "manual_path": "app-pgreceivewal.html", "localization": {"status": "complete", "sources": [{"url": "/docs/13/app-pgreceivewal.html", "method": "same-major semantic node", "sha256": "e9e04bea71f12dffd18844ca202c4e06f745f2535819ada48caa8791120fecaf", "language": "zh", "matched_nodes": ["#APP-PGRECEIVEWAL/div[10]/h2[0]", "#APP-PGRECEIVEWAL/div[2]/p[1]", "#APP-PGRECEIVEWAL/div[3]/h2[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[1]", "#APP-PGRECEIVEWAL/div[4]/p[1]", "#APP-PGRECEIVEWAL/div[4]/p[2]", "#APP-PGRECEIVEWAL/div[4]/p[3]", "#APP-PGRECEIVEWAL/div[4]/p[4]", "#APP-PGRECEIVEWAL/div[4]/p[5]", "#APP-PGRECEIVEWAL/div[4]/p[7]", "#APP-PGRECEIVEWAL/div[4]/p[8]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[11]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[17]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[9]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/p[2]", "#APP-PGRECEIVEWAL/div[5]/p[4]", "#APP-PGRECEIVEWAL/div[5]/p[6]", "#APP-PGRECEIVEWAL/div[6]/h2[0]", "#APP-PGRECEIVEWAL/div[6]/p[1]", "#APP-PGRECEIVEWAL/div[7]/h2[0]", "#APP-PGRECEIVEWAL/div[7]/p[1]", "#APP-PGRECEIVEWAL/div[7]/p[2]", "#APP-PGRECEIVEWAL/div[8]/h2[0]", "#APP-PGRECEIVEWAL/div[8]/p[1]", "#APP-PGRECEIVEWAL/div[8]/p[2]", "#APP-PGRECEIVEWAL/div[9]/h2[0]", "#APP-PGRECEIVEWAL/div[9]/p[1]"]}], "language": "zh", "original_text": {"/versions/13/description/0": "pg_receivewal \u2014 stream write-ahead logs from a PostgreSQL server", "/versions/13/facts/0/label": "Documented executable", "/versions/13/facts/1/label": "Executable version", "/versions/13/facts/2/label": "Reference inventory", "/versions/13/facts/2/value": "Client applications", "/versions/13/facts/3/label": "Option definition groups", "/versions/13/tables/0/title": "Documented options", "/versions/13/related/0/label": "libpq connection parameters", "/versions/13/tables/0/rows/0/summary": "Directory to write the output to.", "/versions/13/tables/0/rows/1/summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "/versions/13/tables/0/rows/2/summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "/versions/13/tables/0/rows/3/summary": "Don't loop on connection errors. Instead, exit right away with an error.", "/versions/13/tables/0/rows/4/summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "/versions/13/tables/0/rows/5/summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "/versions/13/tables/0/rows/6/summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "/versions/13/tables/0/rows/7/summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "/versions/13/tables/0/rows/8/summary": "Enables verbose mode.", "/versions/13/tables/0/rows/9/summary": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames.", "/versions/13/tables/0/columns/0/label": "Option and arguments", "/versions/13/tables/0/columns/1/label": "Description", "/versions/13/tables/0/rows/10/summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "/versions/13/tables/0/rows/11/summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "/versions/13/tables/0/rows/12/summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "/versions/13/tables/0/rows/13/summary": "User name to connect as.", "/versions/13/tables/0/rows/14/summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "/versions/13/tables/0/rows/15/summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "/versions/13/tables/0/rows/16/summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "/versions/13/tables/0/rows/17/summary": "Drop the replication slot with the name specified in --slot , then exit.", "/versions/13/tables/0/rows/18/summary": "Print the pg_receivewal version and exit.", "/versions/13/tables/0/rows/19/summary": "Show help about pg_receivewal command line arguments, and exit."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "41e897f1b6bd512997f0aebaf64f6b36a556d5451a1de366af992a9feaf58e0c"}, "comparison_data": {"options": [{"names": ["-D directory", "--directory= directory"], "signature": "-D directory --directory= directory", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "signature": "-E lsn --endpos= lsn", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "signature": "--if-not-exists", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "signature": "-n --no-loop", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "signature": "--no-sync", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "signature": "-s interval --status-interval= interval", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "signature": "-S slotname --slot= slotname", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "signature": "--synchronous", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "signature": "-v --verbose", "description": "Enables verbose mode."}, {"names": ["-Z level", "--compress= level"], "signature": "-Z level --compress= level", "description": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames."}, {"names": ["-d connstr", "--dbname= connstr"], "signature": "-d connstr --dbname= connstr", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "signature": "-h host --host= host", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "signature": "-p port --port= port", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "signature": "-U username --username= username", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "signature": "-w --no-password", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "signature": "-W --password", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "signature": "--create-slot", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "signature": "--drop-slot", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "signature": "-V --version", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "signature": "-? --help", "description": "Show help about pg_receivewal command line arguments, and exit."}], "synopsis": ["pg_receivewal [ option ...]"], "environment": []}, "comparison_hash": "9ae69760509e8cbee7d9a8a6c07ffe3e0ad4416c3c28594bb521c0db4549cacc", "manual_language": "zh"}, "14": {"facts": [{"label": "\u624b\u518c\u4e2d\u7684\u53ef\u6267\u884c\u7a0b\u5e8f", "value": "pg_receivewal"}, {"label": "\u7a0b\u5e8f\u7248\u672c", "value": "14.24"}, {"label": "\u53c2\u8003\u6e05\u5355", "value": "\u5ba2\u6237\u7aef\u7a0b\u5e8f"}, {"label": "\u9009\u9879\u5b9a\u4e49\u7ec4", "value": "20"}], "tables": [{"key": "options", "rows": [{"summary": "\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-D directory --directory= directory"}}, {"summary": "\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-E lsn --endpos= lsn"}}, {"summary": "\u5f53\u6307\u5b9a --create-slot \u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "--if-not-exists"}}, {"summary": "\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-n --no-loop"}}, {"summary": "\u6b64\u9009\u9879\u4f1a\u4f7f pg_receivewal \u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "--no-sync"}}, {"summary": "\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-s interval --status-interval= interval"}}, {"summary": "\u8981\u6c42 pg_receivewal \u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1 \u7b2c 27.2.6 \u8282 \uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c pg_receivewal \u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-S slotname --slot= slotname"}}, {"summary": "\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba --status-interval \u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "--synchronous"}}, {"summary": "\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-v --verbose"}}, {"summary": "\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684 gzip \u538b\u7f29\uff0c\u5e76\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff080 \u5230 9\uff0c0 \u8868\u793a\u4e0d\u538b\u7f29\uff0c9 \u8868\u793a\u6700\u4f73\u538b\u7f29\uff09\u3002\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0 .gz \u540e\u7f00\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-Z level --compress= level"}}, {"summary": "\u4ee5 \u8fde\u63a5\u5b57\u7b26\u4e32 \u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-d connstr --dbname= connstr"}}, {"summary": "\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGHOST \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-h host --host= host"}}, {"summary": "\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGPORT \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-p port --port= port"}}, {"summary": "\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-U username --username= username"}}, {"summary": "\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7 .pgpass \u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-w --no-password"}}, {"summary": "\u5f3a\u5236 pg_receivewal \u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-W --password"}}, {"summary": "\u4f7f\u7528 --slot \u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "--create-slot"}}, {"summary": "\u5220\u9664 --slot \u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "--drop-slot"}}, {"summary": "\u6253\u5370 pg_receivewal \u7684\u7248\u672c\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-V --version"}}, {"summary": "\u663e\u793a pg_receivewal \u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/14/app-pgreceivewal.html", "text": "-? --help"}}], "title": "\u624b\u518c\u4e2d\u7684\u9009\u9879", "columns": [{"key": "signature", "label": "\u9009\u9879\u4e0e\u53c2\u6570"}, {"key": "summary", "label": "\u8bf4\u660e"}]}], "options": [{"names": ["-D directory", "--directory= directory"], "summary": "Directory to write the output to.", "signature": "-D directory --directory= directory", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "signature": "-E lsn --endpos= lsn", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "signature": "--if-not-exists", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "summary": "Don't loop on connection errors. Instead, exit right away with an error.", "signature": "-n --no-loop", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "signature": "--no-sync", "source_url": "/docs/14/app-pgreceivewal.html", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "signature": "-s interval --status-interval= interval", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "summary": "Require pg_receivewal to use an existing replication slot (see Section 27.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "signature": "-S slotname --slot= slotname", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Require pg_receivewal to use an existing replication slot (see Section 27.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "signature": "--synchronous", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "summary": "Enables verbose mode.", "signature": "-v --verbose", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Enables verbose mode."}, {"names": ["-Z level", "--compress= level"], "summary": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames.", "signature": "-Z level --compress= level", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames."}, {"names": ["-d connstr", "--dbname= connstr"], "summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "signature": "-d connstr --dbname= connstr", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "signature": "-h host --host= host", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "signature": "-p port --port= port", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "summary": "User name to connect as.", "signature": "-U username --username= username", "source_url": "/docs/14/app-pgreceivewal.html", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "signature": "-w --no-password", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "signature": "-W --password", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "signature": "--create-slot", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "summary": "Drop the replication slot with the name specified in --slot , then exit.", "signature": "--drop-slot", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "summary": "Print the pg_receivewal version and exit.", "signature": "-V --version", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "summary": "Show help about pg_receivewal command line arguments, and exit.", "signature": "-? --help", "source_url": "/docs/14/app-pgreceivewal.html", "description": "Show help about pg_receivewal command line arguments, and exit."}], "related": [{"url": "/wiki/conn/?v=14", "label": "libpq \u8fde\u63a5\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v14.24/postgresql-14.24.tar.bz2", "label": "14.24", "major": "14", "channel": "stable", "manifest": {"pdf": {"A4": {"url": "/files/documentation/pdf/14/postgresql-14-A4.pdf", "bytes": 14354704, "pages": 2944, "sha256": "8bc6b9dd7b246888bb77f0a5e8c39a2eae52e9926569832669c7d1600becb27c", "built_at": "2026-09-26"}, "US": {"url": "/files/documentation/pdf/14/postgresql-14-US.pdf", "bytes": 14242178, "pages": 3102, "sha256": "b7ecb5a5f62d8b9f73a69e25a7d26ba285373bc53168a553bff7b77955506db4", "built_at": "2026-09-26"}}, "tree": "14", "index": "index.html", "major": "14", "pages": 1158, "release": "14.24", "source_url": "https://ftp.postgresql.org/pub/source/v14.24/postgresql-14.24.tar.bz2", "svg_assets": 3, "source_mode": "en HTML verified against the pinned official archive", "source_sha256": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "revision": "588700d46356d8837c77c7c0a4e71e645fe6535983b8f1830aa8f2e4e41c40ae", "evidence_kind": "English manual and source declarations", "source_sha256": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "sources": [{"url": "https://pg.center/docs/14/app-pgreceivewal.html", "file": "app-pgreceivewal.html", "label": "14.24 English manual \u00b7 app-pgreceivewal.html", "anchor": "", "sha256": "d7a6a0ea85e5c3fba94db5a2aa5cbc24ed6fb4a6173da3e01bb3316b77d424a6", "language": "en", "original_url": "/docs/14/app-pgreceivewal.html"}, {"url": "https://pg.center/docs/14/reference-client.html", "file": "reference-client.html", "label": "Client applications inventory", "anchor": "", "sha256": "5a13567a052954dfe494dfaab9f50919faa1ae56023930fdbb78d45e53feccde", "language": "en", "original_url": "/docs/14/reference-client.html"}], "sections": [], "synopsis": ["pg_receivewal [ option ...]"], "signature": "pg_receivewal [ option ...]", "description": ["pg_receivewal \u2014 \u4ece PostgreSQL \u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7"], "environment": [], "manual_html": "<div><div class=\"refentry\" id=\"APP-PGRECEIVEWAL\">\n<div class=\"titlepage\"></div>\n<div class=\"refnamediv\">\n<h2><span class=\"refentrytitle\"><span class=\"application\">pg_receivewal</span></span></h2>\n<p lang=\"zh\">pg_receivewal \u2014 \u4ece<span class=\"productname\">PostgreSQL</span>\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7</p>\n</div>\n<div class=\"refsynopsisdiv\">\n<h2 lang=\"zh\">\u5927\u7eb2</h2>\n<div class=\"cmdsynopsis\">\n<p id=\"id-1.9.4.16.4.1\"><code class=\"command\">pg_receivewal</code> [<em class=\"replaceable\"><code>option</code></em>...]</p>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.5\">\n<h2 lang=\"zh\">\u8bf4\u660e</h2>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u7528\u4e8e\u4ece\u6b63\u5728\u8fd0\u884c\u7684<span class=\"productname\">PostgreSQL</span>\u6570\u636e\u5e93\u96c6\u7c07\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u3002\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u6d41\u590d\u5236\u534f\u8bae\u4f20\u8f93\uff0c\u5e76\u5199\u5165\u672c\u5730\u76ee\u5f55\u4e2d\u7684\u6587\u4ef6\u3002\u8be5\u76ee\u5f55\u53ef\u4f5c\u4e3a\u4f7f\u7528\u65f6\u95f4\u70b9\u6062\u590d\u6267\u884c\u6062\u590d\u65f6\u7684\u5f52\u6863\u4f4d\u7f6e\uff08\u89c1<a class=\"xref\" href=\"/docs/14/continuous-archiving.html\" title=\"26.3.\u00a0\u6301\u7eed\u5f52\u6863\u548c\u65f6\u95f4\u70b9\u6062\u590d\uff08PITR\uff09\">\u7b2c\u00a026.3\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u670d\u52a1\u5668\u751f\u6210\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u540c\u65f6\u5b9e\u65f6\u6d41\u5f0f\u63a5\u6536\uff0c\u800c\u4e0d\u50cf<a class=\"xref\" href=\"/docs/14/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u90a3\u6837\u7b49\u5f85 WAL \u6bb5\u5b8c\u6210\u3002\u56e0\u6b64\uff0c\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u65f6\u65e0\u9700\u8bbe\u7f6e<a class=\"xref\" href=\"/docs/14/runtime-config-wal.html#GUC-ARCHIVE-TIMEOUT\">archive_timeout</a>\u3002</p>\n<p lang=\"zh\">\u4e0e PostgreSQL \u5907\u5e93\u7684 WAL \u63a5\u6536\u8fdb\u7a0b\u4e0d\u540c\uff0c<span class=\"application\">pg_receivewal</span>\u9ed8\u8ba4\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8981\u5b9e\u65f6\u5237\u5199 WAL \u6570\u636e\uff0c\u5fc5\u987b\u6307\u5b9a<code class=\"option\">--synchronous</code>\u9009\u9879\u3002\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u4e0d\u4f1a\u5e94\u7528 WAL\uff0c\u56e0\u6b64\u5f53<a class=\"xref\" href=\"/docs/14/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\">synchronous_commit</a>\u7b49\u4e8e<code class=\"literal\">remote_apply</code>\u65f6\uff0c\u4e0d\u5e94\u8ba9\u5b83\u6210\u4e3a\u540c\u6b65\u5907\u5e93\u3002\u5982\u679c\u8fd9\u6837\u505a\uff0c\u5b83\u770b\u8d77\u6765\u4f1a\u50cf\u4e00\u53f0\u6c38\u8fdc\u8ffd\u4e0d\u4e0a\u7684\u5907\u5e93\uff0c\u5e76\u5bfc\u81f4\u4e8b\u52a1\u63d0\u4ea4\u963b\u585e\u3002\u4e3a\u907f\u514d\u8fd9\u79cd\u60c5\u51b5\uff0c\u5e94\u5f53\u4e3a<a class=\"xref\" href=\"/docs/14/runtime-config-replication.html#GUC-SYNCHRONOUS-STANDBY-NAMES\">synchronous_standby_names</a>\u914d\u7f6e\u5408\u9002\u7684\u503c\uff0c\u6216\u8005\u4e3a<span class=\"application\">pg_receivewal</span>\u6307\u5b9a\u4e00\u4e2a\u4e0e\u4e4b\u4e0d\u5339\u914d\u7684<code class=\"varname\">application_name</code>\uff0c\u6216\u8005\u5c06<code class=\"varname\">synchronous_commit</code>\u6539\u6210<code class=\"literal\">remote_apply</code>\u4ee5\u5916\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u666e\u901a\u7684<span class=\"productname\">PostgreSQL</span>\u8fde\u63a5\u8fdb\u884c\u6d41\u5f0f\u4f20\u8f93\uff0c\u5e76\u4f7f\u7528\u590d\u5236\u534f\u8bae\u3002\u5efa\u7acb\u8be5\u8fde\u63a5\u65f6\uff0c\u5fc5\u987b\u4f7f\u7528\u5177\u6709<code class=\"literal\">REPLICATION</code>\u6743\u9650\uff08\u89c1<a class=\"xref\" href=\"/docs/14/role-attributes.html\" title=\"22.2.\u00a0\u89d2\u8272\u5c5e\u6027\">\u7b2c\u00a022.2\u00a0\u8282</a>\uff09\u7684\u7528\u6237\u6216\u8d85\u7ea7\u7528\u6237\uff0c\u5e76\u4e14<code class=\"filename\">pg_hba.conf</code>\u5fc5\u987b\u5141\u8bb8\u590d\u5236\u8fde\u63a5\u3002\u670d\u52a1\u5668\u8fd8\u5fc5\u987b\u5c06<a class=\"xref\" href=\"/docs/14/runtime-config-replication.html#GUC-MAX-WAL-SENDERS\">max_wal_senders</a>\u8bbe\u7f6e\u5f97\u8db3\u591f\u9ad8\uff0c\u4ee5\u4fbf\u81f3\u5c11\u4e3a\u8be5\u6d41\u4fdd\u7559\u4e00\u4e2a\u53ef\u7528\u4f1a\u8bdd\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u6d41\u5f0f\u4f20\u8f93\u7684\u8d77\u59cb\u4f4d\u7f6e\u4f1a\u5728<span class=\"application\">pg_receivewal</span>\u542f\u52a8\u65f6\u8ba1\u7b97\u51fa\u6765\uff1a</p>\n<div class=\"orderedlist\">\n<ol class=\"orderedlist\">\n<li class=\"listitem\" lang=\"zh\">\n<p>\u9996\u5148\uff0c\u626b\u63cf\u5199\u5165 WAL \u6bb5\u6587\u4ef6\u7684\u76ee\u5f55\uff0c\u627e\u5230\u6700\u65b0\u7684\u5df2\u5b8c\u6210\u6bb5\u6587\u4ef6\uff0c\u5e76\u5c06\u4e0b\u4e00\u4e2a WAL \u6bb5\u6587\u4ef6\u7684\u5f00\u5934\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5219\u4f7f\u7528\u670d\u52a1\u5668\u901a\u8fc7<code class=\"literal\">IDENTIFY_SYSTEM</code>\u547d\u4ee4\u62a5\u544a\u7684\u6700\u65b0 WAL \u5237\u5199\u4f4d\u7f6e\u3002</p>\n</li>\n</ol>\n</div>\n<p lang=\"zh\">\u5982\u679c\u56e0\u975e\u81f4\u547d\u9519\u8bef\u5bfc\u81f4\u8fde\u63a5\u4e2d\u65ad\u6216\u521d\u6b21\u8fde\u63a5\u65e0\u6cd5\u5efa\u7acb\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u65e0\u9650\u671f\u91cd\u8bd5\u8be5\u8fde\u63a5\uff0c\u5e76\u5c3d\u5feb\u91cd\u65b0\u5efa\u7acb\u6d41\u5f0f\u4f20\u8f93\u3002\u8981\u907f\u514d\u8fd9\u79cd\u884c\u4e3a\uff0c\u8bf7\u4f7f\u7528<code class=\"literal\">-n</code>\u53c2\u6570\u3002</p>\n<p lang=\"zh\">\u5728\u6ca1\u6709\u81f4\u547d\u9519\u8bef\u7684\u60c5\u51b5\u4e0b\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u4e00\u76f4\u8fd0\u884c\uff0c\u76f4\u5230\u6536\u5230<span class=\"systemitem\">SIGINT</span>\uff08<span class=\"keycap\"><strong>Control</strong></span>+<span class=\"keycap\"><strong>C</strong></span>\uff09\u4fe1\u53f7\u4e3a\u6b62\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.6\">\n<h2 lang=\"zh\">\u9009\u9879</h2>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-D <em class=\"replaceable\"><code>directory</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--directory=<em class=\"replaceable\"><code>directory</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u53c2\u6570\u662f\u5fc5\u9700\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-E <em class=\"replaceable\"><code>lsn</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--endpos=<em class=\"replaceable\"><code>lsn</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u5b58\u5728 LSN \u6070\u597d\u7b49\u4e8e<em class=\"replaceable\"><code>lsn</code></em>\u7684\u8bb0\u5f55\uff0c\u8be5\u8bb0\u5f55\u4e5f\u4f1a\u88ab\u5904\u7406\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--if-not-exists</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5f53\u6307\u5b9a<code class=\"option\">--create-slot</code>\u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-n</code><br/></span><span class=\"term\"><code class=\"option\">--no-loop</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--no-sync</code></span></dt>\n<dd>\n<p lang=\"zh\">\u6b64\u9009\u9879\u4f1a\u4f7f<code class=\"command\">pg_receivewal</code>\u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4e0e<code class=\"literal\">--synchronous</code>\u4e0d\u517c\u5bb9\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-s <em class=\"replaceable\"><code>interval</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--status-interval=<em class=\"replaceable\"><code>interval</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-S <em class=\"replaceable\"><code>slotname</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--slot=<em class=\"replaceable\"><code>slotname</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u8981\u6c42<span class=\"application\">pg_receivewal</span>\u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1<a class=\"xref\" href=\"/docs/14/warm-standby.html#STREAMING-REPLICATION-SLOTS\" title=\"27.2.6.\u00a0\u590d\u5236\u69fd\">\u7b2c\u00a027.2.6\u00a0\u8282</a>\uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002</p>\n<p lang=\"zh\">\u5f53\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\u65f6\uff0c\u4f7f\u7528\u590d\u5236\u69fd\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u4f46\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u62a5\u544a\u3002\u56e0\u6b64\uff0c\u8fd9\u79cd\u914d\u7f6e\u4f1a\u5bfc\u81f4\u4e3b\u5e93\u4e0a\u7684\u4e8b\u52a1\u957f\u65f6\u95f4\u7b49\u5f85\uff0c\u5b9e\u9645\u4e0a\u65e0\u6cd5\u4ee4\u4eba\u6ee1\u610f\u5730\u5de5\u4f5c\u3002\u8981\u8ba9\u8fd9\u79cd\u914d\u7f6e\u6b63\u786e\u5de5\u4f5c\uff0c\u8fd8\u5fc5\u987b\u53e6\u5916\u6307\u5b9a<code class=\"literal\">--synchronous</code>\u9009\u9879\uff08\u89c1\u4e0b\u6587\uff09\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--synchronous</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba<code class=\"literal\">--status-interval</code>\u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\uff0c\u5219\u5e94\u6307\u5b9a\u6b64\u9009\u9879\uff0c\u4ee5\u786e\u4fdd\u53ca\u65f6\u5411\u670d\u52a1\u5668\u53d1\u9001\u53cd\u9988\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-v</code><br/></span><span class=\"term\"><code class=\"option\">--verbose</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>level</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684 gzip \u538b\u7f29\uff0c\u5e76\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff080 \u5230 9\uff0c0 \u8868\u793a\u4e0d\u538b\u7f29\uff0c9 \u8868\u793a\u6700\u4f73\u538b\u7f29\uff09\u3002\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0<code class=\"filename\">.gz</code>\u540e\u7f00\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e0b\u5217\u547d\u4ee4\u884c\u9009\u9879\u63a7\u5236\u6570\u636e\u5e93\u8fde\u63a5\u53c2\u6570\u3002</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-d <em class=\"replaceable\"><code>connstr</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--dbname=<em class=\"replaceable\"><code>connstr</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u4ee5<a class=\"link\" href=\"/docs/14/libpq.html#LIBPQ-CONNSTRING\" title=\"34.1.1.\u00a0\u8fde\u63a5\u5b57\u7b26\u4e32\">\u8fde\u63a5\u5b57\u7b26\u4e32</a>\u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002</p>\n<p lang=\"zh\">\u4e3a\u4e86\u4e0e\u5176\u4ed6\u5ba2\u6237\u7aef\u5e94\u7528\u4fdd\u6301\u4e00\u81f4\uff0c\u8be5\u9009\u9879\u88ab\u79f0\u4e3a<code class=\"literal\">--dbname</code>\u3002\u4f46\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u5e76\u4e0d\u8fde\u63a5\u5230\u96c6\u7c07\u4e2d\u7684\u4efb\u4f55\u7279\u5b9a\u6570\u636e\u5e93\uff0c\u8fde\u63a5\u5b57\u7b26\u4e32\u4e2d\u5305\u542b\u7684\u6570\u636e\u5e93\u540d\u4f1a\u88ab\u670d\u52a1\u5668\u5ffd\u7565\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-h <em class=\"replaceable\"><code>host</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--host=<em class=\"replaceable\"><code>host</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGHOST</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-p <em class=\"replaceable\"><code>port</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--port=<em class=\"replaceable\"><code>port</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGPORT</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-U <em class=\"replaceable\"><code>username</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--username=<em class=\"replaceable\"><code>username</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-w</code><br/></span><span class=\"term\"><code class=\"option\">--no-password</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7<code class=\"filename\">.pgpass</code>\u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-W</code><br/></span><span class=\"term\"><code class=\"option\">--password</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f3a\u5236<span class=\"application\">pg_receivewal</span>\u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4ece\u6765\u90fd\u4e0d\u662f\u5fc5\u9700\u7684\uff0c\u56e0\u4e3a\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u81ea\u52a8\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u4e0d\u8fc7\uff0c<span class=\"application\">pg_receivewal</span>\u9700\u8981\u5148\u6d6a\u8d39\u4e00\u6b21\u8fde\u63a5\u5c1d\u8bd5\uff0c\u624d\u80fd\u53d1\u73b0\u670d\u52a1\u5668\u9700\u8981\u5bc6\u7801\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u8f93\u5165<code class=\"option\">-W</code>\u4ee5\u907f\u514d\u8fd9\u6b21\u989d\u5916\u7684\u8fde\u63a5\u5c1d\u8bd5\u662f\u503c\u5f97\u7684\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e3a\u4e86\u63a7\u5236\u7269\u7406\u590d\u5236\u69fd\uff0c<span class=\"application\">pg_receivewal</span> \u53ef\u4ee5\u6267\u884c\u4e0b\u5217\u4e24\u79cd\u64cd\u4f5c\u4e4b\u4e00\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">--create-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u4f7f\u7528<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--drop-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5220\u9664<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u8fd8\u53ef\u4ee5\u4f7f\u7528\u4e0b\u5217\u5176\u4ed6\u9009\u9879\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-V</code><br/></span><span class=\"term\"><code class=\"option\">--version</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6253\u5370<span class=\"application\">pg_receivewal</span>\u7684\u7248\u672c\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-?</code><br/></span><span class=\"term\"><code class=\"option\">--help</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u663e\u793a<span class=\"application\">pg_receivewal</span>\u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.7\">\n<h2 lang=\"zh\">\u9000\u51fa\u72b6\u6001</h2>\n<p lang=\"zh\">\u5f53\u56e0<span class=\"systemitem\">SIGINT</span>\u4fe1\u53f7\u7ec8\u6b62\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u4ee5\u72b6\u6001 0 \u9000\u51fa\u3002\uff08\u8fd9\u662f\u5176\u6b63\u5e38\u7ed3\u675f\u65b9\u5f0f\uff0c\u56e0\u6b64\u4e0d\u7b97\u9519\u8bef\u3002\uff09\u5bf9\u4e8e\u81f4\u547d\u9519\u8bef\u6216\u5176\u4ed6\u4fe1\u53f7\uff0c\u9000\u51fa\u72b6\u6001\u5c06\u4e3a\u975e\u96f6\u503c\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.8\">\n<h2 lang=\"zh\">\u73af\u5883</h2>\n<p lang=\"zh\">\u4e0e\u5927\u591a\u6570\u5176\u4ed6<span class=\"productname\">PostgreSQL</span>\u5de5\u5177\u4e00\u6837\uff0c\u6b64\u5de5\u5177\u4e5f\u4f7f\u7528<span class=\"application\">libpq</span>\u652f\u6301\u7684\u73af\u5883\u53d8\u91cf\uff08\u89c1<a class=\"xref\" href=\"/docs/14/libpq-envars.html\" title=\"34.15.\u00a0\u73af\u5883\u53d8\u91cf\">\u7b2c\u00a034.15\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\">\u73af\u5883\u53d8\u91cf<code class=\"envar\">PG_COLOR</code>\u6307\u5b9a\u662f\u5426\u5728\u8bca\u65ad\u6d88\u606f\u4e2d\u4f7f\u7528\u989c\u8272\u3002\u53ef\u80fd\u7684\u503c\u4e3a<code class=\"literal\">always</code>\u3001<code class=\"literal\">auto</code>\u548c<code class=\"literal\">never</code>\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.9\">\n<h2 lang=\"zh\">\u6ce8\u89e3</h2>\n<p lang=\"zh\">\u5f53\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u800c\u4e0d\u662f<a class=\"xref\" href=\"/docs/14/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u4f5c\u4e3a\u4e3b\u8981 WAL \u5907\u4efd\u65b9\u6cd5\u65f6\uff0c\u5f3a\u70c8\u5efa\u8bae\u4f7f\u7528\u590d\u5236\u69fd\u3002\u5426\u5219\uff0c\u670d\u52a1\u5668\u53ef\u4ee5\u5728\u8fd9\u4e9b\u9884\u5199\u5f0f\u65e5\u5fd7\u6587\u4ef6\u5907\u4efd\u5b8c\u6210\u4e4b\u524d\u81ea\u7531\u56de\u6536\u6216\u5220\u9664\u5b83\u4eec\uff0c\u56e0\u4e3a\u65e0\u8bba\u662f<a class=\"xref\" href=\"/docs/14/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u8fd8\u662f\u590d\u5236\u69fd\uff0c\u90fd\u4e0d\u4f1a\u5411\u670d\u52a1\u5668\u63d0\u4f9b WAL \u6d41\u5df2\u7ecf\u5f52\u6863\u5230\u4ec0\u4e48\u4f4d\u7f6e\u7684\u4fe1\u606f\u3002\u4e0d\u8fc7\u8bf7\u6ce8\u610f\uff0c\u5982\u679c\u63a5\u6536\u7aef\u8ddf\u4e0d\u4e0a\u83b7\u53d6 WAL \u6570\u636e\u7684\u901f\u5ea6\uff0c\u590d\u5236\u69fd\u4f1a\u5360\u6ee1\u670d\u52a1\u5668\u7684\u78c1\u76d8\u7a7a\u95f4\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u6e90\u96c6\u7c07\u542f\u7528\u4e86\u7ec4\u6743\u9650\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u63a5\u6536\u5230\u7684 WAL \u6587\u4ef6\u4e0a\u4fdd\u7559\u8fd9\u4e9b\u7ec4\u6743\u9650\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.10\">\n<h2 lang=\"zh\">\u793a\u4f8b</h2>\n<p lang=\"zh\">\u8981\u4ece\u4f4d\u4e8e<code class=\"literal\">mydbserver</code>\u7684\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\uff0c\u5e76\u5c06\u5176\u5b58\u50a8\u5230\u672c\u5730\u76ee\u5f55<code class=\"filename\">/usr/local/pgsql/archive</code>\uff1a</p>\n<pre class=\"screen\"><code class=\"prompt\">$</code> <strong class=\"userinput\"><code>pg_receivewal -h mydbserver -D /usr/local/pgsql/archive</code></strong>\n</pre>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.11\">\n<h2 lang=\"zh\">\u53e6\u89c1</h2><span class=\"simplelist\"><a class=\"xref\" href=\"https://pg.center/docs/14/app-pgbasebackup.html\" title=\"pg_basebackup\"><span class=\"refentrytitle\"><span class=\"application\">pg_basebackup</span></span></a></span>\n</div>\n</div></div>", "manual_path": "app-pgreceivewal.html", "localization": {"status": "complete", "sources": [{"url": "/docs/14/app-pgreceivewal.html", "method": "same-major semantic node", "sha256": "c4d2d3dc56ad4317bbb0a9fb34c4ea7054e92dd3ca2d71a779d18e843dc0c8a7", "language": "zh", "matched_nodes": ["#APP-PGRECEIVEWAL/div[10]/h2[0]", "#APP-PGRECEIVEWAL/div[2]/p[1]", "#APP-PGRECEIVEWAL/div[3]/h2[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[1]", "#APP-PGRECEIVEWAL/div[4]/p[1]", "#APP-PGRECEIVEWAL/div[4]/p[2]", "#APP-PGRECEIVEWAL/div[4]/p[3]", "#APP-PGRECEIVEWAL/div[4]/p[4]", "#APP-PGRECEIVEWAL/div[4]/p[5]", "#APP-PGRECEIVEWAL/div[4]/p[7]", "#APP-PGRECEIVEWAL/div[4]/p[8]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[11]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[17]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[9]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/p[2]", "#APP-PGRECEIVEWAL/div[5]/p[4]", "#APP-PGRECEIVEWAL/div[5]/p[6]", "#APP-PGRECEIVEWAL/div[6]/h2[0]", "#APP-PGRECEIVEWAL/div[6]/p[1]", "#APP-PGRECEIVEWAL/div[7]/h2[0]", "#APP-PGRECEIVEWAL/div[7]/p[1]", "#APP-PGRECEIVEWAL/div[7]/p[2]", "#APP-PGRECEIVEWAL/div[8]/h2[0]", "#APP-PGRECEIVEWAL/div[8]/p[1]", "#APP-PGRECEIVEWAL/div[8]/p[2]", "#APP-PGRECEIVEWAL/div[9]/h2[0]", "#APP-PGRECEIVEWAL/div[9]/p[1]"]}], "language": "zh", "original_text": {"/versions/14/description/0": "pg_receivewal \u2014 stream write-ahead logs from a PostgreSQL server", "/versions/14/facts/0/label": "Documented executable", "/versions/14/facts/1/label": "Executable version", "/versions/14/facts/2/label": "Reference inventory", "/versions/14/facts/2/value": "Client applications", "/versions/14/facts/3/label": "Option definition groups", "/versions/14/tables/0/title": "Documented options", "/versions/14/related/0/label": "libpq connection parameters", "/versions/14/tables/0/rows/0/summary": "Directory to write the output to.", "/versions/14/tables/0/rows/1/summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "/versions/14/tables/0/rows/2/summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "/versions/14/tables/0/rows/3/summary": "Don't loop on connection errors. Instead, exit right away with an error.", "/versions/14/tables/0/rows/4/summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "/versions/14/tables/0/rows/5/summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "/versions/14/tables/0/rows/6/summary": "Require pg_receivewal to use an existing replication slot (see Section 27.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "/versions/14/tables/0/rows/7/summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "/versions/14/tables/0/rows/8/summary": "Enables verbose mode.", "/versions/14/tables/0/rows/9/summary": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames.", "/versions/14/tables/0/columns/0/label": "Option and arguments", "/versions/14/tables/0/columns/1/label": "Description", "/versions/14/tables/0/rows/10/summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "/versions/14/tables/0/rows/11/summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "/versions/14/tables/0/rows/12/summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "/versions/14/tables/0/rows/13/summary": "User name to connect as.", "/versions/14/tables/0/rows/14/summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "/versions/14/tables/0/rows/15/summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "/versions/14/tables/0/rows/16/summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "/versions/14/tables/0/rows/17/summary": "Drop the replication slot with the name specified in --slot , then exit.", "/versions/14/tables/0/rows/18/summary": "Print the pg_receivewal version and exit.", "/versions/14/tables/0/rows/19/summary": "Show help about pg_receivewal command line arguments, and exit."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "364796abe2f137c1e8efac86d88c284bba3cc084debd6c9c392129bc94fa0a8f"}, "comparison_data": {"options": [{"names": ["-D directory", "--directory= directory"], "signature": "-D directory --directory= directory", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "signature": "-E lsn --endpos= lsn", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "signature": "--if-not-exists", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "signature": "-n --no-loop", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "signature": "--no-sync", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "signature": "-s interval --status-interval= interval", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "signature": "-S slotname --slot= slotname", "description": "Require pg_receivewal to use an existing replication slot (see Section 27.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "signature": "--synchronous", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "signature": "-v --verbose", "description": "Enables verbose mode."}, {"names": ["-Z level", "--compress= level"], "signature": "-Z level --compress= level", "description": "Enables gzip compression of write-ahead logs, and specifies the compression level (0 through 9, 0 being no compression and 9 being best compression). The suffix .gz will automatically be added to all filenames."}, {"names": ["-d connstr", "--dbname= connstr"], "signature": "-d connstr --dbname= connstr", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "signature": "-h host --host= host", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "signature": "-p port --port= port", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "signature": "-U username --username= username", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "signature": "-w --no-password", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "signature": "-W --password", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "signature": "--create-slot", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "signature": "--drop-slot", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "signature": "-V --version", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "signature": "-? --help", "description": "Show help about pg_receivewal command line arguments, and exit."}], "synopsis": ["pg_receivewal [ option ...]"], "environment": []}, "comparison_hash": "6ddb86de1da475a391e52ae0c8bda984c6670ccf82a86129ec007a1031317034", "manual_language": "zh"}, "15": {"facts": [{"label": "\u624b\u518c\u4e2d\u7684\u53ef\u6267\u884c\u7a0b\u5e8f", "value": "pg_receivewal"}, {"label": "\u7a0b\u5e8f\u7248\u672c", "value": "15.19"}, {"label": "\u53c2\u8003\u6e05\u5355", "value": "\u5ba2\u6237\u7aef\u7a0b\u5e8f"}, {"label": "\u9009\u9879\u5b9a\u4e49\u7ec4", "value": "20"}], "tables": [{"key": "options", "rows": [{"summary": "\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-D directory --directory= directory"}}, {"summary": "\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-E lsn --endpos= lsn"}}, {"summary": "\u5f53\u6307\u5b9a --create-slot \u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "--if-not-exists"}}, {"summary": "\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-n --no-loop"}}, {"summary": "\u6b64\u9009\u9879\u4f1a\u4f7f pg_receivewal \u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "--no-sync"}}, {"summary": "\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-s interval --status-interval= interval"}}, {"summary": "\u8981\u6c42 pg_receivewal \u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1 \u7b2c 27.2.6 \u8282 \uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c pg_receivewal \u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-S slotname --slot= slotname"}}, {"summary": "\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba --status-interval \u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "--synchronous"}}, {"summary": "\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-v --verbose"}}, {"summary": "\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]"}}, {"summary": "\u4ee5 \u8fde\u63a5\u5b57\u7b26\u4e32 \u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-d connstr --dbname= connstr"}}, {"summary": "\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGHOST \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-h host --host= host"}}, {"summary": "\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGPORT \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-p port --port= port"}}, {"summary": "\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-U username --username= username"}}, {"summary": "\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7 .pgpass \u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-w --no-password"}}, {"summary": "\u5f3a\u5236 pg_receivewal \u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-W --password"}}, {"summary": "\u4f7f\u7528 --slot \u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "--create-slot"}}, {"summary": "\u5220\u9664 --slot \u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "--drop-slot"}}, {"summary": "\u6253\u5370 pg_receivewal \u7684\u7248\u672c\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-V --version"}}, {"summary": "\u663e\u793a pg_receivewal \u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/15/app-pgreceivewal.html", "text": "-? --help"}}], "title": "\u624b\u518c\u4e2d\u7684\u9009\u9879", "columns": [{"key": "signature", "label": "\u9009\u9879\u4e0e\u53c2\u6570"}, {"key": "summary", "label": "\u8bf4\u660e"}]}], "options": [{"names": ["-D directory", "--directory= directory"], "summary": "Directory to write the output to.", "signature": "-D directory --directory= directory", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "signature": "-E lsn --endpos= lsn", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "signature": "--if-not-exists", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "summary": "Don't loop on connection errors. Instead, exit right away with an error.", "signature": "-n --no-loop", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "signature": "--no-sync", "source_url": "/docs/15/app-pgreceivewal.html", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "signature": "-s interval --status-interval= interval", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "summary": "Require pg_receivewal to use an existing replication slot (see Section 27.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "signature": "-S slotname --slot= slotname", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Require pg_receivewal to use an existing replication slot (see Section 27.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "signature": "--synchronous", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "summary": "Enables verbose mode.", "signature": "-v --verbose", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "summary": "Enables compression of write-ahead logs.", "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "signature": "-d connstr --dbname= connstr", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "signature": "-h host --host= host", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "signature": "-p port --port= port", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "summary": "User name to connect as.", "signature": "-U username --username= username", "source_url": "/docs/15/app-pgreceivewal.html", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "signature": "-w --no-password", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "signature": "-W --password", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "signature": "--create-slot", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "summary": "Drop the replication slot with the name specified in --slot , then exit.", "signature": "--drop-slot", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "summary": "Print the pg_receivewal version and exit.", "signature": "-V --version", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "summary": "Show help about pg_receivewal command line arguments, and exit.", "signature": "-? --help", "source_url": "/docs/15/app-pgreceivewal.html", "description": "Show help about pg_receivewal command line arguments, and exit."}], "related": [{"url": "/wiki/conn/?v=15", "label": "libpq \u8fde\u63a5\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v15.19/postgresql-15.19.tar.bz2", "label": "15.19", "major": "15", "channel": "stable", "manifest": {"pdf": {"A4": {"url": "/files/documentation/pdf/15/postgresql-15-A4.pdf", "bytes": 14609140, "pages": 2987, "sha256": "66228564a4d16efb47d6a914085716ecfe22ca1566db56bc7c3d82f790646d72", "built_at": "2026-09-26"}, "US": {"url": "/files/documentation/pdf/15/postgresql-15-US.pdf", "bytes": 14495690, "pages": 3153, "sha256": "645a498c2390d47a6223ec74770631185807a19c484edb0fc5a295d9f460bc02", "built_at": "2026-09-26"}}, "tree": "15", "index": "index.html", "major": "15", "pages": 1168, "release": "15.19", "source_url": "https://ftp.postgresql.org/pub/source/v15.19/postgresql-15.19.tar.bz2", "svg_assets": 3, "source_mode": "en HTML verified against the pinned official archive", "source_sha256": "e1a64a87a46b825b88c082e4518161a47aab53c45694964f8ba1df28f7859f89"}, "revision": "6af958c6520151fc7697d56e0616b03fb00522c4568158674d452ae0644ba545", "evidence_kind": "English manual and source declarations", "source_sha256": "e1a64a87a46b825b88c082e4518161a47aab53c45694964f8ba1df28f7859f89"}, "sources": [{"url": "https://pg.center/docs/15/app-pgreceivewal.html", "file": "app-pgreceivewal.html", "label": "15.19 English manual \u00b7 app-pgreceivewal.html", "anchor": "", "sha256": "cdf877ed213b7a4541823fb462d5d7c63cca3859678cf3ab987049f150a9d1fc", "language": "en", "original_url": "/docs/15/app-pgreceivewal.html"}, {"url": "https://pg.center/docs/15/reference-client.html", "file": "reference-client.html", "label": "Client applications inventory", "anchor": "", "sha256": "015b2ea2bd205946a55a1b837e735570631bac831c92074a6bf58444f9a3cb98", "language": "en", "original_url": "/docs/15/reference-client.html"}], "sections": [], "synopsis": ["pg_receivewal [ option ...]"], "signature": "pg_receivewal [ option ...]", "description": ["pg_receivewal \u2014 \u4ece PostgreSQL \u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7"], "environment": [], "manual_html": "<div><div class=\"refentry\" id=\"APP-PGRECEIVEWAL\">\n<div class=\"titlepage\"></div>\n<div class=\"refnamediv\">\n<h2><span class=\"refentrytitle\"><span class=\"application\">pg_receivewal</span></span></h2>\n<p lang=\"zh\">pg_receivewal \u2014 \u4ece<span class=\"productname\">PostgreSQL</span>\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7</p>\n</div>\n<div class=\"refsynopsisdiv\">\n<h2 lang=\"zh\">\u5927\u7eb2</h2>\n<div class=\"cmdsynopsis\">\n<p id=\"id-1.9.4.16.4.1\"><code class=\"command\">pg_receivewal</code> [<em class=\"replaceable\"><code>option</code></em>...]</p>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.5\">\n<h2 lang=\"zh\">\u8bf4\u660e</h2>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u7528\u4e8e\u4ece\u6b63\u5728\u8fd0\u884c\u7684<span class=\"productname\">PostgreSQL</span>\u6570\u636e\u5e93\u96c6\u7c07\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u3002\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u6d41\u590d\u5236\u534f\u8bae\u4f20\u8f93\uff0c\u5e76\u5199\u5165\u672c\u5730\u76ee\u5f55\u4e2d\u7684\u6587\u4ef6\u3002\u8be5\u76ee\u5f55\u53ef\u4f5c\u4e3a\u4f7f\u7528\u65f6\u95f4\u70b9\u6062\u590d\u6267\u884c\u6062\u590d\u65f6\u7684\u5f52\u6863\u4f4d\u7f6e\uff08\u89c1<a class=\"xref\" href=\"/docs/15/continuous-archiving.html\" title=\"26.3.\u00a0\u6301\u7eed\u5f52\u6863\u548c\u65f6\u95f4\u70b9\u6062\u590d\uff08PITR\uff09\">\u7b2c\u00a026.3\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u670d\u52a1\u5668\u751f\u6210\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u540c\u65f6\u5b9e\u65f6\u6d41\u5f0f\u63a5\u6536\uff0c\u800c\u4e0d\u50cf<a class=\"xref\" href=\"/docs/15/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u548c<a class=\"xref\" href=\"/docs/15/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u90a3\u6837\u7b49\u5f85 WAL \u6bb5\u5b8c\u6210\u3002\u56e0\u6b64\uff0c\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u65f6\u65e0\u9700\u8bbe\u7f6e<a class=\"xref\" href=\"/docs/15/runtime-config-wal.html#GUC-ARCHIVE-TIMEOUT\">archive_timeout</a>\u3002</p>\n<p lang=\"zh\">\u4e0e PostgreSQL \u5907\u5e93\u7684 WAL \u63a5\u6536\u8fdb\u7a0b\u4e0d\u540c\uff0c<span class=\"application\">pg_receivewal</span>\u9ed8\u8ba4\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8981\u5b9e\u65f6\u5237\u5199 WAL \u6570\u636e\uff0c\u5fc5\u987b\u6307\u5b9a<code class=\"option\">--synchronous</code>\u9009\u9879\u3002\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u4e0d\u4f1a\u5e94\u7528 WAL\uff0c\u56e0\u6b64\u5f53<a class=\"xref\" href=\"/docs/15/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\">synchronous_commit</a>\u7b49\u4e8e<code class=\"literal\">remote_apply</code>\u65f6\uff0c\u4e0d\u5e94\u8ba9\u5b83\u6210\u4e3a\u540c\u6b65\u5907\u5e93\u3002\u5982\u679c\u8fd9\u6837\u505a\uff0c\u5b83\u770b\u8d77\u6765\u4f1a\u50cf\u4e00\u53f0\u6c38\u8fdc\u8ffd\u4e0d\u4e0a\u7684\u5907\u5e93\uff0c\u5e76\u5bfc\u81f4\u4e8b\u52a1\u63d0\u4ea4\u963b\u585e\u3002\u4e3a\u907f\u514d\u8fd9\u79cd\u60c5\u51b5\uff0c\u5e94\u5f53\u4e3a<a class=\"xref\" href=\"/docs/15/runtime-config-replication.html#GUC-SYNCHRONOUS-STANDBY-NAMES\">synchronous_standby_names</a>\u914d\u7f6e\u5408\u9002\u7684\u503c\uff0c\u6216\u8005\u4e3a<span class=\"application\">pg_receivewal</span>\u6307\u5b9a\u4e00\u4e2a\u4e0e\u4e4b\u4e0d\u5339\u914d\u7684<code class=\"varname\">application_name</code>\uff0c\u6216\u8005\u5c06<code class=\"varname\">synchronous_commit</code>\u6539\u6210<code class=\"literal\">remote_apply</code>\u4ee5\u5916\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u666e\u901a\u7684<span class=\"productname\">PostgreSQL</span>\u8fde\u63a5\u8fdb\u884c\u6d41\u5f0f\u4f20\u8f93\uff0c\u5e76\u4f7f\u7528\u590d\u5236\u534f\u8bae\u3002\u5efa\u7acb\u8be5\u8fde\u63a5\u65f6\uff0c\u5fc5\u987b\u4f7f\u7528\u5177\u6709<code class=\"literal\">REPLICATION</code>\u6743\u9650\uff08\u89c1<a class=\"xref\" href=\"/docs/15/role-attributes.html\" title=\"22.2.\u00a0\u89d2\u8272\u5c5e\u6027\">\u7b2c\u00a022.2\u00a0\u8282</a>\uff09\u7684\u7528\u6237\u6216\u8d85\u7ea7\u7528\u6237\uff0c\u5e76\u4e14<code class=\"filename\">pg_hba.conf</code>\u5fc5\u987b\u5141\u8bb8\u590d\u5236\u8fde\u63a5\u3002\u670d\u52a1\u5668\u8fd8\u5fc5\u987b\u5c06<a class=\"xref\" href=\"/docs/15/runtime-config-replication.html#GUC-MAX-WAL-SENDERS\">max_wal_senders</a>\u8bbe\u7f6e\u5f97\u8db3\u591f\u9ad8\uff0c\u4ee5\u4fbf\u81f3\u5c11\u4e3a\u8be5\u6d41\u4fdd\u7559\u4e00\u4e2a\u53ef\u7528\u4f1a\u8bdd\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u6d41\u5f0f\u4f20\u8f93\u7684\u8d77\u59cb\u4f4d\u7f6e\u4f1a\u5728<span class=\"application\">pg_receivewal</span>\u542f\u52a8\u65f6\u8ba1\u7b97\u51fa\u6765\uff1a</p>\n<div class=\"orderedlist\">\n<ol class=\"orderedlist\">\n<li class=\"listitem\" lang=\"zh\">\n<p>\u9996\u5148\uff0c\u626b\u63cf\u5199\u5165 WAL \u6bb5\u6587\u4ef6\u7684\u76ee\u5f55\uff0c\u627e\u5230\u6700\u65b0\u7684\u5df2\u5b8c\u6210\u6bb5\u6587\u4ef6\uff0c\u5e76\u5c06\u4e0b\u4e00\u4e2a WAL \u6bb5\u6587\u4ef6\u7684\u5f00\u5934\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5e76\u4e14\u4f7f\u7528\u4e86\u590d\u5236\u69fd\uff0c\u5219\u4f1a\u989d\u5916\u53d1\u51fa<code class=\"command\">READ_REPLICATION_SLOT</code>\u547d\u4ee4\uff0c\u4ee5\u83b7\u53d6\u8be5\u69fd\u7684<code class=\"literal\">restart_lsn</code>\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002\u8fd9\u79cd\u65b9\u5f0f\u4ec5\u5728\u4ece<span class=\"productname\">PostgreSQL</span> 15 \u53ca\u4ee5\u4e0a\u7248\u672c\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u65f6\u53ef\u7528\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5219\u4f7f\u7528\u670d\u52a1\u5668\u901a\u8fc7<code class=\"literal\">IDENTIFY_SYSTEM</code>\u547d\u4ee4\u62a5\u544a\u7684\u6700\u65b0 WAL \u5237\u5199\u4f4d\u7f6e\u3002</p>\n</li>\n</ol>\n</div>\n<p lang=\"zh\">\u5982\u679c\u56e0\u975e\u81f4\u547d\u9519\u8bef\u5bfc\u81f4\u8fde\u63a5\u4e2d\u65ad\u6216\u521d\u6b21\u8fde\u63a5\u65e0\u6cd5\u5efa\u7acb\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u65e0\u9650\u671f\u91cd\u8bd5\u8be5\u8fde\u63a5\uff0c\u5e76\u5c3d\u5feb\u91cd\u65b0\u5efa\u7acb\u6d41\u5f0f\u4f20\u8f93\u3002\u8981\u907f\u514d\u8fd9\u79cd\u884c\u4e3a\uff0c\u8bf7\u4f7f\u7528<code class=\"literal\">-n</code>\u53c2\u6570\u3002</p>\n<p lang=\"zh\">\u5728\u6ca1\u6709\u81f4\u547d\u9519\u8bef\u7684\u60c5\u51b5\u4e0b\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u4e00\u76f4\u8fd0\u884c\uff0c\u76f4\u5230\u6536\u5230<span class=\"systemitem\">SIGINT</span>\uff08<span class=\"keycap\"><strong>Control</strong></span>+<span class=\"keycap\"><strong>C</strong></span>\uff09\u4fe1\u53f7\u4e3a\u6b62\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.6\">\n<h2 lang=\"zh\">\u9009\u9879</h2>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-D <em class=\"replaceable\"><code>directory</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--directory=<em class=\"replaceable\"><code>directory</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u53c2\u6570\u662f\u5fc5\u9700\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-E <em class=\"replaceable\"><code>lsn</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--endpos=<em class=\"replaceable\"><code>lsn</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u5b58\u5728 LSN \u6070\u597d\u7b49\u4e8e<em class=\"replaceable\"><code>lsn</code></em>\u7684\u8bb0\u5f55\uff0c\u8be5\u8bb0\u5f55\u4e5f\u4f1a\u88ab\u5904\u7406\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--if-not-exists</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5f53\u6307\u5b9a<code class=\"option\">--create-slot</code>\u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-n</code><br/></span><span class=\"term\"><code class=\"option\">--no-loop</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--no-sync</code></span></dt>\n<dd>\n<p lang=\"zh\">\u6b64\u9009\u9879\u4f1a\u4f7f<code class=\"command\">pg_receivewal</code>\u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4e0e<code class=\"literal\">--synchronous</code>\u4e0d\u517c\u5bb9\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-s <em class=\"replaceable\"><code>interval</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--status-interval=<em class=\"replaceable\"><code>interval</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-S <em class=\"replaceable\"><code>slotname</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--slot=<em class=\"replaceable\"><code>slotname</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u8981\u6c42<span class=\"application\">pg_receivewal</span>\u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1<a class=\"xref\" href=\"/docs/15/warm-standby.html#STREAMING-REPLICATION-SLOTS\" title=\"27.2.6.\u00a0\u590d\u5236\u69fd\">\u7b2c\u00a027.2.6\u00a0\u8282</a>\uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002</p>\n<p lang=\"zh\">\u5f53\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\u65f6\uff0c\u4f7f\u7528\u590d\u5236\u69fd\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u4f46\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u62a5\u544a\u3002\u56e0\u6b64\uff0c\u8fd9\u79cd\u914d\u7f6e\u4f1a\u5bfc\u81f4\u4e3b\u5e93\u4e0a\u7684\u4e8b\u52a1\u957f\u65f6\u95f4\u7b49\u5f85\uff0c\u5b9e\u9645\u4e0a\u65e0\u6cd5\u4ee4\u4eba\u6ee1\u610f\u5730\u5de5\u4f5c\u3002\u8981\u8ba9\u8fd9\u79cd\u914d\u7f6e\u6b63\u786e\u5de5\u4f5c\uff0c\u8fd8\u5fc5\u987b\u53e6\u5916\u6307\u5b9a<code class=\"literal\">--synchronous</code>\u9009\u9879\uff08\u89c1\u4e0b\u6587\uff09\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--synchronous</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba<code class=\"literal\">--status-interval</code>\u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\uff0c\u5219\u5e94\u6307\u5b9a\u6b64\u9009\u9879\uff0c\u4ee5\u786e\u4fdd\u53ca\u65f6\u5411\u670d\u52a1\u5668\u53d1\u9001\u53cd\u9988\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-v</code><br/></span><span class=\"term\"><code class=\"option\">--verbose</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code></span></dt>\n<dd>\n<p lang=\"zh\">\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u538b\u7f29\u65b9\u6cd5\u53ef\u4ee5\u8bbe\u7f6e\u4e3a<code class=\"literal\">gzip</code>\u3001<code class=\"literal\">lz4</code>\uff08\u5982\u679c<span class=\"productname\">PostgreSQL</span>\u7f16\u8bd1\u65f6\u542f\u7528\u4e86<code class=\"option\">--with-lz4</code>\uff09\u6216<code class=\"literal\">none</code>\uff08\u4e0d\u538b\u7f29\uff09\u3002\u8fd8\u53ef\u4ee5\u9009\u62e9\u6307\u5b9a\u538b\u7f29\u7ec6\u8282\u5b57\u7b26\u4e32\u3002\u5982\u679c\u8be5\u5b57\u7b26\u4e32\u662f\u6574\u6570\uff0c\u5219\u8868\u793a\u538b\u7f29\u7ea7\u522b\uff1b\u5426\u5219\u5e94\u4e3a\u7528\u9017\u53f7\u5206\u9694\u7684\u5217\u8868\uff0c\u5176\u4e2d\u6bcf\u4e00\u9879\u90fd\u91c7\u7528<em class=\"replaceable\"><code>keyword</code></em>\u6216<em class=\"replaceable\"><code>keyword=value</code></em>\u7684\u5f62\u5f0f\u3002\u76ee\u524d\uff0c\u552f\u4e00\u652f\u6301\u7684\u5173\u952e\u5b57\u662f<code class=\"literal\">level</code>\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u672a\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff0c\u5c06\u4f7f\u7528\u9ed8\u8ba4\u7ea7\u522b\u3002\u5982\u679c\u53ea\u6307\u5b9a\u7ea7\u522b\u800c\u672a\u6307\u5b9a\u7b97\u6cd5\uff0c\u5219\u7ea7\u522b\u5927\u4e8e 0 \u65f6\u4f7f\u7528 gzip \u538b\u7f29\uff0c\u7ea7\u522b\u4e3a 0 \u65f6\u4e0d\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u4f7f\u7528 gzip \u65f6\uff0c\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0 .gz \u540e\u7f00\uff1b\u4f7f\u7528 lz4 \u65f6\uff0c\u6dfb\u52a0 .lz4 \u540e\u7f00\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e0b\u5217\u547d\u4ee4\u884c\u9009\u9879\u63a7\u5236\u6570\u636e\u5e93\u8fde\u63a5\u53c2\u6570\u3002</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-d <em class=\"replaceable\"><code>connstr</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--dbname=<em class=\"replaceable\"><code>connstr</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u4ee5<a class=\"link\" href=\"/docs/15/libpq.html#LIBPQ-CONNSTRING\" title=\"34.1.1.\u00a0\u8fde\u63a5\u5b57\u7b26\u4e32\">\u8fde\u63a5\u5b57\u7b26\u4e32</a>\u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002</p>\n<p lang=\"zh\">\u4e3a\u4e86\u4e0e\u5176\u4ed6\u5ba2\u6237\u7aef\u5e94\u7528\u4fdd\u6301\u4e00\u81f4\uff0c\u8be5\u9009\u9879\u88ab\u79f0\u4e3a<code class=\"literal\">--dbname</code>\u3002\u4f46\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u5e76\u4e0d\u8fde\u63a5\u5230\u96c6\u7c07\u4e2d\u7684\u4efb\u4f55\u7279\u5b9a\u6570\u636e\u5e93\uff0c\u8fde\u63a5\u5b57\u7b26\u4e32\u4e2d\u5305\u542b\u7684\u6570\u636e\u5e93\u540d\u4f1a\u88ab\u670d\u52a1\u5668\u5ffd\u7565\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-h <em class=\"replaceable\"><code>host</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--host=<em class=\"replaceable\"><code>host</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGHOST</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-p <em class=\"replaceable\"><code>port</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--port=<em class=\"replaceable\"><code>port</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGPORT</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-U <em class=\"replaceable\"><code>username</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--username=<em class=\"replaceable\"><code>username</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-w</code><br/></span><span class=\"term\"><code class=\"option\">--no-password</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7<code class=\"filename\">.pgpass</code>\u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-W</code><br/></span><span class=\"term\"><code class=\"option\">--password</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f3a\u5236<span class=\"application\">pg_receivewal</span>\u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4ece\u6765\u90fd\u4e0d\u662f\u5fc5\u9700\u7684\uff0c\u56e0\u4e3a\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u81ea\u52a8\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u4e0d\u8fc7\uff0c<span class=\"application\">pg_receivewal</span>\u9700\u8981\u5148\u6d6a\u8d39\u4e00\u6b21\u8fde\u63a5\u5c1d\u8bd5\uff0c\u624d\u80fd\u53d1\u73b0\u670d\u52a1\u5668\u9700\u8981\u5bc6\u7801\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u8f93\u5165<code class=\"option\">-W</code>\u4ee5\u907f\u514d\u8fd9\u6b21\u989d\u5916\u7684\u8fde\u63a5\u5c1d\u8bd5\u662f\u503c\u5f97\u7684\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e3a\u4e86\u63a7\u5236\u7269\u7406\u590d\u5236\u69fd\uff0c<span class=\"application\">pg_receivewal</span> \u53ef\u4ee5\u6267\u884c\u4e0b\u5217\u4e24\u79cd\u64cd\u4f5c\u4e4b\u4e00\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">--create-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u4f7f\u7528<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--drop-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5220\u9664<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u8fd8\u53ef\u4ee5\u4f7f\u7528\u4e0b\u5217\u5176\u4ed6\u9009\u9879\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-V</code><br/></span><span class=\"term\"><code class=\"option\">--version</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6253\u5370<span class=\"application\">pg_receivewal</span>\u7684\u7248\u672c\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-?</code><br/></span><span class=\"term\"><code class=\"option\">--help</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u663e\u793a<span class=\"application\">pg_receivewal</span>\u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.7\">\n<h2 lang=\"zh\">\u9000\u51fa\u72b6\u6001</h2>\n<p lang=\"zh\">\u5f53\u56e0<span class=\"systemitem\">SIGINT</span>\u4fe1\u53f7\u7ec8\u6b62\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u4ee5\u72b6\u6001 0 \u9000\u51fa\u3002\uff08\u8fd9\u662f\u5176\u6b63\u5e38\u7ed3\u675f\u65b9\u5f0f\uff0c\u56e0\u6b64\u4e0d\u7b97\u9519\u8bef\u3002\uff09\u5bf9\u4e8e\u81f4\u547d\u9519\u8bef\u6216\u5176\u4ed6\u4fe1\u53f7\uff0c\u9000\u51fa\u72b6\u6001\u5c06\u4e3a\u975e\u96f6\u503c\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.8\">\n<h2 lang=\"zh\">\u73af\u5883</h2>\n<p lang=\"zh\">\u4e0e\u5927\u591a\u6570\u5176\u4ed6<span class=\"productname\">PostgreSQL</span>\u5de5\u5177\u4e00\u6837\uff0c\u6b64\u5de5\u5177\u4e5f\u4f7f\u7528<span class=\"application\">libpq</span>\u652f\u6301\u7684\u73af\u5883\u53d8\u91cf\uff08\u89c1<a class=\"xref\" href=\"/docs/15/libpq-envars.html\" title=\"34.15.\u00a0\u73af\u5883\u53d8\u91cf\">\u7b2c\u00a034.15\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\">\u73af\u5883\u53d8\u91cf<code class=\"envar\">PG_COLOR</code>\u6307\u5b9a\u662f\u5426\u5728\u8bca\u65ad\u6d88\u606f\u4e2d\u4f7f\u7528\u989c\u8272\u3002\u53ef\u80fd\u7684\u503c\u4e3a<code class=\"literal\">always</code>\u3001<code class=\"literal\">auto</code>\u548c<code class=\"literal\">never</code>\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.9\">\n<h2 lang=\"zh\">\u6ce8\u89e3</h2>\n<p lang=\"zh\">\u5f53\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u800c\u4e0d\u662f<a class=\"xref\" href=\"/docs/15/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u6216<a class=\"xref\" href=\"/docs/15/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u4f5c\u4e3a\u4e3b\u8981 WAL \u5907\u4efd\u65b9\u6cd5\u65f6\uff0c\u5f3a\u70c8\u5efa\u8bae\u4f7f\u7528\u590d\u5236\u69fd\u3002\u5426\u5219\uff0c\u670d\u52a1\u5668\u53ef\u4ee5\u5728\u8fd9\u4e9b\u9884\u5199\u5f0f\u65e5\u5fd7\u6587\u4ef6\u5907\u4efd\u5b8c\u6210\u4e4b\u524d\u81ea\u7531\u56de\u6536\u6216\u5220\u9664\u5b83\u4eec\uff0c\u56e0\u4e3a\u65e0\u8bba\u662f<a class=\"xref\" href=\"/docs/15/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u3001<a class=\"xref\" href=\"/docs/15/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u8fd8\u662f\u590d\u5236\u69fd\uff0c\u90fd\u4e0d\u4f1a\u5411\u670d\u52a1\u5668\u63d0\u4f9b WAL \u6d41\u5df2\u7ecf\u5f52\u6863\u5230\u4ec0\u4e48\u4f4d\u7f6e\u7684\u4fe1\u606f\u3002\u4e0d\u8fc7\u8bf7\u6ce8\u610f\uff0c\u5982\u679c\u63a5\u6536\u7aef\u8ddf\u4e0d\u4e0a\u83b7\u53d6 WAL \u6570\u636e\u7684\u901f\u5ea6\uff0c\u590d\u5236\u69fd\u4f1a\u5360\u6ee1\u670d\u52a1\u5668\u7684\u78c1\u76d8\u7a7a\u95f4\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u6e90\u96c6\u7c07\u542f\u7528\u4e86\u7ec4\u6743\u9650\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u63a5\u6536\u5230\u7684 WAL \u6587\u4ef6\u4e0a\u4fdd\u7559\u8fd9\u4e9b\u7ec4\u6743\u9650\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.10\">\n<h2 lang=\"zh\">\u793a\u4f8b</h2>\n<p lang=\"zh\">\u8981\u4ece\u4f4d\u4e8e<code class=\"literal\">mydbserver</code>\u7684\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\uff0c\u5e76\u5c06\u5176\u5b58\u50a8\u5230\u672c\u5730\u76ee\u5f55<code class=\"filename\">/usr/local/pgsql/archive</code>\uff1a</p>\n<pre class=\"screen\"><code class=\"prompt\">$</code> <strong class=\"userinput\"><code>pg_receivewal -h mydbserver -D /usr/local/pgsql/archive</code></strong>\n</pre>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.11\">\n<h2 lang=\"zh\">\u53e6\u89c1</h2><span class=\"simplelist\"><a class=\"xref\" href=\"https://pg.center/docs/15/app-pgbasebackup.html\" title=\"pg_basebackup\"><span class=\"refentrytitle\"><span class=\"application\">pg_basebackup</span></span></a></span>\n</div>\n</div></div>", "manual_path": "app-pgreceivewal.html", "localization": {"status": "complete", "sources": [{"url": "/docs/15/app-pgreceivewal.html", "method": "same-major semantic node", "sha256": "c18f2ca2aac8dd793eee6a3be3f35f6a5f975ca7be8a41e1bd99f1f7236ca230", "language": "zh", "matched_nodes": ["#APP-PGRECEIVEWAL/div[10]/h2[0]", "#APP-PGRECEIVEWAL/div[2]/p[1]", "#APP-PGRECEIVEWAL/div[3]/h2[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[1]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[2]", "#APP-PGRECEIVEWAL/div[4]/p[1]", "#APP-PGRECEIVEWAL/div[4]/p[2]", "#APP-PGRECEIVEWAL/div[4]/p[3]", "#APP-PGRECEIVEWAL/div[4]/p[4]", "#APP-PGRECEIVEWAL/div[4]/p[5]", "#APP-PGRECEIVEWAL/div[4]/p[7]", "#APP-PGRECEIVEWAL/div[4]/p[8]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[11]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[17]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[9]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/p[2]", "#APP-PGRECEIVEWAL/div[5]/p[4]", "#APP-PGRECEIVEWAL/div[5]/p[6]", "#APP-PGRECEIVEWAL/div[6]/h2[0]", "#APP-PGRECEIVEWAL/div[6]/p[1]", "#APP-PGRECEIVEWAL/div[7]/h2[0]", "#APP-PGRECEIVEWAL/div[7]/p[1]", "#APP-PGRECEIVEWAL/div[7]/p[2]", "#APP-PGRECEIVEWAL/div[8]/h2[0]", "#APP-PGRECEIVEWAL/div[8]/p[1]", "#APP-PGRECEIVEWAL/div[8]/p[2]", "#APP-PGRECEIVEWAL/div[9]/h2[0]", "#APP-PGRECEIVEWAL/div[9]/p[1]"]}], "language": "zh", "original_text": {"/versions/15/description/0": "pg_receivewal \u2014 stream write-ahead logs from a PostgreSQL server", "/versions/15/facts/0/label": "Documented executable", "/versions/15/facts/1/label": "Executable version", "/versions/15/facts/2/label": "Reference inventory", "/versions/15/facts/2/value": "Client applications", "/versions/15/facts/3/label": "Option definition groups", "/versions/15/tables/0/title": "Documented options", "/versions/15/related/0/label": "libpq connection parameters", "/versions/15/tables/0/rows/0/summary": "Directory to write the output to.", "/versions/15/tables/0/rows/1/summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "/versions/15/tables/0/rows/2/summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "/versions/15/tables/0/rows/3/summary": "Don't loop on connection errors. Instead, exit right away with an error.", "/versions/15/tables/0/rows/4/summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "/versions/15/tables/0/rows/5/summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "/versions/15/tables/0/rows/6/summary": "Require pg_receivewal to use an existing replication slot (see Section 27.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "/versions/15/tables/0/rows/7/summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "/versions/15/tables/0/rows/8/summary": "Enables verbose mode.", "/versions/15/tables/0/rows/9/summary": "Enables compression of write-ahead logs.", "/versions/15/tables/0/columns/0/label": "Option and arguments", "/versions/15/tables/0/columns/1/label": "Description", "/versions/15/tables/0/rows/10/summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "/versions/15/tables/0/rows/11/summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "/versions/15/tables/0/rows/12/summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "/versions/15/tables/0/rows/13/summary": "User name to connect as.", "/versions/15/tables/0/rows/14/summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "/versions/15/tables/0/rows/15/summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "/versions/15/tables/0/rows/16/summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "/versions/15/tables/0/rows/17/summary": "Drop the replication slot with the name specified in --slot , then exit.", "/versions/15/tables/0/rows/18/summary": "Print the pg_receivewal version and exit.", "/versions/15/tables/0/rows/19/summary": "Show help about pg_receivewal command line arguments, and exit."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "de881f8ba5456d71b17df7957990baf5e9c1c5b1902c535214a63d64a2d8d7f0"}, "comparison_data": {"options": [{"names": ["-D directory", "--directory= directory"], "signature": "-D directory --directory= directory", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "signature": "-E lsn --endpos= lsn", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "signature": "--if-not-exists", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "signature": "-n --no-loop", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "signature": "--no-sync", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "signature": "-s interval --status-interval= interval", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "signature": "-S slotname --slot= slotname", "description": "Require pg_receivewal to use an existing replication slot (see Section 27.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "signature": "--synchronous", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "signature": "-v --verbose", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "signature": "-d connstr --dbname= connstr", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "signature": "-h host --host= host", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "signature": "-p port --port= port", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "signature": "-U username --username= username", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "signature": "-w --no-password", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "signature": "-W --password", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "signature": "--create-slot", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "signature": "--drop-slot", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "signature": "-V --version", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "signature": "-? --help", "description": "Show help about pg_receivewal command line arguments, and exit."}], "synopsis": ["pg_receivewal [ option ...]"], "environment": []}, "comparison_hash": "456974ca36437ff37ff829e76ef08dff62536a96e4478e0bd00be58fc4d26a8c", "manual_language": "zh"}, "16": {"facts": [{"label": "\u624b\u518c\u4e2d\u7684\u53ef\u6267\u884c\u7a0b\u5e8f", "value": "pg_receivewal"}, {"label": "\u7a0b\u5e8f\u7248\u672c", "value": "16.15"}, {"label": "\u53c2\u8003\u6e05\u5355", "value": "\u5ba2\u6237\u7aef\u7a0b\u5e8f"}, {"label": "\u9009\u9879\u5b9a\u4e49\u7ec4", "value": "20"}], "tables": [{"key": "options", "rows": [{"summary": "\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-D directory --directory= directory"}}, {"summary": "\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-E lsn --endpos= lsn"}}, {"summary": "\u5f53\u6307\u5b9a --create-slot \u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "--if-not-exists"}}, {"summary": "\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-n --no-loop"}}, {"summary": "\u6b64\u9009\u9879\u4f1a\u4f7f pg_receivewal \u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "--no-sync"}}, {"summary": "\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-s interval --status-interval= interval"}}, {"summary": "\u8981\u6c42 pg_receivewal \u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1 \u7b2c 27.2.6 \u8282 \uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c pg_receivewal \u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-S slotname --slot= slotname"}}, {"summary": "\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba --status-interval \u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "--synchronous"}}, {"summary": "\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-v --verbose"}}, {"summary": "\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]"}}, {"summary": "\u4ee5 \u8fde\u63a5\u5b57\u7b26\u4e32 \u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-d connstr --dbname= connstr"}}, {"summary": "\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGHOST \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-h host --host= host"}}, {"summary": "\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGPORT \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-p port --port= port"}}, {"summary": "\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-U username --username= username"}}, {"summary": "\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7 .pgpass \u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-w --no-password"}}, {"summary": "\u5f3a\u5236 pg_receivewal \u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-W --password"}}, {"summary": "\u4f7f\u7528 --slot \u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "--create-slot"}}, {"summary": "\u5220\u9664 --slot \u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "--drop-slot"}}, {"summary": "\u6253\u5370 pg_receivewal \u7684\u7248\u672c\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-V --version"}}, {"summary": "\u663e\u793a pg_receivewal \u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/16/app-pgreceivewal.html", "text": "-? --help"}}], "title": "\u624b\u518c\u4e2d\u7684\u9009\u9879", "columns": [{"key": "signature", "label": "\u9009\u9879\u4e0e\u53c2\u6570"}, {"key": "summary", "label": "\u8bf4\u660e"}]}], "options": [{"names": ["-D directory", "--directory= directory"], "summary": "Directory to write the output to.", "signature": "-D directory --directory= directory", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "signature": "-E lsn --endpos= lsn", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "signature": "--if-not-exists", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "summary": "Don't loop on connection errors. Instead, exit right away with an error.", "signature": "-n --no-loop", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "signature": "--no-sync", "source_url": "/docs/16/app-pgreceivewal.html", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "signature": "-s interval --status-interval= interval", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "summary": "Require pg_receivewal to use an existing replication slot (see Section 27.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "signature": "-S slotname --slot= slotname", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Require pg_receivewal to use an existing replication slot (see Section 27.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "signature": "--synchronous", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "summary": "Enables verbose mode.", "signature": "-v --verbose", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "summary": "Enables compression of write-ahead logs.", "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "signature": "-d connstr --dbname= connstr", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "signature": "-h host --host= host", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "signature": "-p port --port= port", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "summary": "User name to connect as.", "signature": "-U username --username= username", "source_url": "/docs/16/app-pgreceivewal.html", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "signature": "-w --no-password", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "signature": "-W --password", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "signature": "--create-slot", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "summary": "Drop the replication slot with the name specified in --slot , then exit.", "signature": "--drop-slot", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "summary": "Print the pg_receivewal version and exit.", "signature": "-V --version", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "summary": "Show help about pg_receivewal command line arguments, and exit.", "signature": "-? --help", "source_url": "/docs/16/app-pgreceivewal.html", "description": "Show help about pg_receivewal command line arguments, and exit."}], "related": [{"url": "/wiki/conn/?v=16", "label": "libpq \u8fde\u63a5\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v16.15/postgresql-16.15.tar.bz2", "label": "16.15", "major": "16", "channel": "stable", "manifest": {"pdf": {"A4": {"url": "/files/documentation/pdf/16/postgresql-16-A4.pdf", "bytes": 15282337, "pages": 3055, "sha256": "4bb6c1f63deedac98736d8c4c7bc0fad0ac24e85b07e21ee10411872f06afd06", "built_at": "2026-09-26"}, "US": {"url": "/files/documentation/pdf/16/postgresql-16-US.pdf", "bytes": 15164148, "pages": 3220, "sha256": "5b6b6166c89991199e144bb0ae34c17a5f29826251dbf19db1abc0df3a3e771b", "built_at": "2026-09-26"}}, "tree": "16", "index": "index.html", "major": "16", "pages": 1169, "release": "16.15", "source_url": "https://ftp.postgresql.org/pub/source/v16.15/postgresql-16.15.tar.bz2", "svg_assets": 3, "source_mode": "en HTML verified against the pinned official archive", "source_sha256": "c1575341fa7bd40f5274ea465b34390f4dc64cdd0770af327005caaeb9f6b7ed"}, "revision": "3c21e58b35318021716440e67bb8bafd392b6a2b965a244d90e9e33c99e0bdef", "evidence_kind": "English manual and source declarations", "source_sha256": "c1575341fa7bd40f5274ea465b34390f4dc64cdd0770af327005caaeb9f6b7ed"}, "sources": [{"url": "https://pg.center/docs/16/app-pgreceivewal.html", "file": "app-pgreceivewal.html", "label": "16.15 English manual \u00b7 app-pgreceivewal.html", "anchor": "", "sha256": "2b5496e64519a2c5e0b9ee1b4fafb69e81ba2f00213ef4113e3e294aa64caceb", "language": "en", "original_url": "/docs/16/app-pgreceivewal.html"}, {"url": "https://pg.center/docs/16/reference-client.html", "file": "reference-client.html", "label": "Client applications inventory", "anchor": "", "sha256": "a28c30c3c0f8783e16d56413a0b6fd39487e336da1683b29b60abf1c229cef26", "language": "en", "original_url": "/docs/16/reference-client.html"}], "sections": [], "synopsis": ["pg_receivewal [ option ...]"], "signature": "pg_receivewal [ option ...]", "description": ["pg_receivewal \u2014 \u4ece PostgreSQL \u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7"], "environment": [], "manual_html": "<div><div class=\"refentry\" id=\"APP-PGRECEIVEWAL\">\n<div class=\"titlepage\"></div>\n<div class=\"refnamediv\">\n<h2><span class=\"refentrytitle\"><span class=\"application\">pg_receivewal</span></span></h2>\n<p lang=\"zh\">pg_receivewal \u2014 \u4ece<span class=\"productname\">PostgreSQL</span>\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7</p>\n</div>\n<div class=\"refsynopsisdiv\">\n<h2 lang=\"zh\">\u5927\u7eb2</h2>\n<div class=\"cmdsynopsis\">\n<p id=\"id-1.9.4.16.4.1\"><code class=\"command\">pg_receivewal</code> [<em class=\"replaceable\"><code>option</code></em>...]</p>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.5\">\n<h2 lang=\"zh\">\u8bf4\u660e</h2>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u7528\u4e8e\u4ece\u6b63\u5728\u8fd0\u884c\u7684<span class=\"productname\">PostgreSQL</span>\u6570\u636e\u5e93\u96c6\u7c07\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u3002\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u6d41\u590d\u5236\u534f\u8bae\u4f20\u8f93\uff0c\u5e76\u5199\u5165\u672c\u5730\u76ee\u5f55\u4e2d\u7684\u6587\u4ef6\u3002\u8be5\u76ee\u5f55\u53ef\u4f5c\u4e3a\u4f7f\u7528\u65f6\u95f4\u70b9\u6062\u590d\u6267\u884c\u6062\u590d\u65f6\u7684\u5f52\u6863\u4f4d\u7f6e\uff08\u89c1<a class=\"xref\" href=\"/docs/16/continuous-archiving.html\" title=\"26.3.\u00a0\u6301\u7eed\u5f52\u6863\u548c\u65f6\u95f4\u70b9\u6062\u590d\uff08PITR\uff09\">\u7b2c\u00a026.3\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u670d\u52a1\u5668\u751f\u6210\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u540c\u65f6\u5b9e\u65f6\u6d41\u5f0f\u63a5\u6536\uff0c\u800c\u4e0d\u50cf<a class=\"xref\" href=\"/docs/16/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u548c<a class=\"xref\" href=\"/docs/16/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u90a3\u6837\u7b49\u5f85 WAL \u6bb5\u5b8c\u6210\u3002\u56e0\u6b64\uff0c\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u65f6\u65e0\u9700\u8bbe\u7f6e<a class=\"xref\" href=\"/docs/16/runtime-config-wal.html#GUC-ARCHIVE-TIMEOUT\">archive_timeout</a>\u3002</p>\n<p lang=\"zh\">\u4e0e PostgreSQL \u5907\u5e93\u7684 WAL \u63a5\u6536\u8fdb\u7a0b\u4e0d\u540c\uff0c<span class=\"application\">pg_receivewal</span>\u9ed8\u8ba4\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8981\u5b9e\u65f6\u5237\u5199 WAL \u6570\u636e\uff0c\u5fc5\u987b\u6307\u5b9a<code class=\"option\">--synchronous</code>\u9009\u9879\u3002\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u4e0d\u4f1a\u5e94\u7528 WAL\uff0c\u56e0\u6b64\u5f53<a class=\"xref\" href=\"/docs/16/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\">synchronous_commit</a>\u7b49\u4e8e<code class=\"literal\">remote_apply</code>\u65f6\uff0c\u4e0d\u5e94\u8ba9\u5b83\u6210\u4e3a\u540c\u6b65\u5907\u5e93\u3002\u5982\u679c\u8fd9\u6837\u505a\uff0c\u5b83\u770b\u8d77\u6765\u4f1a\u50cf\u4e00\u53f0\u6c38\u8fdc\u8ffd\u4e0d\u4e0a\u7684\u5907\u5e93\uff0c\u5e76\u5bfc\u81f4\u4e8b\u52a1\u63d0\u4ea4\u963b\u585e\u3002\u4e3a\u907f\u514d\u8fd9\u79cd\u60c5\u51b5\uff0c\u5e94\u5f53\u4e3a<a class=\"xref\" href=\"/docs/16/runtime-config-replication.html#GUC-SYNCHRONOUS-STANDBY-NAMES\">synchronous_standby_names</a>\u914d\u7f6e\u5408\u9002\u7684\u503c\uff0c\u6216\u8005\u4e3a<span class=\"application\">pg_receivewal</span>\u6307\u5b9a\u4e00\u4e2a\u4e0e\u4e4b\u4e0d\u5339\u914d\u7684<code class=\"varname\">application_name</code>\uff0c\u6216\u8005\u5c06<code class=\"varname\">synchronous_commit</code>\u6539\u6210<code class=\"literal\">remote_apply</code>\u4ee5\u5916\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u666e\u901a\u7684<span class=\"productname\">PostgreSQL</span>\u8fde\u63a5\u8fdb\u884c\u6d41\u5f0f\u4f20\u8f93\uff0c\u5e76\u4f7f\u7528\u590d\u5236\u534f\u8bae\u3002\u5efa\u7acb\u8be5\u8fde\u63a5\u65f6\uff0c\u5fc5\u987b\u4f7f\u7528\u5177\u6709<code class=\"literal\">REPLICATION</code>\u6743\u9650\uff08\u89c1<a class=\"xref\" href=\"/docs/16/role-attributes.html\" title=\"22.2.\u00a0\u89d2\u8272\u5c5e\u6027\">\u7b2c\u00a022.2\u00a0\u8282</a>\uff09\u7684\u7528\u6237\u6216\u8d85\u7ea7\u7528\u6237\uff0c\u5e76\u4e14<code class=\"filename\">pg_hba.conf</code>\u5fc5\u987b\u5141\u8bb8\u590d\u5236\u8fde\u63a5\u3002\u670d\u52a1\u5668\u8fd8\u5fc5\u987b\u5c06<a class=\"xref\" href=\"/docs/16/runtime-config-replication.html#GUC-MAX-WAL-SENDERS\">max_wal_senders</a>\u8bbe\u7f6e\u5f97\u8db3\u591f\u9ad8\uff0c\u4ee5\u4fbf\u81f3\u5c11\u4e3a\u8be5\u6d41\u4fdd\u7559\u4e00\u4e2a\u53ef\u7528\u4f1a\u8bdd\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u6d41\u5f0f\u4f20\u8f93\u7684\u8d77\u59cb\u4f4d\u7f6e\u4f1a\u5728<span class=\"application\">pg_receivewal</span>\u542f\u52a8\u65f6\u8ba1\u7b97\u51fa\u6765\uff1a</p>\n<div class=\"orderedlist\">\n<ol class=\"orderedlist\">\n<li class=\"listitem\" lang=\"zh\">\n<p>\u9996\u5148\uff0c\u626b\u63cf\u5199\u5165 WAL \u6bb5\u6587\u4ef6\u7684\u76ee\u5f55\uff0c\u627e\u5230\u6700\u65b0\u7684\u5df2\u5b8c\u6210\u6bb5\u6587\u4ef6\uff0c\u5e76\u5c06\u4e0b\u4e00\u4e2a WAL \u6bb5\u6587\u4ef6\u7684\u5f00\u5934\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5e76\u4e14\u4f7f\u7528\u4e86\u590d\u5236\u69fd\uff0c\u5219\u4f1a\u989d\u5916\u53d1\u51fa<code class=\"command\">READ_REPLICATION_SLOT</code>\u547d\u4ee4\uff0c\u4ee5\u83b7\u53d6\u8be5\u69fd\u7684<code class=\"literal\">restart_lsn</code>\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002\u8fd9\u79cd\u65b9\u5f0f\u4ec5\u5728\u4ece<span class=\"productname\">PostgreSQL</span> 15 \u53ca\u4ee5\u4e0a\u7248\u672c\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u65f6\u53ef\u7528\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5219\u4f7f\u7528\u670d\u52a1\u5668\u901a\u8fc7<code class=\"literal\">IDENTIFY_SYSTEM</code>\u547d\u4ee4\u62a5\u544a\u7684\u6700\u65b0 WAL \u5237\u5199\u4f4d\u7f6e\u3002</p>\n</li>\n</ol>\n</div>\n<p lang=\"zh\">\u5982\u679c\u56e0\u975e\u81f4\u547d\u9519\u8bef\u5bfc\u81f4\u8fde\u63a5\u4e2d\u65ad\u6216\u521d\u6b21\u8fde\u63a5\u65e0\u6cd5\u5efa\u7acb\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u65e0\u9650\u671f\u91cd\u8bd5\u8be5\u8fde\u63a5\uff0c\u5e76\u5c3d\u5feb\u91cd\u65b0\u5efa\u7acb\u6d41\u5f0f\u4f20\u8f93\u3002\u8981\u907f\u514d\u8fd9\u79cd\u884c\u4e3a\uff0c\u8bf7\u4f7f\u7528<code class=\"literal\">-n</code>\u53c2\u6570\u3002</p>\n<p lang=\"zh\">\u5728\u6ca1\u6709\u81f4\u547d\u9519\u8bef\u7684\u60c5\u51b5\u4e0b\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u4e00\u76f4\u8fd0\u884c\uff0c\u76f4\u5230\u6536\u5230<span class=\"systemitem\">SIGINT</span>\uff08<span class=\"keycap\"><strong>Control</strong></span>+<span class=\"keycap\"><strong>C</strong></span>\uff09\u6216<span class=\"systemitem\">SIGTERM</span>\u4fe1\u53f7\u4e3a\u6b62\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.6\">\n<h2 lang=\"zh\">\u9009\u9879</h2>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-D <em class=\"replaceable\"><code>directory</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--directory=<em class=\"replaceable\"><code>directory</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u53c2\u6570\u662f\u5fc5\u9700\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-E <em class=\"replaceable\"><code>lsn</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--endpos=<em class=\"replaceable\"><code>lsn</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u5b58\u5728 LSN \u6070\u597d\u7b49\u4e8e<em class=\"replaceable\"><code>lsn</code></em>\u7684\u8bb0\u5f55\uff0c\u8be5\u8bb0\u5f55\u4e5f\u4f1a\u88ab\u5904\u7406\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--if-not-exists</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5f53\u6307\u5b9a<code class=\"option\">--create-slot</code>\u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-n</code><br/></span><span class=\"term\"><code class=\"option\">--no-loop</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--no-sync</code></span></dt>\n<dd>\n<p lang=\"zh\">\u6b64\u9009\u9879\u4f1a\u4f7f<code class=\"command\">pg_receivewal</code>\u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4e0e<code class=\"literal\">--synchronous</code>\u4e0d\u517c\u5bb9\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-s <em class=\"replaceable\"><code>interval</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--status-interval=<em class=\"replaceable\"><code>interval</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-S <em class=\"replaceable\"><code>slotname</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--slot=<em class=\"replaceable\"><code>slotname</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u8981\u6c42<span class=\"application\">pg_receivewal</span>\u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1<a class=\"xref\" href=\"/docs/16/warm-standby.html#STREAMING-REPLICATION-SLOTS\" title=\"27.2.6.\u00a0\u590d\u5236\u69fd\">\u7b2c\u00a027.2.6\u00a0\u8282</a>\uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002</p>\n<p lang=\"zh\">\u5f53\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\u65f6\uff0c\u4f7f\u7528\u590d\u5236\u69fd\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u4f46\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u62a5\u544a\u3002\u56e0\u6b64\uff0c\u8fd9\u79cd\u914d\u7f6e\u4f1a\u5bfc\u81f4\u4e3b\u5e93\u4e0a\u7684\u4e8b\u52a1\u957f\u65f6\u95f4\u7b49\u5f85\uff0c\u5b9e\u9645\u4e0a\u65e0\u6cd5\u4ee4\u4eba\u6ee1\u610f\u5730\u5de5\u4f5c\u3002\u8981\u8ba9\u8fd9\u79cd\u914d\u7f6e\u6b63\u786e\u5de5\u4f5c\uff0c\u8fd8\u5fc5\u987b\u53e6\u5916\u6307\u5b9a<code class=\"literal\">--synchronous</code>\u9009\u9879\uff08\u89c1\u4e0b\u6587\uff09\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--synchronous</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba<code class=\"literal\">--status-interval</code>\u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\uff0c\u5219\u5e94\u6307\u5b9a\u6b64\u9009\u9879\uff0c\u4ee5\u786e\u4fdd\u53ca\u65f6\u5411\u670d\u52a1\u5668\u53d1\u9001\u53cd\u9988\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-v</code><br/></span><span class=\"term\"><code class=\"option\">--verbose</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code></span></dt>\n<dd>\n<p lang=\"zh\">\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u538b\u7f29\u65b9\u6cd5\u53ef\u4ee5\u8bbe\u7f6e\u4e3a<code class=\"literal\">gzip</code>\u3001<code class=\"literal\">lz4</code>\uff08\u5982\u679c<span class=\"productname\">PostgreSQL</span>\u7f16\u8bd1\u65f6\u542f\u7528\u4e86<code class=\"option\">--with-lz4</code>\uff09\u6216<code class=\"literal\">none</code>\uff08\u4e0d\u538b\u7f29\uff09\u3002\u8fd8\u53ef\u4ee5\u9009\u62e9\u6307\u5b9a\u538b\u7f29\u7ec6\u8282\u5b57\u7b26\u4e32\u3002\u5982\u679c\u8be5\u5b57\u7b26\u4e32\u662f\u6574\u6570\uff0c\u5219\u8868\u793a\u538b\u7f29\u7ea7\u522b\uff1b\u5426\u5219\u5e94\u4e3a\u7528\u9017\u53f7\u5206\u9694\u7684\u5217\u8868\uff0c\u5176\u4e2d\u6bcf\u4e00\u9879\u90fd\u91c7\u7528<em class=\"replaceable\"><code>keyword</code></em>\u6216<em class=\"replaceable\"><code>keyword=value</code></em>\u7684\u5f62\u5f0f\u3002\u76ee\u524d\uff0c\u552f\u4e00\u652f\u6301\u7684\u5173\u952e\u5b57\u662f<code class=\"literal\">level</code>\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u672a\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff0c\u5c06\u4f7f\u7528\u9ed8\u8ba4\u7ea7\u522b\u3002\u5982\u679c\u53ea\u6307\u5b9a\u7ea7\u522b\u800c\u672a\u6307\u5b9a\u7b97\u6cd5\uff0c\u5219\u7ea7\u522b\u5927\u4e8e 0 \u65f6\u4f7f\u7528 gzip \u538b\u7f29\uff0c\u7ea7\u522b\u4e3a 0 \u65f6\u4e0d\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u4f7f\u7528 gzip \u65f6\uff0c\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0 .gz \u540e\u7f00\uff1b\u4f7f\u7528 lz4 \u65f6\uff0c\u6dfb\u52a0 .lz4 \u540e\u7f00\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e0b\u5217\u547d\u4ee4\u884c\u9009\u9879\u63a7\u5236\u6570\u636e\u5e93\u8fde\u63a5\u53c2\u6570\u3002</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-d <em class=\"replaceable\"><code>connstr</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--dbname=<em class=\"replaceable\"><code>connstr</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u4ee5<a class=\"link\" href=\"/docs/16/libpq-connect.html#LIBPQ-CONNSTRING\" title=\"34.1.1.\u00a0\u8fde\u63a5\u5b57\u7b26\u4e32\">\u8fde\u63a5\u5b57\u7b26\u4e32</a>\u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002</p>\n<p lang=\"zh\">\u4e3a\u4e86\u4e0e\u5176\u4ed6\u5ba2\u6237\u7aef\u5e94\u7528\u4fdd\u6301\u4e00\u81f4\uff0c\u8be5\u9009\u9879\u88ab\u79f0\u4e3a<code class=\"literal\">--dbname</code>\u3002\u4f46\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u5e76\u4e0d\u8fde\u63a5\u5230\u96c6\u7c07\u4e2d\u7684\u4efb\u4f55\u7279\u5b9a\u6570\u636e\u5e93\uff0c\u8fde\u63a5\u5b57\u7b26\u4e32\u4e2d\u5305\u542b\u7684\u6570\u636e\u5e93\u540d\u4f1a\u88ab\u670d\u52a1\u5668\u5ffd\u7565\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-h <em class=\"replaceable\"><code>host</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--host=<em class=\"replaceable\"><code>host</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGHOST</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-p <em class=\"replaceable\"><code>port</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--port=<em class=\"replaceable\"><code>port</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGPORT</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-U <em class=\"replaceable\"><code>username</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--username=<em class=\"replaceable\"><code>username</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-w</code><br/></span><span class=\"term\"><code class=\"option\">--no-password</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7<code class=\"filename\">.pgpass</code>\u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-W</code><br/></span><span class=\"term\"><code class=\"option\">--password</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f3a\u5236<span class=\"application\">pg_receivewal</span>\u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4ece\u6765\u90fd\u4e0d\u662f\u5fc5\u9700\u7684\uff0c\u56e0\u4e3a\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u81ea\u52a8\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u4e0d\u8fc7\uff0c<span class=\"application\">pg_receivewal</span>\u9700\u8981\u5148\u6d6a\u8d39\u4e00\u6b21\u8fde\u63a5\u5c1d\u8bd5\uff0c\u624d\u80fd\u53d1\u73b0\u670d\u52a1\u5668\u9700\u8981\u5bc6\u7801\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u8f93\u5165<code class=\"option\">-W</code>\u4ee5\u907f\u514d\u8fd9\u6b21\u989d\u5916\u7684\u8fde\u63a5\u5c1d\u8bd5\u662f\u503c\u5f97\u7684\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e3a\u4e86\u63a7\u5236\u7269\u7406\u590d\u5236\u69fd\uff0c<span class=\"application\">pg_receivewal</span> \u53ef\u4ee5\u6267\u884c\u4e0b\u5217\u4e24\u79cd\u64cd\u4f5c\u4e4b\u4e00\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">--create-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u4f7f\u7528<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--drop-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5220\u9664<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u8fd8\u53ef\u4ee5\u4f7f\u7528\u4e0b\u5217\u5176\u4ed6\u9009\u9879\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-V</code><br/></span><span class=\"term\"><code class=\"option\">--version</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6253\u5370<span class=\"application\">pg_receivewal</span>\u7684\u7248\u672c\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-?</code><br/></span><span class=\"term\"><code class=\"option\">--help</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u663e\u793a<span class=\"application\">pg_receivewal</span>\u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.7\">\n<h2 lang=\"zh\">\u9000\u51fa\u72b6\u6001</h2>\n<p lang=\"zh\">\u5f53\u56e0<span class=\"systemitem\">SIGINT</span>\u6216<span class=\"systemitem\">SIGTERM</span>\u4fe1\u53f7\u7ec8\u6b62\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u4ee5\u72b6\u6001 0 \u9000\u51fa\u3002\uff08\u8fd9\u662f\u5176\u6b63\u5e38\u7ed3\u675f\u65b9\u5f0f\uff0c\u56e0\u6b64\u4e0d\u7b97\u9519\u8bef\u3002\uff09\u5bf9\u4e8e\u81f4\u547d\u9519\u8bef\u6216\u5176\u4ed6\u4fe1\u53f7\uff0c\u9000\u51fa\u72b6\u6001\u5c06\u4e3a\u975e\u96f6\u503c\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.8\">\n<h2 lang=\"zh\">\u73af\u5883</h2>\n<p lang=\"zh\">\u4e0e\u5927\u591a\u6570\u5176\u4ed6<span class=\"productname\">PostgreSQL</span>\u5de5\u5177\u4e00\u6837\uff0c\u6b64\u5de5\u5177\u4e5f\u4f7f\u7528<span class=\"application\">libpq</span>\u652f\u6301\u7684\u73af\u5883\u53d8\u91cf\uff08\u89c1<a class=\"xref\" href=\"/docs/16/libpq-envars.html\" title=\"34.15.\u00a0\u73af\u5883\u53d8\u91cf\">\u7b2c\u00a034.15\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\">\u73af\u5883\u53d8\u91cf<code class=\"envar\">PG_COLOR</code>\u6307\u5b9a\u662f\u5426\u5728\u8bca\u65ad\u6d88\u606f\u4e2d\u4f7f\u7528\u989c\u8272\u3002\u53ef\u80fd\u7684\u503c\u4e3a<code class=\"literal\">always</code>\u3001<code class=\"literal\">auto</code>\u548c<code class=\"literal\">never</code>\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.9\">\n<h2 lang=\"zh\">\u6ce8\u89e3</h2>\n<p lang=\"zh\">\u5f53\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u800c\u4e0d\u662f<a class=\"xref\" href=\"/docs/16/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u6216<a class=\"xref\" href=\"/docs/16/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u4f5c\u4e3a\u4e3b\u8981 WAL \u5907\u4efd\u65b9\u6cd5\u65f6\uff0c\u5f3a\u70c8\u5efa\u8bae\u4f7f\u7528\u590d\u5236\u69fd\u3002\u5426\u5219\uff0c\u670d\u52a1\u5668\u53ef\u4ee5\u5728\u8fd9\u4e9b\u9884\u5199\u5f0f\u65e5\u5fd7\u6587\u4ef6\u5907\u4efd\u5b8c\u6210\u4e4b\u524d\u81ea\u7531\u56de\u6536\u6216\u5220\u9664\u5b83\u4eec\uff0c\u56e0\u4e3a\u65e0\u8bba\u662f<a class=\"xref\" href=\"/docs/16/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u3001<a class=\"xref\" href=\"/docs/16/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u8fd8\u662f\u590d\u5236\u69fd\uff0c\u90fd\u4e0d\u4f1a\u5411\u670d\u52a1\u5668\u63d0\u4f9b WAL \u6d41\u5df2\u7ecf\u5f52\u6863\u5230\u4ec0\u4e48\u4f4d\u7f6e\u7684\u4fe1\u606f\u3002\u4e0d\u8fc7\u8bf7\u6ce8\u610f\uff0c\u5982\u679c\u63a5\u6536\u7aef\u8ddf\u4e0d\u4e0a\u83b7\u53d6 WAL \u6570\u636e\u7684\u901f\u5ea6\uff0c\u590d\u5236\u69fd\u4f1a\u5360\u6ee1\u670d\u52a1\u5668\u7684\u78c1\u76d8\u7a7a\u95f4\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u6e90\u96c6\u7c07\u542f\u7528\u4e86\u7ec4\u6743\u9650\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u63a5\u6536\u5230\u7684 WAL \u6587\u4ef6\u4e0a\u4fdd\u7559\u8fd9\u4e9b\u7ec4\u6743\u9650\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.10\">\n<h2 lang=\"zh\">\u793a\u4f8b</h2>\n<p lang=\"zh\">\u8981\u4ece\u4f4d\u4e8e<code class=\"literal\">mydbserver</code>\u7684\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\uff0c\u5e76\u5c06\u5176\u5b58\u50a8\u5230\u672c\u5730\u76ee\u5f55<code class=\"filename\">/usr/local/pgsql/archive</code>\uff1a</p>\n<pre class=\"screen\"><code class=\"prompt\">$</code> <strong class=\"userinput\"><code>pg_receivewal -h mydbserver -D /usr/local/pgsql/archive</code></strong>\n</pre>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.16.11\">\n<h2 lang=\"zh\">\u53e6\u89c1</h2><span class=\"simplelist\"><a class=\"xref\" href=\"https://pg.center/docs/16/app-pgbasebackup.html\" title=\"pg_basebackup\"><span class=\"refentrytitle\"><span class=\"application\">pg_basebackup</span></span></a></span>\n</div>\n</div></div>", "manual_path": "app-pgreceivewal.html", "localization": {"status": "complete", "sources": [{"url": "/docs/16/app-pgreceivewal.html", "method": "same-major semantic node", "sha256": "953dbba46b6fe56f40fb2be8c176cd7d26d29cb13708a4bde13cf135b74f388d", "language": "zh", "matched_nodes": ["#APP-PGRECEIVEWAL/div[10]/h2[0]", "#APP-PGRECEIVEWAL/div[2]/p[1]", "#APP-PGRECEIVEWAL/div[3]/h2[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[1]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[2]", "#APP-PGRECEIVEWAL/div[4]/p[1]", "#APP-PGRECEIVEWAL/div[4]/p[2]", "#APP-PGRECEIVEWAL/div[4]/p[3]", "#APP-PGRECEIVEWAL/div[4]/p[4]", "#APP-PGRECEIVEWAL/div[4]/p[5]", "#APP-PGRECEIVEWAL/div[4]/p[7]", "#APP-PGRECEIVEWAL/div[4]/p[8]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[11]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[17]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[9]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/p[2]", "#APP-PGRECEIVEWAL/div[5]/p[4]", "#APP-PGRECEIVEWAL/div[5]/p[6]", "#APP-PGRECEIVEWAL/div[6]/h2[0]", "#APP-PGRECEIVEWAL/div[6]/p[1]", "#APP-PGRECEIVEWAL/div[7]/h2[0]", "#APP-PGRECEIVEWAL/div[7]/p[1]", "#APP-PGRECEIVEWAL/div[7]/p[2]", "#APP-PGRECEIVEWAL/div[8]/h2[0]", "#APP-PGRECEIVEWAL/div[8]/p[1]", "#APP-PGRECEIVEWAL/div[8]/p[2]", "#APP-PGRECEIVEWAL/div[9]/h2[0]", "#APP-PGRECEIVEWAL/div[9]/p[1]"]}], "language": "zh", "original_text": {"/versions/16/description/0": "pg_receivewal \u2014 stream write-ahead logs from a PostgreSQL server", "/versions/16/facts/0/label": "Documented executable", "/versions/16/facts/1/label": "Executable version", "/versions/16/facts/2/label": "Reference inventory", "/versions/16/facts/2/value": "Client applications", "/versions/16/facts/3/label": "Option definition groups", "/versions/16/tables/0/title": "Documented options", "/versions/16/related/0/label": "libpq connection parameters", "/versions/16/tables/0/rows/0/summary": "Directory to write the output to.", "/versions/16/tables/0/rows/1/summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "/versions/16/tables/0/rows/2/summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "/versions/16/tables/0/rows/3/summary": "Don't loop on connection errors. Instead, exit right away with an error.", "/versions/16/tables/0/rows/4/summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "/versions/16/tables/0/rows/5/summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "/versions/16/tables/0/rows/6/summary": "Require pg_receivewal to use an existing replication slot (see Section 27.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "/versions/16/tables/0/rows/7/summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "/versions/16/tables/0/rows/8/summary": "Enables verbose mode.", "/versions/16/tables/0/rows/9/summary": "Enables compression of write-ahead logs.", "/versions/16/tables/0/columns/0/label": "Option and arguments", "/versions/16/tables/0/columns/1/label": "Description", "/versions/16/tables/0/rows/10/summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "/versions/16/tables/0/rows/11/summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "/versions/16/tables/0/rows/12/summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "/versions/16/tables/0/rows/13/summary": "User name to connect as.", "/versions/16/tables/0/rows/14/summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "/versions/16/tables/0/rows/15/summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "/versions/16/tables/0/rows/16/summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "/versions/16/tables/0/rows/17/summary": "Drop the replication slot with the name specified in --slot , then exit.", "/versions/16/tables/0/rows/18/summary": "Print the pg_receivewal version and exit.", "/versions/16/tables/0/rows/19/summary": "Show help about pg_receivewal command line arguments, and exit."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "56bdf7ddc3f89cd1335a462e91def964cb61e26d083f9e2e7d33012c819edc00"}, "comparison_data": {"options": [{"names": ["-D directory", "--directory= directory"], "signature": "-D directory --directory= directory", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "signature": "-E lsn --endpos= lsn", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "signature": "--if-not-exists", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "signature": "-n --no-loop", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "signature": "--no-sync", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "signature": "-s interval --status-interval= interval", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "signature": "-S slotname --slot= slotname", "description": "Require pg_receivewal to use an existing replication slot (see Section 27.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "signature": "--synchronous", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "signature": "-v --verbose", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "signature": "-d connstr --dbname= connstr", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored."}, {"names": ["-h host", "--host= host"], "signature": "-h host --host= host", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "signature": "-p port --port= port", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "signature": "-U username --username= username", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "signature": "-w --no-password", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "signature": "-W --password", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "signature": "--create-slot", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "signature": "--drop-slot", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "signature": "-V --version", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "signature": "-? --help", "description": "Show help about pg_receivewal command line arguments, and exit."}], "synopsis": ["pg_receivewal [ option ...]"], "environment": []}, "comparison_hash": "456974ca36437ff37ff829e76ef08dff62536a96e4478e0bd00be58fc4d26a8c", "manual_language": "zh"}, "17": {"facts": [{"label": "\u624b\u518c\u4e2d\u7684\u53ef\u6267\u884c\u7a0b\u5e8f", "value": "pg_receivewal"}, {"label": "\u7a0b\u5e8f\u7248\u672c", "value": "17.11"}, {"label": "\u53c2\u8003\u6e05\u5355", "value": "\u5ba2\u6237\u7aef\u7a0b\u5e8f"}, {"label": "\u9009\u9879\u5b9a\u4e49\u7ec4", "value": "20"}], "tables": [{"key": "options", "rows": [{"summary": "\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-D directory --directory= directory"}}, {"summary": "\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-E lsn --endpos= lsn"}}, {"summary": "\u5f53\u6307\u5b9a --create-slot \u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "--if-not-exists"}}, {"summary": "\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-n --no-loop"}}, {"summary": "\u6b64\u9009\u9879\u4f1a\u4f7f pg_receivewal \u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "--no-sync"}}, {"summary": "\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-s interval --status-interval= interval"}}, {"summary": "\u8981\u6c42 pg_receivewal \u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1 \u7b2c 26.2.6 \u8282 \uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c pg_receivewal \u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-S slotname --slot= slotname"}}, {"summary": "\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba --status-interval \u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "--synchronous"}}, {"summary": "\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-v --verbose"}}, {"summary": "\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]"}}, {"summary": "\u4ee5 \u8fde\u63a5\u5b57\u7b26\u4e32 \u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-d connstr --dbname= connstr"}}, {"summary": "\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGHOST \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-h host --host= host"}}, {"summary": "\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGPORT \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-p port --port= port"}}, {"summary": "\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-U username --username= username"}}, {"summary": "\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7 .pgpass \u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-w --no-password"}}, {"summary": "\u5f3a\u5236 pg_receivewal \u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-W --password"}}, {"summary": "\u4f7f\u7528 --slot \u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "--create-slot"}}, {"summary": "\u5220\u9664 --slot \u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "--drop-slot"}}, {"summary": "\u6253\u5370 pg_receivewal \u7684\u7248\u672c\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-V --version"}}, {"summary": "\u663e\u793a pg_receivewal \u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/17/app-pgreceivewal.html", "text": "-? --help"}}], "title": "\u624b\u518c\u4e2d\u7684\u9009\u9879", "columns": [{"key": "signature", "label": "\u9009\u9879\u4e0e\u53c2\u6570"}, {"key": "summary", "label": "\u8bf4\u660e"}]}], "options": [{"names": ["-D directory", "--directory= directory"], "summary": "Directory to write the output to.", "signature": "-D directory --directory= directory", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "signature": "-E lsn --endpos= lsn", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "signature": "--if-not-exists", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "summary": "Don't loop on connection errors. Instead, exit right away with an error.", "signature": "-n --no-loop", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "signature": "--no-sync", "source_url": "/docs/17/app-pgreceivewal.html", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "signature": "-s interval --status-interval= interval", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "signature": "-S slotname --slot= slotname", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "signature": "--synchronous", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "summary": "Enables verbose mode.", "signature": "-v --verbose", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "summary": "Enables compression of write-ahead logs.", "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "signature": "-d connstr --dbname= connstr", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. This option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, any database name included in the connection string will be ignored by the server. However, a database name supplied that way overrides the default database name ( replication ) for purposes of looking up the replication connection's password in ~/.pgpass . Similarly, middleware or proxies used in connecting to PostgreSQL might utilize the name for purposes such as connection routing."}, {"names": ["-h host", "--host= host"], "summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "signature": "-h host --host= host", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "signature": "-p port --port= port", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "summary": "User name to connect as.", "signature": "-U username --username= username", "source_url": "/docs/17/app-pgreceivewal.html", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "signature": "-w --no-password", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "signature": "-W --password", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "signature": "--create-slot", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "summary": "Drop the replication slot with the name specified in --slot , then exit.", "signature": "--drop-slot", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "summary": "Print the pg_receivewal version and exit.", "signature": "-V --version", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "summary": "Show help about pg_receivewal command line arguments, and exit.", "signature": "-? --help", "source_url": "/docs/17/app-pgreceivewal.html", "description": "Show help about pg_receivewal command line arguments, and exit."}], "related": [{"url": "/wiki/conn/?v=17", "label": "libpq \u8fde\u63a5\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v17.11/postgresql-17.11.tar.bz2", "label": "17.11", "major": "17", "channel": "stable", "manifest": {"pdf": {"A4": {"url": "/files/documentation/pdf/17/postgresql-17-A4.pdf", "bytes": 15521293, "pages": 3099, "sha256": "1991354df0dc89e70ec39328c28988ef8b19c6a93671dab3893650b63e9f4e36", "built_at": "2026-09-26"}, "US": {"url": "/files/documentation/pdf/17/postgresql-17-US.pdf", "bytes": 15398150, "pages": 3270, "sha256": "07696c8f38abf31babf22d2db337093936e7c472d2af36d050b000c49bbcf52c", "built_at": "2026-09-26"}}, "tree": "17", "index": "index.html", "major": "17", "pages": 1143, "release": "17.11", "source_url": "https://ftp.postgresql.org/pub/source/v17.11/postgresql-17.11.tar.bz2", "svg_assets": 3, "source_mode": "en SGML built with pinned official archive", "source_sha256": "dd27f2b3c59e73ed14aa3324901242bf69a032a6347805f274e6260322d42979"}, "revision": "58419c9b0dd42cb34c8d53695bb025a7e582edf55ccd4c5bcb1c2c7c71a37487", "evidence_kind": "English manual and source declarations", "source_sha256": "dd27f2b3c59e73ed14aa3324901242bf69a032a6347805f274e6260322d42979"}, "sources": [{"url": "https://pg.center/docs/17/app-pgreceivewal.html", "file": "app-pgreceivewal.html", "label": "17.11 English manual \u00b7 app-pgreceivewal.html", "anchor": "", "sha256": "c8e8a5981b46fe15811954ed7ddfe72d462eafe02f6cac604533fee17f1ad243", "language": "en", "original_url": "/docs/17/app-pgreceivewal.html"}, {"url": "https://pg.center/docs/17/reference-client.html", "file": "reference-client.html", "label": "Client applications inventory", "anchor": "", "sha256": "3194fc72ddad8e2fcba55f8e007f83413cb352146cb65aaa9457a18d0314ee1b", "language": "en", "original_url": "/docs/17/reference-client.html"}], "sections": [], "synopsis": ["pg_receivewal [ option ...]"], "signature": "pg_receivewal [ option ...]", "description": ["pg_receivewal \u2014 \u4ece PostgreSQL \u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7"], "environment": [], "manual_html": "<div><div class=\"refentry\" id=\"APP-PGRECEIVEWAL\">\n<div class=\"titlepage\"></div>\n<div class=\"refnamediv\">\n<h2><span class=\"refentrytitle\"><span class=\"application\">pg_receivewal</span></span></h2>\n<p lang=\"zh\">pg_receivewal \u2014 \u4ece<span class=\"productname\">PostgreSQL</span>\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7</p>\n</div>\n<div class=\"refsynopsisdiv\">\n<h2 lang=\"zh\">\u5927\u7eb2</h2>\n<div class=\"cmdsynopsis\">\n<p id=\"id-1.9.4.17.4.1\"><code class=\"command\">pg_receivewal</code> [<em class=\"replaceable\"><code>option</code></em>...]</p>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.5\">\n<h2 lang=\"zh\">\u8bf4\u660e</h2>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u7528\u4e8e\u4ece\u6b63\u5728\u8fd0\u884c\u7684<span class=\"productname\">PostgreSQL</span>\u6570\u636e\u5e93\u96c6\u7c07\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u3002\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u6d41\u590d\u5236\u534f\u8bae\u4f20\u8f93\uff0c\u5e76\u5199\u5165\u672c\u5730\u76ee\u5f55\u4e2d\u7684\u6587\u4ef6\u3002\u8be5\u76ee\u5f55\u53ef\u4f5c\u4e3a\u4f7f\u7528\u65f6\u95f4\u70b9\u6062\u590d\u6267\u884c\u6062\u590d\u65f6\u7684\u5f52\u6863\u4f4d\u7f6e\uff08\u89c1<a class=\"xref\" href=\"/docs/17/continuous-archiving.html\" title=\"25.3.\u00a0\u6301\u7eed\u5f52\u6863\u548c\u65f6\u95f4\u70b9\u6062\u590d\uff08PITR\uff09\">\u7b2c\u00a025.3\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u670d\u52a1\u5668\u751f\u6210\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u540c\u65f6\u5b9e\u65f6\u6d41\u5f0f\u63a5\u6536\uff0c\u800c\u4e0d\u50cf<a class=\"xref\" href=\"/docs/17/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u548c<a class=\"xref\" href=\"/docs/17/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u90a3\u6837\u7b49\u5f85 WAL \u6bb5\u5b8c\u6210\u3002\u56e0\u6b64\uff0c\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u65f6\u65e0\u9700\u8bbe\u7f6e<a class=\"xref\" href=\"/docs/17/runtime-config-wal.html#GUC-ARCHIVE-TIMEOUT\">archive_timeout</a>\u3002</p>\n<p lang=\"zh\">\u4e0e PostgreSQL \u5907\u5e93\u7684 WAL \u63a5\u6536\u8fdb\u7a0b\u4e0d\u540c\uff0c<span class=\"application\">pg_receivewal</span>\u9ed8\u8ba4\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8981\u5b9e\u65f6\u5237\u5199 WAL \u6570\u636e\uff0c\u5fc5\u987b\u6307\u5b9a<code class=\"option\">--synchronous</code>\u9009\u9879\u3002\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u4e0d\u4f1a\u5e94\u7528 WAL\uff0c\u56e0\u6b64\u5f53<a class=\"xref\" href=\"/docs/17/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\">synchronous_commit</a>\u7b49\u4e8e<code class=\"literal\">remote_apply</code>\u65f6\uff0c\u4e0d\u5e94\u8ba9\u5b83\u6210\u4e3a\u540c\u6b65\u5907\u5e93\u3002\u5982\u679c\u8fd9\u6837\u505a\uff0c\u5b83\u770b\u8d77\u6765\u4f1a\u50cf\u4e00\u53f0\u6c38\u8fdc\u8ffd\u4e0d\u4e0a\u7684\u5907\u5e93\uff0c\u5e76\u5bfc\u81f4\u4e8b\u52a1\u63d0\u4ea4\u963b\u585e\u3002\u4e3a\u907f\u514d\u8fd9\u79cd\u60c5\u51b5\uff0c\u5e94\u5f53\u4e3a<a class=\"xref\" href=\"/docs/17/runtime-config-replication.html#GUC-SYNCHRONOUS-STANDBY-NAMES\">synchronous_standby_names</a>\u914d\u7f6e\u5408\u9002\u7684\u503c\uff0c\u6216\u8005\u4e3a<span class=\"application\">pg_receivewal</span>\u6307\u5b9a\u4e00\u4e2a\u4e0e\u4e4b\u4e0d\u5339\u914d\u7684<code class=\"varname\">application_name</code>\uff0c\u6216\u8005\u5c06<code class=\"varname\">synchronous_commit</code>\u6539\u6210<code class=\"literal\">remote_apply</code>\u4ee5\u5916\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u666e\u901a\u7684<span class=\"productname\">PostgreSQL</span>\u8fde\u63a5\u8fdb\u884c\u6d41\u5f0f\u4f20\u8f93\uff0c\u5e76\u4f7f\u7528\u590d\u5236\u534f\u8bae\u3002\u5efa\u7acb\u8be5\u8fde\u63a5\u65f6\uff0c\u5fc5\u987b\u4f7f\u7528\u5177\u6709<code class=\"literal\">REPLICATION</code>\u6743\u9650\uff08\u89c1<a class=\"xref\" href=\"/docs/17/role-attributes.html\" title=\"21.2.\u00a0\u89d2\u8272\u5c5e\u6027\">\u7b2c\u00a021.2\u00a0\u8282</a>\uff09\u7684\u7528\u6237\u6216\u8d85\u7ea7\u7528\u6237\uff0c\u5e76\u4e14<code class=\"filename\">pg_hba.conf</code>\u5fc5\u987b\u5141\u8bb8\u590d\u5236\u8fde\u63a5\u3002\u670d\u52a1\u5668\u8fd8\u5fc5\u987b\u5c06<a class=\"xref\" href=\"/docs/17/runtime-config-replication.html#GUC-MAX-WAL-SENDERS\">max_wal_senders</a>\u8bbe\u7f6e\u5f97\u8db3\u591f\u9ad8\uff0c\u4ee5\u4fbf\u81f3\u5c11\u4e3a\u8be5\u6d41\u4fdd\u7559\u4e00\u4e2a\u53ef\u7528\u4f1a\u8bdd\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u6d41\u5f0f\u4f20\u8f93\u7684\u8d77\u59cb\u4f4d\u7f6e\u4f1a\u5728<span class=\"application\">pg_receivewal</span>\u542f\u52a8\u65f6\u8ba1\u7b97\u51fa\u6765\uff1a</p>\n<div class=\"orderedlist\">\n<ol class=\"orderedlist\">\n<li class=\"listitem\" lang=\"zh\">\n<p>\u9996\u5148\uff0c\u626b\u63cf\u5199\u5165 WAL \u6bb5\u6587\u4ef6\u7684\u76ee\u5f55\uff0c\u627e\u5230\u6700\u65b0\u7684\u5df2\u5b8c\u6210\u6bb5\u6587\u4ef6\uff0c\u5e76\u5c06\u4e0b\u4e00\u4e2a WAL \u6bb5\u6587\u4ef6\u7684\u5f00\u5934\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5e76\u4e14\u4f7f\u7528\u4e86\u590d\u5236\u69fd\uff0c\u5219\u4f1a\u989d\u5916\u53d1\u51fa<code class=\"command\">READ_REPLICATION_SLOT</code>\u547d\u4ee4\uff0c\u4ee5\u83b7\u53d6\u8be5\u69fd\u7684<code class=\"literal\">restart_lsn</code>\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002\u8fd9\u79cd\u65b9\u5f0f\u4ec5\u5728\u4ece<span class=\"productname\">PostgreSQL</span> 15 \u53ca\u4ee5\u4e0a\u7248\u672c\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u65f6\u53ef\u7528\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5219\u4f7f\u7528\u670d\u52a1\u5668\u901a\u8fc7<code class=\"literal\">IDENTIFY_SYSTEM</code>\u547d\u4ee4\u62a5\u544a\u7684\u6700\u65b0 WAL \u5237\u5199\u4f4d\u7f6e\u3002</p>\n</li>\n</ol>\n</div>\n<p lang=\"zh\">\u5982\u679c\u56e0\u975e\u81f4\u547d\u9519\u8bef\u5bfc\u81f4\u8fde\u63a5\u4e2d\u65ad\u6216\u521d\u6b21\u8fde\u63a5\u65e0\u6cd5\u5efa\u7acb\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u65e0\u9650\u671f\u91cd\u8bd5\u8be5\u8fde\u63a5\uff0c\u5e76\u5c3d\u5feb\u91cd\u65b0\u5efa\u7acb\u6d41\u5f0f\u4f20\u8f93\u3002\u8981\u907f\u514d\u8fd9\u79cd\u884c\u4e3a\uff0c\u8bf7\u4f7f\u7528<code class=\"literal\">-n</code>\u53c2\u6570\u3002</p>\n<p lang=\"zh\">\u5728\u6ca1\u6709\u81f4\u547d\u9519\u8bef\u7684\u60c5\u51b5\u4e0b\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u4e00\u76f4\u8fd0\u884c\uff0c\u76f4\u5230\u6536\u5230<span class=\"systemitem\">SIGINT</span>\uff08<span class=\"keycap\"><strong>Control</strong></span>+<span class=\"keycap\"><strong>C</strong></span>\uff09\u6216<span class=\"systemitem\">SIGTERM</span>\u4fe1\u53f7\u4e3a\u6b62\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.6\">\n<h2 lang=\"zh\">\u9009\u9879</h2>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-D <em class=\"replaceable\"><code>directory</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--directory=<em class=\"replaceable\"><code>directory</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u53c2\u6570\u662f\u5fc5\u9700\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-E <em class=\"replaceable\"><code>lsn</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--endpos=<em class=\"replaceable\"><code>lsn</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u5b58\u5728 LSN \u6070\u597d\u7b49\u4e8e<em class=\"replaceable\"><code>lsn</code></em>\u7684\u8bb0\u5f55\uff0c\u8be5\u8bb0\u5f55\u4e5f\u4f1a\u88ab\u5904\u7406\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--if-not-exists</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5f53\u6307\u5b9a<code class=\"option\">--create-slot</code>\u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-n</code><br/></span><span class=\"term\"><code class=\"option\">--no-loop</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--no-sync</code></span></dt>\n<dd>\n<p lang=\"zh\">\u6b64\u9009\u9879\u4f1a\u4f7f<code class=\"command\">pg_receivewal</code>\u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4e0e<code class=\"literal\">--synchronous</code>\u4e0d\u517c\u5bb9\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-s <em class=\"replaceable\"><code>interval</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--status-interval=<em class=\"replaceable\"><code>interval</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-S <em class=\"replaceable\"><code>slotname</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--slot=<em class=\"replaceable\"><code>slotname</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u8981\u6c42<span class=\"application\">pg_receivewal</span>\u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1<a class=\"xref\" href=\"/docs/17/warm-standby.html#STREAMING-REPLICATION-SLOTS\" title=\"26.2.6.\u00a0\u590d\u5236\u69fd\">\u7b2c\u00a026.2.6\u00a0\u8282</a>\uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002</p>\n<p lang=\"zh\">\u5f53\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\u65f6\uff0c\u4f7f\u7528\u590d\u5236\u69fd\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u4f46\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u62a5\u544a\u3002\u56e0\u6b64\uff0c\u8fd9\u79cd\u914d\u7f6e\u4f1a\u5bfc\u81f4\u4e3b\u5e93\u4e0a\u7684\u4e8b\u52a1\u957f\u65f6\u95f4\u7b49\u5f85\uff0c\u5b9e\u9645\u4e0a\u65e0\u6cd5\u4ee4\u4eba\u6ee1\u610f\u5730\u5de5\u4f5c\u3002\u8981\u8ba9\u8fd9\u79cd\u914d\u7f6e\u6b63\u786e\u5de5\u4f5c\uff0c\u8fd8\u5fc5\u987b\u53e6\u5916\u6307\u5b9a<code class=\"literal\">--synchronous</code>\u9009\u9879\uff08\u89c1\u4e0b\u6587\uff09\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--synchronous</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba<code class=\"literal\">--status-interval</code>\u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\uff0c\u5219\u5e94\u6307\u5b9a\u6b64\u9009\u9879\uff0c\u4ee5\u786e\u4fdd\u53ca\u65f6\u5411\u670d\u52a1\u5668\u53d1\u9001\u53cd\u9988\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-v</code><br/></span><span class=\"term\"><code class=\"option\">--verbose</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code></span></dt>\n<dd>\n<p lang=\"zh\">\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u538b\u7f29\u65b9\u6cd5\u53ef\u4ee5\u8bbe\u7f6e\u4e3a<code class=\"literal\">gzip</code>\u3001<code class=\"literal\">lz4</code>\uff08\u5982\u679c<span class=\"productname\">PostgreSQL</span>\u7f16\u8bd1\u65f6\u542f\u7528\u4e86<code class=\"option\">--with-lz4</code>\uff09\u6216<code class=\"literal\">none</code>\uff08\u4e0d\u538b\u7f29\uff09\u3002\u8fd8\u53ef\u4ee5\u9009\u62e9\u6307\u5b9a\u538b\u7f29\u7ec6\u8282\u5b57\u7b26\u4e32\u3002\u5982\u679c\u8be5\u5b57\u7b26\u4e32\u662f\u6574\u6570\uff0c\u5219\u8868\u793a\u538b\u7f29\u7ea7\u522b\uff1b\u5426\u5219\u5e94\u4e3a\u7528\u9017\u53f7\u5206\u9694\u7684\u5217\u8868\uff0c\u5176\u4e2d\u6bcf\u4e00\u9879\u90fd\u91c7\u7528<em class=\"replaceable\"><code>keyword</code></em>\u6216<em class=\"replaceable\"><code>keyword=value</code></em>\u7684\u5f62\u5f0f\u3002\u76ee\u524d\uff0c\u552f\u4e00\u652f\u6301\u7684\u5173\u952e\u5b57\u662f<code class=\"literal\">level</code>\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u672a\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff0c\u5c06\u4f7f\u7528\u9ed8\u8ba4\u7ea7\u522b\u3002\u5982\u679c\u53ea\u6307\u5b9a\u7ea7\u522b\u800c\u672a\u6307\u5b9a\u7b97\u6cd5\uff0c\u5219\u7ea7\u522b\u5927\u4e8e 0 \u65f6\u4f7f\u7528 gzip \u538b\u7f29\uff0c\u7ea7\u522b\u4e3a 0 \u65f6\u4e0d\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u4f7f\u7528 gzip \u65f6\uff0c\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0 .gz \u540e\u7f00\uff1b\u4f7f\u7528 lz4 \u65f6\uff0c\u6dfb\u52a0 .lz4 \u540e\u7f00\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e0b\u5217\u547d\u4ee4\u884c\u9009\u9879\u63a7\u5236\u6570\u636e\u5e93\u8fde\u63a5\u53c2\u6570\u3002</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-d <em class=\"replaceable\"><code>connstr</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--dbname=<em class=\"replaceable\"><code>connstr</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u4ee5<a class=\"link\" href=\"/docs/17/libpq-connect.html#LIBPQ-CONNSTRING\" title=\"32.1.1.\u00a0\u8fde\u63a5\u5b57\u7b26\u4e32\">\u8fde\u63a5\u5b57\u7b26\u4e32</a>\u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002</p>\n<p lang=\"zh\">\u4e3a\u4e86\u4e0e\u5176\u4ed6\u5ba2\u6237\u7aef\u5e94\u7528\u4fdd\u6301\u4e00\u81f4\uff0c\u8be5\u9009\u9879\u88ab\u79f0\u4e3a<code class=\"literal\">--dbname</code>\u3002\u4f46\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u5e76\u4e0d\u8fde\u63a5\u5230\u96c6\u7c07\u4e2d\u7684\u4efb\u4f55\u7279\u5b9a\u6570\u636e\u5e93\uff0c\u8fde\u63a5\u5b57\u7b26\u4e32\u4e2d\u5305\u542b\u7684\u6570\u636e\u5e93\u540d\u4f1a\u88ab\u670d\u52a1\u5668\u5ffd\u7565\u3002\u4e0d\u8fc7\uff0c\u4ee5\u8fd9\u79cd\u65b9\u5f0f\u63d0\u4f9b\u7684\u6570\u636e\u5e93\u540d\u4f1a\u8986\u76d6\u9ed8\u8ba4\u6570\u636e\u5e93\u540d\uff08<code class=\"literal\">replication</code>\uff09\uff0c\u7528\u4e8e\u5728<code class=\"filename\">~/.pgpass</code>\u4e2d\u67e5\u627e\u590d\u5236\u8fde\u63a5\u7684\u5bc6\u7801\u3002\u7c7b\u4f3c\u5730\uff0c\u8fde\u63a5\u5230<span class=\"productname\">PostgreSQL</span>\u65f6\u4f7f\u7528\u7684\u4e2d\u95f4\u4ef6\u6216\u4ee3\u7406\u4e5f\u53ef\u80fd\u5c06\u8be5\u540d\u79f0\u7528\u4e8e\u8fde\u63a5\u8def\u7531\u7b49\u76ee\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-h <em class=\"replaceable\"><code>host</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--host=<em class=\"replaceable\"><code>host</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGHOST</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-p <em class=\"replaceable\"><code>port</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--port=<em class=\"replaceable\"><code>port</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGPORT</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-U <em class=\"replaceable\"><code>username</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--username=<em class=\"replaceable\"><code>username</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-w</code><br/></span><span class=\"term\"><code class=\"option\">--no-password</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7<code class=\"filename\">.pgpass</code>\u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-W</code><br/></span><span class=\"term\"><code class=\"option\">--password</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f3a\u5236<span class=\"application\">pg_receivewal</span>\u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4ece\u6765\u90fd\u4e0d\u662f\u5fc5\u9700\u7684\uff0c\u56e0\u4e3a\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u81ea\u52a8\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u4e0d\u8fc7\uff0c<span class=\"application\">pg_receivewal</span>\u9700\u8981\u5148\u6d6a\u8d39\u4e00\u6b21\u8fde\u63a5\u5c1d\u8bd5\uff0c\u624d\u80fd\u53d1\u73b0\u670d\u52a1\u5668\u9700\u8981\u5bc6\u7801\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u8f93\u5165<code class=\"option\">-W</code>\u4ee5\u907f\u514d\u8fd9\u6b21\u989d\u5916\u7684\u8fde\u63a5\u5c1d\u8bd5\u662f\u503c\u5f97\u7684\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e3a\u4e86\u63a7\u5236\u7269\u7406\u590d\u5236\u69fd\uff0c<span class=\"application\">pg_receivewal</span> \u53ef\u4ee5\u6267\u884c\u4e0b\u5217\u4e24\u79cd\u64cd\u4f5c\u4e4b\u4e00\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">--create-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u4f7f\u7528<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--drop-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5220\u9664<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u8fd8\u53ef\u4ee5\u4f7f\u7528\u4e0b\u5217\u5176\u4ed6\u9009\u9879\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-V</code><br/></span><span class=\"term\"><code class=\"option\">--version</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6253\u5370<span class=\"application\">pg_receivewal</span>\u7684\u7248\u672c\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-?</code><br/></span><span class=\"term\"><code class=\"option\">--help</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u663e\u793a<span class=\"application\">pg_receivewal</span>\u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.7\">\n<h2 lang=\"zh\">\u9000\u51fa\u72b6\u6001</h2>\n<p lang=\"zh\">\u5f53\u56e0<span class=\"systemitem\">SIGINT</span>\u6216<span class=\"systemitem\">SIGTERM</span>\u4fe1\u53f7\u7ec8\u6b62\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u4ee5\u72b6\u6001 0 \u9000\u51fa\u3002\uff08\u8fd9\u662f\u5176\u6b63\u5e38\u7ed3\u675f\u65b9\u5f0f\uff0c\u56e0\u6b64\u4e0d\u7b97\u9519\u8bef\u3002\uff09\u5bf9\u4e8e\u81f4\u547d\u9519\u8bef\u6216\u5176\u4ed6\u4fe1\u53f7\uff0c\u9000\u51fa\u72b6\u6001\u5c06\u4e3a\u975e\u96f6\u503c\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.8\">\n<h2 lang=\"zh\">\u73af\u5883</h2>\n<p lang=\"zh\">\u4e0e\u5927\u591a\u6570\u5176\u4ed6<span class=\"productname\">PostgreSQL</span>\u5de5\u5177\u4e00\u6837\uff0c\u6b64\u5de5\u5177\u4e5f\u4f7f\u7528<span class=\"application\">libpq</span>\u652f\u6301\u7684\u73af\u5883\u53d8\u91cf\uff08\u89c1<a class=\"xref\" href=\"/docs/17/libpq-envars.html\" title=\"32.15.\u00a0\u73af\u5883\u53d8\u91cf\">\u7b2c\u00a032.15\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\">\u73af\u5883\u53d8\u91cf<code class=\"envar\">PG_COLOR</code>\u6307\u5b9a\u662f\u5426\u5728\u8bca\u65ad\u6d88\u606f\u4e2d\u4f7f\u7528\u989c\u8272\u3002\u53ef\u80fd\u7684\u503c\u4e3a<code class=\"literal\">always</code>\u3001<code class=\"literal\">auto</code>\u548c<code class=\"literal\">never</code>\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.9\">\n<h2 lang=\"zh\">\u6ce8\u89e3</h2>\n<p lang=\"zh\">\u5f53\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u800c\u4e0d\u662f<a class=\"xref\" href=\"/docs/17/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u6216<a class=\"xref\" href=\"/docs/17/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u4f5c\u4e3a\u4e3b\u8981 WAL \u5907\u4efd\u65b9\u6cd5\u65f6\uff0c\u5f3a\u70c8\u5efa\u8bae\u4f7f\u7528\u590d\u5236\u69fd\u3002\u5426\u5219\uff0c\u670d\u52a1\u5668\u53ef\u4ee5\u5728\u8fd9\u4e9b\u9884\u5199\u5f0f\u65e5\u5fd7\u6587\u4ef6\u5907\u4efd\u5b8c\u6210\u4e4b\u524d\u81ea\u7531\u56de\u6536\u6216\u5220\u9664\u5b83\u4eec\uff0c\u56e0\u4e3a\u65e0\u8bba\u662f<a class=\"xref\" href=\"/docs/17/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u3001<a class=\"xref\" href=\"/docs/17/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u8fd8\u662f\u590d\u5236\u69fd\uff0c\u90fd\u4e0d\u4f1a\u5411\u670d\u52a1\u5668\u63d0\u4f9b WAL \u6d41\u5df2\u7ecf\u5f52\u6863\u5230\u4ec0\u4e48\u4f4d\u7f6e\u7684\u4fe1\u606f\u3002\u4e0d\u8fc7\u8bf7\u6ce8\u610f\uff0c\u5982\u679c\u63a5\u6536\u7aef\u8ddf\u4e0d\u4e0a\u83b7\u53d6 WAL \u6570\u636e\u7684\u901f\u5ea6\uff0c\u590d\u5236\u69fd\u4f1a\u5360\u6ee1\u670d\u52a1\u5668\u7684\u78c1\u76d8\u7a7a\u95f4\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u6e90\u96c6\u7c07\u542f\u7528\u4e86\u7ec4\u6743\u9650\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u63a5\u6536\u5230\u7684 WAL \u6587\u4ef6\u4e0a\u4fdd\u7559\u8fd9\u4e9b\u7ec4\u6743\u9650\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.10\">\n<h2 lang=\"zh\">\u793a\u4f8b</h2>\n<p lang=\"zh\">\u8981\u4ece\u4f4d\u4e8e<code class=\"literal\">mydbserver</code>\u7684\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\uff0c\u5e76\u5c06\u5176\u5b58\u50a8\u5230\u672c\u5730\u76ee\u5f55<code class=\"filename\">/usr/local/pgsql/archive</code>\uff1a</p>\n<pre class=\"screen\"><code class=\"prompt\">$</code> <strong class=\"userinput\"><code>pg_receivewal -h mydbserver -D /usr/local/pgsql/archive</code></strong>\n</pre>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.11\">\n<h2 lang=\"zh\">\u53e6\u89c1</h2><span class=\"simplelist\"><a class=\"xref\" href=\"https://pg.center/docs/17/app-pgbasebackup.html\" title=\"pg_basebackup\"><span class=\"refentrytitle\"><span class=\"application\">pg_basebackup</span></span></a></span>\n</div>\n</div></div>", "manual_path": "app-pgreceivewal.html", "localization": {"status": "complete", "sources": [{"url": "/docs/17/app-pgreceivewal.html", "method": "same-major semantic node", "sha256": "208373ab186d8322d60a533d0fc93fa8c0ffa91721772f2a650fa12dd066107f", "language": "zh", "matched_nodes": ["#APP-PGRECEIVEWAL/div[10]/h2[0]", "#APP-PGRECEIVEWAL/div[2]/p[1]", "#APP-PGRECEIVEWAL/div[3]/h2[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[1]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[2]", "#APP-PGRECEIVEWAL/div[4]/p[1]", "#APP-PGRECEIVEWAL/div[4]/p[2]", "#APP-PGRECEIVEWAL/div[4]/p[3]", "#APP-PGRECEIVEWAL/div[4]/p[4]", "#APP-PGRECEIVEWAL/div[4]/p[5]", "#APP-PGRECEIVEWAL/div[4]/p[7]", "#APP-PGRECEIVEWAL/div[4]/p[8]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[11]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[17]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[9]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/p[2]", "#APP-PGRECEIVEWAL/div[5]/p[4]", "#APP-PGRECEIVEWAL/div[5]/p[6]", "#APP-PGRECEIVEWAL/div[6]/h2[0]", "#APP-PGRECEIVEWAL/div[6]/p[1]", "#APP-PGRECEIVEWAL/div[7]/h2[0]", "#APP-PGRECEIVEWAL/div[7]/p[1]", "#APP-PGRECEIVEWAL/div[7]/p[2]", "#APP-PGRECEIVEWAL/div[8]/h2[0]", "#APP-PGRECEIVEWAL/div[8]/p[1]", "#APP-PGRECEIVEWAL/div[8]/p[2]", "#APP-PGRECEIVEWAL/div[9]/h2[0]", "#APP-PGRECEIVEWAL/div[9]/p[1]"]}], "language": "zh", "original_text": {"/versions/17/description/0": "pg_receivewal \u2014 stream write-ahead logs from a PostgreSQL server", "/versions/17/facts/0/label": "Documented executable", "/versions/17/facts/1/label": "Executable version", "/versions/17/facts/2/label": "Reference inventory", "/versions/17/facts/2/value": "Client applications", "/versions/17/facts/3/label": "Option definition groups", "/versions/17/tables/0/title": "Documented options", "/versions/17/related/0/label": "libpq connection parameters", "/versions/17/tables/0/rows/0/summary": "Directory to write the output to.", "/versions/17/tables/0/rows/1/summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "/versions/17/tables/0/rows/2/summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "/versions/17/tables/0/rows/3/summary": "Don't loop on connection errors. Instead, exit right away with an error.", "/versions/17/tables/0/rows/4/summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "/versions/17/tables/0/rows/5/summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "/versions/17/tables/0/rows/6/summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "/versions/17/tables/0/rows/7/summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "/versions/17/tables/0/rows/8/summary": "Enables verbose mode.", "/versions/17/tables/0/rows/9/summary": "Enables compression of write-ahead logs.", "/versions/17/tables/0/columns/0/label": "Option and arguments", "/versions/17/tables/0/columns/1/label": "Description", "/versions/17/tables/0/rows/10/summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "/versions/17/tables/0/rows/11/summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "/versions/17/tables/0/rows/12/summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "/versions/17/tables/0/rows/13/summary": "User name to connect as.", "/versions/17/tables/0/rows/14/summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "/versions/17/tables/0/rows/15/summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "/versions/17/tables/0/rows/16/summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "/versions/17/tables/0/rows/17/summary": "Drop the replication slot with the name specified in --slot , then exit.", "/versions/17/tables/0/rows/18/summary": "Print the pg_receivewal version and exit.", "/versions/17/tables/0/rows/19/summary": "Show help about pg_receivewal command line arguments, and exit."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "66b3a9fb9f1926ad9eaeecfc8732211c946c416f739547179a8775aae529ad20"}, "comparison_data": {"options": [{"names": ["-D directory", "--directory= directory"], "signature": "-D directory --directory= directory", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "signature": "-E lsn --endpos= lsn", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "signature": "--if-not-exists", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "signature": "-n --no-loop", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "signature": "--no-sync", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "signature": "-s interval --status-interval= interval", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "signature": "-S slotname --slot= slotname", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "signature": "--synchronous", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "signature": "-v --verbose", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "signature": "-d connstr --dbname= connstr", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. This option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, any database name included in the connection string will be ignored by the server. However, a database name supplied that way overrides the default database name ( replication ) for purposes of looking up the replication connection's password in ~/.pgpass . Similarly, middleware or proxies used in connecting to PostgreSQL might utilize the name for purposes such as connection routing."}, {"names": ["-h host", "--host= host"], "signature": "-h host --host= host", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "signature": "-p port --port= port", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "signature": "-U username --username= username", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "signature": "-w --no-password", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "signature": "-W --password", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "signature": "--create-slot", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "signature": "--drop-slot", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "signature": "-V --version", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "signature": "-? --help", "description": "Show help about pg_receivewal command line arguments, and exit."}], "synopsis": ["pg_receivewal [ option ...]"], "environment": []}, "comparison_hash": "c6606e42cd220bb7a9951062dfe3243fa8a486a49301db7c5ead2d5dd84a85fc", "manual_language": "zh"}, "18": {"facts": [{"label": "\u624b\u518c\u4e2d\u7684\u53ef\u6267\u884c\u7a0b\u5e8f", "value": "pg_receivewal"}, {"label": "\u7a0b\u5e8f\u7248\u672c", "value": "18.6"}, {"label": "\u53c2\u8003\u6e05\u5355", "value": "\u5ba2\u6237\u7aef\u7a0b\u5e8f"}, {"label": "\u9009\u9879\u5b9a\u4e49\u7ec4", "value": "20"}], "tables": [{"key": "options", "rows": [{"summary": "\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-D directory --directory= directory"}}, {"summary": "\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-E lsn --endpos= lsn"}}, {"summary": "\u5f53\u6307\u5b9a --create-slot \u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "--if-not-exists"}}, {"summary": "\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-n --no-loop"}}, {"summary": "\u6b64\u9009\u9879\u4f1a\u4f7f pg_receivewal \u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "--no-sync"}}, {"summary": "\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-s interval --status-interval= interval"}}, {"summary": "\u8981\u6c42 pg_receivewal \u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1 \u7b2c 26.2.6 \u8282 \uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c pg_receivewal \u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-S slotname --slot= slotname"}}, {"summary": "\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba --status-interval \u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "--synchronous"}}, {"summary": "\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-v --verbose"}}, {"summary": "\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]"}}, {"summary": "\u4ee5 \u8fde\u63a5\u5b57\u7b26\u4e32 \u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-d connstr --dbname= connstr"}}, {"summary": "\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGHOST \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-h host --host= host"}}, {"summary": "\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGPORT \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-p port --port= port"}}, {"summary": "\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-U username --username= username"}}, {"summary": "\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7 .pgpass \u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-w --no-password"}}, {"summary": "\u5f3a\u5236 pg_receivewal \u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-W --password"}}, {"summary": "\u4f7f\u7528 --slot \u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "--create-slot"}}, {"summary": "\u5220\u9664 --slot \u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "--drop-slot"}}, {"summary": "\u6253\u5370 pg_receivewal \u7684\u7248\u672c\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-V --version"}}, {"summary": "\u663e\u793a pg_receivewal \u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-? --help"}}], "title": "\u624b\u518c\u4e2d\u7684\u9009\u9879", "columns": [{"key": "signature", "label": "\u9009\u9879\u4e0e\u53c2\u6570"}, {"key": "summary", "label": "\u8bf4\u660e"}]}], "options": [{"names": ["-D directory", "--directory= directory"], "summary": "Directory to write the output to.", "signature": "-D directory --directory= directory", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "signature": "-E lsn --endpos= lsn", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "signature": "--if-not-exists", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "summary": "Don't loop on connection errors. Instead, exit right away with an error.", "signature": "-n --no-loop", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "signature": "--no-sync", "source_url": "/docs/18/app-pgreceivewal.html", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "signature": "-s interval --status-interval= interval", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "signature": "-S slotname --slot= slotname", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "signature": "--synchronous", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "summary": "Enables verbose mode.", "signature": "-v --verbose", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "summary": "Enables compression of write-ahead logs.", "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "signature": "-d connstr --dbname= connstr", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. This option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, any database name included in the connection string will be ignored by the server. However, a database name supplied that way overrides the default database name ( replication ) for purposes of looking up the replication connection's password in ~/.pgpass . Similarly, middleware or proxies used in connecting to PostgreSQL might utilize the name for purposes such as connection routing."}, {"names": ["-h host", "--host= host"], "summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "signature": "-h host --host= host", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "signature": "-p port --port= port", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "summary": "User name to connect as.", "signature": "-U username --username= username", "source_url": "/docs/18/app-pgreceivewal.html", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "signature": "-w --no-password", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "signature": "-W --password", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "signature": "--create-slot", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "summary": "Drop the replication slot with the name specified in --slot , then exit.", "signature": "--drop-slot", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "summary": "Print the pg_receivewal version and exit.", "signature": "-V --version", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "summary": "Show help about pg_receivewal command line arguments, and exit.", "signature": "-? --help", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Show help about pg_receivewal command line arguments, and exit."}], "related": [{"url": "/wiki/conn/?v=18", "label": "libpq \u8fde\u63a5\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2", "label": "18.6", "major": "18", "channel": "stable", "manifest": {"pdf": {"A4": {"url": "/files/documentation/pdf/18/postgresql-18-A4.pdf", "bytes": 15865106, "pages": 3154, "sha256": "19512c405da53f9f7fcf0abba359223aa65f021be025bf3411381918f92e3190", "built_at": "2026-09-26"}, "US": {"url": "/files/documentation/pdf/18/postgresql-18-US.pdf", "bytes": 15748059, "pages": 3328, "sha256": "facbe6c229e598b872d3d98bef53308f46e06746006fa4590de9a7de9dd46319", "built_at": "2026-09-26"}}, "tree": "18", "index": "index.html", "major": "18", "pages": 1148, "release": "18.6", "source_url": "https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2", "svg_assets": 3, "source_mode": "en SGML built with pinned official archive", "source_sha256": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "revision": "ee8d1a3612338fd9adf250730cb640fcc5233b5491337cc00a316a44e3a0b9f8", "evidence_kind": "English manual and source declarations", "source_sha256": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "sources": [{"url": "https://pg.center/docs/18/app-pgreceivewal.html", "file": "app-pgreceivewal.html", "label": "18.6 English manual \u00b7 app-pgreceivewal.html", "anchor": "", "sha256": "a6f48474b24312a13fc108cfee2e960577f5bcf78e9993eaea04d39761c86ddc", "language": "en", "original_url": "/docs/18/app-pgreceivewal.html"}, {"url": "https://pg.center/docs/18/reference-client.html", "file": "reference-client.html", "label": "Client applications inventory", "anchor": "", "sha256": "68f726af77272fe73a827be2b7b5958d0f2239a6f8ed44264e9d42496bfa4fd0", "language": "en", "original_url": "/docs/18/reference-client.html"}], "sections": [], "synopsis": ["pg_receivewal [ option ...]"], "signature": "pg_receivewal [ option ...]", "description": ["pg_receivewal \u2014 \u4ece PostgreSQL \u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7"], "environment": [], "manual_html": "<div><div class=\"refentry\" id=\"APP-PGRECEIVEWAL\">\n<div class=\"titlepage\"></div>\n<div class=\"refnamediv\">\n<h2><span class=\"refentrytitle\"><span class=\"application\">pg_receivewal</span></span></h2>\n<p lang=\"zh\">pg_receivewal \u2014 \u4ece<span class=\"productname\">PostgreSQL</span>\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7</p>\n</div>\n<div class=\"refsynopsisdiv\">\n<h2 lang=\"zh\">\u5927\u7eb2</h2>\n<div class=\"cmdsynopsis\">\n<p id=\"id-1.9.4.17.4.1\"><code class=\"command\">pg_receivewal</code> [<em class=\"replaceable\"><code>option</code></em>...]</p>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.5\">\n<h2 lang=\"zh\">\u8bf4\u660e</h2>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u7528\u4e8e\u4ece\u6b63\u5728\u8fd0\u884c\u7684<span class=\"productname\">PostgreSQL</span>\u6570\u636e\u5e93\u96c6\u7c07\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u3002\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u6d41\u590d\u5236\u534f\u8bae\u4f20\u8f93\uff0c\u5e76\u5199\u5165\u672c\u5730\u76ee\u5f55\u4e2d\u7684\u6587\u4ef6\u3002\u8be5\u76ee\u5f55\u53ef\u4f5c\u4e3a\u4f7f\u7528\u65f6\u95f4\u70b9\u6062\u590d\u6267\u884c\u6062\u590d\u65f6\u7684\u5f52\u6863\u4f4d\u7f6e\uff08\u89c1<a class=\"xref\" href=\"/docs/18/continuous-archiving.html\" title=\"25.3.\u00a0\u6301\u7eed\u5f52\u6863\u548c\u65f6\u95f4\u70b9\u6062\u590d\uff08PITR\uff09\">\u7b2c\u00a025.3\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u670d\u52a1\u5668\u751f\u6210\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u540c\u65f6\u5b9e\u65f6\u6d41\u5f0f\u63a5\u6536\uff0c\u800c\u4e0d\u50cf<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u548c<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u90a3\u6837\u7b49\u5f85 WAL \u6bb5\u5b8c\u6210\u3002\u56e0\u6b64\uff0c\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u65f6\u65e0\u9700\u8bbe\u7f6e<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-TIMEOUT\">archive_timeout</a>\u3002</p>\n<p lang=\"zh\">\u4e0e PostgreSQL \u5907\u5e93\u7684 WAL \u63a5\u6536\u8fdb\u7a0b\u4e0d\u540c\uff0c<span class=\"application\">pg_receivewal</span>\u9ed8\u8ba4\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8981\u5b9e\u65f6\u5237\u5199 WAL \u6570\u636e\uff0c\u5fc5\u987b\u6307\u5b9a<code class=\"option\">--synchronous</code>\u9009\u9879\u3002\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u4e0d\u4f1a\u5e94\u7528 WAL\uff0c\u56e0\u6b64\u5f53<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\">synchronous_commit</a>\u7b49\u4e8e<code class=\"literal\">remote_apply</code>\u65f6\uff0c\u4e0d\u5e94\u8ba9\u5b83\u6210\u4e3a\u540c\u6b65\u5907\u5e93\u3002\u5982\u679c\u8fd9\u6837\u505a\uff0c\u5b83\u770b\u8d77\u6765\u4f1a\u50cf\u4e00\u53f0\u6c38\u8fdc\u8ffd\u4e0d\u4e0a\u7684\u5907\u5e93\uff0c\u5e76\u5bfc\u81f4\u4e8b\u52a1\u63d0\u4ea4\u963b\u585e\u3002\u4e3a\u907f\u514d\u8fd9\u79cd\u60c5\u51b5\uff0c\u5e94\u5f53\u4e3a<a class=\"xref\" href=\"/docs/18/runtime-config-replication.html#GUC-SYNCHRONOUS-STANDBY-NAMES\">synchronous_standby_names</a>\u914d\u7f6e\u5408\u9002\u7684\u503c\uff0c\u6216\u8005\u4e3a<span class=\"application\">pg_receivewal</span>\u6307\u5b9a\u4e00\u4e2a\u4e0e\u4e4b\u4e0d\u5339\u914d\u7684<code class=\"varname\">application_name</code>\uff0c\u6216\u8005\u5c06<code class=\"varname\">synchronous_commit</code>\u6539\u6210<code class=\"literal\">remote_apply</code>\u4ee5\u5916\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u666e\u901a\u7684<span class=\"productname\">PostgreSQL</span>\u8fde\u63a5\u8fdb\u884c\u6d41\u5f0f\u4f20\u8f93\uff0c\u5e76\u4f7f\u7528\u590d\u5236\u534f\u8bae\u3002\u5efa\u7acb\u8be5\u8fde\u63a5\u65f6\uff0c\u5fc5\u987b\u4f7f\u7528\u5177\u6709<code class=\"literal\">REPLICATION</code>\u6743\u9650\uff08\u89c1<a class=\"xref\" href=\"/docs/18/role-attributes.html\" title=\"21.2.\u00a0\u89d2\u8272\u5c5e\u6027\">\u7b2c\u00a021.2\u00a0\u8282</a>\uff09\u7684\u7528\u6237\u6216\u8d85\u7ea7\u7528\u6237\uff0c\u5e76\u4e14<code class=\"filename\">pg_hba.conf</code>\u5fc5\u987b\u5141\u8bb8\u590d\u5236\u8fde\u63a5\u3002\u670d\u52a1\u5668\u8fd8\u5fc5\u987b\u5c06<a class=\"xref\" href=\"/docs/18/runtime-config-replication.html#GUC-MAX-WAL-SENDERS\">max_wal_senders</a>\u8bbe\u7f6e\u5f97\u8db3\u591f\u9ad8\uff0c\u4ee5\u4fbf\u81f3\u5c11\u4e3a\u8be5\u6d41\u4fdd\u7559\u4e00\u4e2a\u53ef\u7528\u4f1a\u8bdd\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u6d41\u5f0f\u4f20\u8f93\u7684\u8d77\u59cb\u4f4d\u7f6e\u4f1a\u5728<span class=\"application\">pg_receivewal</span>\u542f\u52a8\u65f6\u8ba1\u7b97\u51fa\u6765\uff1a</p>\n<div class=\"orderedlist\">\n<ol class=\"orderedlist\">\n<li class=\"listitem\" lang=\"zh\">\n<p>\u9996\u5148\uff0c\u626b\u63cf\u5199\u5165 WAL \u6bb5\u6587\u4ef6\u7684\u76ee\u5f55\uff0c\u627e\u5230\u6700\u65b0\u7684\u5df2\u5b8c\u6210\u6bb5\u6587\u4ef6\uff0c\u5e76\u5c06\u4e0b\u4e00\u4e2a WAL \u6bb5\u6587\u4ef6\u7684\u5f00\u5934\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5e76\u4e14\u4f7f\u7528\u4e86\u590d\u5236\u69fd\uff0c\u5219\u4f1a\u989d\u5916\u53d1\u51fa<code class=\"command\">READ_REPLICATION_SLOT</code>\u547d\u4ee4\uff0c\u4ee5\u83b7\u53d6\u8be5\u69fd\u7684<code class=\"literal\">restart_lsn</code>\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002\u8fd9\u79cd\u65b9\u5f0f\u4ec5\u5728\u4ece<span class=\"productname\">PostgreSQL</span> 15 \u53ca\u4ee5\u4e0a\u7248\u672c\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u65f6\u53ef\u7528\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5219\u4f7f\u7528\u670d\u52a1\u5668\u901a\u8fc7<code class=\"literal\">IDENTIFY_SYSTEM</code>\u547d\u4ee4\u62a5\u544a\u7684\u6700\u65b0 WAL \u5237\u5199\u4f4d\u7f6e\u3002</p>\n</li>\n</ol>\n</div>\n<p lang=\"zh\">\u5982\u679c\u56e0\u975e\u81f4\u547d\u9519\u8bef\u5bfc\u81f4\u8fde\u63a5\u4e2d\u65ad\u6216\u521d\u6b21\u8fde\u63a5\u65e0\u6cd5\u5efa\u7acb\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u65e0\u9650\u671f\u91cd\u8bd5\u8be5\u8fde\u63a5\uff0c\u5e76\u5c3d\u5feb\u91cd\u65b0\u5efa\u7acb\u6d41\u5f0f\u4f20\u8f93\u3002\u8981\u907f\u514d\u8fd9\u79cd\u884c\u4e3a\uff0c\u8bf7\u4f7f\u7528<code class=\"literal\">-n</code>\u53c2\u6570\u3002</p>\n<p lang=\"zh\">\u5728\u6ca1\u6709\u81f4\u547d\u9519\u8bef\u7684\u60c5\u51b5\u4e0b\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u4e00\u76f4\u8fd0\u884c\uff0c\u76f4\u5230\u6536\u5230<span class=\"systemitem\">SIGINT</span>\uff08<span class=\"keycap\"><strong>Control</strong></span>+<span class=\"keycap\"><strong>C</strong></span>\uff09\u6216<span class=\"systemitem\">SIGTERM</span>\u4fe1\u53f7\u4e3a\u6b62\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.6\">\n<h2 lang=\"zh\">\u9009\u9879</h2>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-D <em class=\"replaceable\"><code>directory</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--directory=<em class=\"replaceable\"><code>directory</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u53c2\u6570\u662f\u5fc5\u9700\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-E <em class=\"replaceable\"><code>lsn</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--endpos=<em class=\"replaceable\"><code>lsn</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u5b58\u5728 LSN \u6070\u597d\u7b49\u4e8e<em class=\"replaceable\"><code>lsn</code></em>\u7684\u8bb0\u5f55\uff0c\u8be5\u8bb0\u5f55\u4e5f\u4f1a\u88ab\u5904\u7406\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--if-not-exists</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5f53\u6307\u5b9a<code class=\"option\">--create-slot</code>\u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-n</code><br/></span><span class=\"term\"><code class=\"option\">--no-loop</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--no-sync</code></span></dt>\n<dd>\n<p lang=\"zh\">\u6b64\u9009\u9879\u4f1a\u4f7f<code class=\"command\">pg_receivewal</code>\u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4e0e<code class=\"literal\">--synchronous</code>\u4e0d\u517c\u5bb9\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-s <em class=\"replaceable\"><code>interval</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--status-interval=<em class=\"replaceable\"><code>interval</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-S <em class=\"replaceable\"><code>slotname</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--slot=<em class=\"replaceable\"><code>slotname</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u8981\u6c42<span class=\"application\">pg_receivewal</span>\u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1<a class=\"xref\" href=\"/docs/18/warm-standby.html#STREAMING-REPLICATION-SLOTS\" title=\"26.2.6.\u00a0\u590d\u5236\u69fd\">\u7b2c\u00a026.2.6\u00a0\u8282</a>\uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002</p>\n<p lang=\"zh\">\u5f53\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\u65f6\uff0c\u4f7f\u7528\u590d\u5236\u69fd\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u4f46\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u62a5\u544a\u3002\u56e0\u6b64\uff0c\u8fd9\u79cd\u914d\u7f6e\u4f1a\u5bfc\u81f4\u4e3b\u5e93\u4e0a\u7684\u4e8b\u52a1\u957f\u65f6\u95f4\u7b49\u5f85\uff0c\u5b9e\u9645\u4e0a\u65e0\u6cd5\u4ee4\u4eba\u6ee1\u610f\u5730\u5de5\u4f5c\u3002\u8981\u8ba9\u8fd9\u79cd\u914d\u7f6e\u6b63\u786e\u5de5\u4f5c\uff0c\u8fd8\u5fc5\u987b\u53e6\u5916\u6307\u5b9a<code class=\"literal\">--synchronous</code>\u9009\u9879\uff08\u89c1\u4e0b\u6587\uff09\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--synchronous</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba<code class=\"literal\">--status-interval</code>\u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\uff0c\u5219\u5e94\u6307\u5b9a\u6b64\u9009\u9879\uff0c\u4ee5\u786e\u4fdd\u53ca\u65f6\u5411\u670d\u52a1\u5668\u53d1\u9001\u53cd\u9988\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-v</code><br/></span><span class=\"term\"><code class=\"option\">--verbose</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code></span></dt>\n<dd>\n<p lang=\"zh\">\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u538b\u7f29\u65b9\u6cd5\u53ef\u4ee5\u8bbe\u7f6e\u4e3a<code class=\"literal\">gzip</code>\u3001<code class=\"literal\">lz4</code>\uff08\u5982\u679c<span class=\"productname\">PostgreSQL</span>\u7f16\u8bd1\u65f6\u542f\u7528\u4e86<code class=\"option\">--with-lz4</code>\uff09\u6216<code class=\"literal\">none</code>\uff08\u4e0d\u538b\u7f29\uff09\u3002\u8fd8\u53ef\u4ee5\u9009\u62e9\u6307\u5b9a\u538b\u7f29\u7ec6\u8282\u5b57\u7b26\u4e32\u3002\u5982\u679c\u8be5\u5b57\u7b26\u4e32\u662f\u6574\u6570\uff0c\u5219\u8868\u793a\u538b\u7f29\u7ea7\u522b\uff1b\u5426\u5219\u5e94\u4e3a\u7528\u9017\u53f7\u5206\u9694\u7684\u5217\u8868\uff0c\u5176\u4e2d\u6bcf\u4e00\u9879\u90fd\u91c7\u7528<em class=\"replaceable\"><code>keyword</code></em>\u6216<em class=\"replaceable\"><code>keyword=value</code></em>\u7684\u5f62\u5f0f\u3002\u76ee\u524d\uff0c\u552f\u4e00\u652f\u6301\u7684\u5173\u952e\u5b57\u662f<code class=\"literal\">level</code>\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u672a\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff0c\u5c06\u4f7f\u7528\u9ed8\u8ba4\u7ea7\u522b\u3002\u5982\u679c\u53ea\u6307\u5b9a\u7ea7\u522b\u800c\u672a\u6307\u5b9a\u7b97\u6cd5\uff0c\u5219\u7ea7\u522b\u5927\u4e8e 0 \u65f6\u4f7f\u7528 gzip \u538b\u7f29\uff0c\u7ea7\u522b\u4e3a 0 \u65f6\u4e0d\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u4f7f\u7528 gzip \u65f6\uff0c\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0 .gz \u540e\u7f00\uff1b\u4f7f\u7528 lz4 \u65f6\uff0c\u6dfb\u52a0 .lz4 \u540e\u7f00\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e0b\u5217\u547d\u4ee4\u884c\u9009\u9879\u63a7\u5236\u6570\u636e\u5e93\u8fde\u63a5\u53c2\u6570\u3002</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-d <em class=\"replaceable\"><code>connstr</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--dbname=<em class=\"replaceable\"><code>connstr</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u4ee5<a class=\"link\" href=\"/docs/18/libpq-connect.html#LIBPQ-CONNSTRING\" title=\"32.1.1.\u00a0\u8fde\u63a5\u5b57\u7b26\u4e32\">\u8fde\u63a5\u5b57\u7b26\u4e32</a>\u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002</p>\n<p lang=\"zh\">\u4e3a\u4e86\u4e0e\u5176\u4ed6\u5ba2\u6237\u7aef\u5e94\u7528\u4fdd\u6301\u4e00\u81f4\uff0c\u8be5\u9009\u9879\u88ab\u79f0\u4e3a<code class=\"literal\">--dbname</code>\u3002\u4f46\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u5e76\u4e0d\u8fde\u63a5\u5230\u96c6\u7c07\u4e2d\u7684\u4efb\u4f55\u7279\u5b9a\u6570\u636e\u5e93\uff0c\u8fde\u63a5\u5b57\u7b26\u4e32\u4e2d\u5305\u542b\u7684\u6570\u636e\u5e93\u540d\u4f1a\u88ab\u670d\u52a1\u5668\u5ffd\u7565\u3002\u4e0d\u8fc7\uff0c\u4ee5\u8fd9\u79cd\u65b9\u5f0f\u63d0\u4f9b\u7684\u6570\u636e\u5e93\u540d\u4f1a\u8986\u76d6\u9ed8\u8ba4\u6570\u636e\u5e93\u540d\uff08<code class=\"literal\">replication</code>\uff09\uff0c\u7528\u4e8e\u5728<code class=\"filename\">~/.pgpass</code>\u4e2d\u67e5\u627e\u590d\u5236\u8fde\u63a5\u7684\u5bc6\u7801\u3002\u7c7b\u4f3c\u5730\uff0c\u8fde\u63a5\u5230<span class=\"productname\">PostgreSQL</span>\u65f6\u4f7f\u7528\u7684\u4e2d\u95f4\u4ef6\u6216\u4ee3\u7406\u4e5f\u53ef\u80fd\u5c06\u8be5\u540d\u79f0\u7528\u4e8e\u8fde\u63a5\u8def\u7531\u7b49\u76ee\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-h <em class=\"replaceable\"><code>host</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--host=<em class=\"replaceable\"><code>host</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGHOST</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-p <em class=\"replaceable\"><code>port</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--port=<em class=\"replaceable\"><code>port</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGPORT</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-U <em class=\"replaceable\"><code>username</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--username=<em class=\"replaceable\"><code>username</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-w</code><br/></span><span class=\"term\"><code class=\"option\">--no-password</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7<code class=\"filename\">.pgpass</code>\u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-W</code><br/></span><span class=\"term\"><code class=\"option\">--password</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f3a\u5236<span class=\"application\">pg_receivewal</span>\u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4ece\u6765\u90fd\u4e0d\u662f\u5fc5\u9700\u7684\uff0c\u56e0\u4e3a\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u81ea\u52a8\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u4e0d\u8fc7\uff0c<span class=\"application\">pg_receivewal</span>\u9700\u8981\u5148\u6d6a\u8d39\u4e00\u6b21\u8fde\u63a5\u5c1d\u8bd5\uff0c\u624d\u80fd\u53d1\u73b0\u670d\u52a1\u5668\u9700\u8981\u5bc6\u7801\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u8f93\u5165<code class=\"option\">-W</code>\u4ee5\u907f\u514d\u8fd9\u6b21\u989d\u5916\u7684\u8fde\u63a5\u5c1d\u8bd5\u662f\u503c\u5f97\u7684\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e3a\u4e86\u63a7\u5236\u7269\u7406\u590d\u5236\u69fd\uff0c<span class=\"application\">pg_receivewal</span> \u53ef\u4ee5\u6267\u884c\u4e0b\u5217\u4e24\u79cd\u64cd\u4f5c\u4e4b\u4e00\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">--create-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u4f7f\u7528<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--drop-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5220\u9664<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u8fd8\u53ef\u4ee5\u4f7f\u7528\u4e0b\u5217\u5176\u4ed6\u9009\u9879\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-V</code><br/></span><span class=\"term\"><code class=\"option\">--version</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6253\u5370<span class=\"application\">pg_receivewal</span>\u7684\u7248\u672c\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-?</code><br/></span><span class=\"term\"><code class=\"option\">--help</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u663e\u793a<span class=\"application\">pg_receivewal</span>\u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.7\">\n<h2 lang=\"zh\">\u9000\u51fa\u72b6\u6001</h2>\n<p lang=\"zh\">\u5f53\u56e0<span class=\"systemitem\">SIGINT</span>\u6216<span class=\"systemitem\">SIGTERM</span>\u4fe1\u53f7\u7ec8\u6b62\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u4ee5\u72b6\u6001 0 \u9000\u51fa\u3002\uff08\u8fd9\u662f\u5176\u6b63\u5e38\u7ed3\u675f\u65b9\u5f0f\uff0c\u56e0\u6b64\u4e0d\u7b97\u9519\u8bef\u3002\uff09\u5bf9\u4e8e\u81f4\u547d\u9519\u8bef\u6216\u5176\u4ed6\u4fe1\u53f7\uff0c\u9000\u51fa\u72b6\u6001\u5c06\u4e3a\u975e\u96f6\u503c\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.8\">\n<h2 lang=\"zh\">\u73af\u5883</h2>\n<p lang=\"zh\">\u4e0e\u5927\u591a\u6570\u5176\u4ed6<span class=\"productname\">PostgreSQL</span>\u5de5\u5177\u4e00\u6837\uff0c\u6b64\u5de5\u5177\u4e5f\u4f7f\u7528<span class=\"application\">libpq</span>\u652f\u6301\u7684\u73af\u5883\u53d8\u91cf\uff08\u89c1<a class=\"xref\" href=\"/docs/18/libpq-envars.html\" title=\"32.15.\u00a0\u73af\u5883\u53d8\u91cf\">\u7b2c\u00a032.15\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\">\u73af\u5883\u53d8\u91cf<code class=\"envar\">PG_COLOR</code>\u6307\u5b9a\u662f\u5426\u5728\u8bca\u65ad\u6d88\u606f\u4e2d\u4f7f\u7528\u989c\u8272\u3002\u53ef\u80fd\u7684\u503c\u4e3a<code class=\"literal\">always</code>\u3001<code class=\"literal\">auto</code>\u548c<code class=\"literal\">never</code>\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.9\">\n<h2 lang=\"zh\">\u6ce8\u89e3</h2>\n<p lang=\"zh\">\u5f53\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u800c\u4e0d\u662f<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u6216<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u4f5c\u4e3a\u4e3b\u8981 WAL \u5907\u4efd\u65b9\u6cd5\u65f6\uff0c\u5f3a\u70c8\u5efa\u8bae\u4f7f\u7528\u590d\u5236\u69fd\u3002\u5426\u5219\uff0c\u670d\u52a1\u5668\u53ef\u4ee5\u5728\u8fd9\u4e9b\u9884\u5199\u5f0f\u65e5\u5fd7\u6587\u4ef6\u5907\u4efd\u5b8c\u6210\u4e4b\u524d\u81ea\u7531\u56de\u6536\u6216\u5220\u9664\u5b83\u4eec\uff0c\u56e0\u4e3a\u65e0\u8bba\u662f<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u3001<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u8fd8\u662f\u590d\u5236\u69fd\uff0c\u90fd\u4e0d\u4f1a\u5411\u670d\u52a1\u5668\u63d0\u4f9b WAL \u6d41\u5df2\u7ecf\u5f52\u6863\u5230\u4ec0\u4e48\u4f4d\u7f6e\u7684\u4fe1\u606f\u3002\u4e0d\u8fc7\u8bf7\u6ce8\u610f\uff0c\u5982\u679c\u63a5\u6536\u7aef\u8ddf\u4e0d\u4e0a\u83b7\u53d6 WAL \u6570\u636e\u7684\u901f\u5ea6\uff0c\u590d\u5236\u69fd\u4f1a\u5360\u6ee1\u670d\u52a1\u5668\u7684\u78c1\u76d8\u7a7a\u95f4\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u6e90\u96c6\u7c07\u542f\u7528\u4e86\u7ec4\u6743\u9650\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u63a5\u6536\u5230\u7684 WAL \u6587\u4ef6\u4e0a\u4fdd\u7559\u8fd9\u4e9b\u7ec4\u6743\u9650\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.10\">\n<h2 lang=\"zh\">\u793a\u4f8b</h2>\n<p lang=\"zh\">\u8981\u4ece\u4f4d\u4e8e<code class=\"literal\">mydbserver</code>\u7684\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\uff0c\u5e76\u5c06\u5176\u5b58\u50a8\u5230\u672c\u5730\u76ee\u5f55<code class=\"filename\">/usr/local/pgsql/archive</code>\uff1a</p>\n<pre class=\"screen\"><code class=\"prompt\">$</code> <strong class=\"userinput\"><code>pg_receivewal -h mydbserver -D /usr/local/pgsql/archive</code></strong>\n</pre>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.11\">\n<h2 lang=\"zh\">\u53e6\u89c1</h2><span class=\"simplelist\"><a class=\"xref\" href=\"https://pg.center/docs/18/app-pgbasebackup.html\" title=\"pg_basebackup\"><span class=\"refentrytitle\"><span class=\"application\">pg_basebackup</span></span></a></span>\n</div>\n</div></div>", "manual_path": "app-pgreceivewal.html", "localization": {"status": "complete", "sources": [{"url": "/docs/18/app-pgreceivewal.html", "method": "same-major semantic node", "sha256": "e5b8524f06df27fd34a44bb397ae2920b2f6739d212f6dff11f8b93dadd4d4b9", "language": "zh", "matched_nodes": ["#APP-PGRECEIVEWAL/div[10]/h2[0]", "#APP-PGRECEIVEWAL/div[2]/p[1]", "#APP-PGRECEIVEWAL/div[3]/h2[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[1]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[2]", "#APP-PGRECEIVEWAL/div[4]/p[1]", "#APP-PGRECEIVEWAL/div[4]/p[2]", "#APP-PGRECEIVEWAL/div[4]/p[3]", "#APP-PGRECEIVEWAL/div[4]/p[4]", "#APP-PGRECEIVEWAL/div[4]/p[5]", "#APP-PGRECEIVEWAL/div[4]/p[7]", "#APP-PGRECEIVEWAL/div[4]/p[8]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[11]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[17]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[9]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/p[2]", "#APP-PGRECEIVEWAL/div[5]/p[4]", "#APP-PGRECEIVEWAL/div[5]/p[6]", "#APP-PGRECEIVEWAL/div[6]/h2[0]", "#APP-PGRECEIVEWAL/div[6]/p[1]", "#APP-PGRECEIVEWAL/div[7]/h2[0]", "#APP-PGRECEIVEWAL/div[7]/p[1]", "#APP-PGRECEIVEWAL/div[7]/p[2]", "#APP-PGRECEIVEWAL/div[8]/h2[0]", "#APP-PGRECEIVEWAL/div[8]/p[1]", "#APP-PGRECEIVEWAL/div[8]/p[2]", "#APP-PGRECEIVEWAL/div[9]/h2[0]", "#APP-PGRECEIVEWAL/div[9]/p[1]"]}], "language": "zh", "original_text": {"/versions/18/description/0": "pg_receivewal \u2014 stream write-ahead logs from a PostgreSQL server", "/versions/18/facts/0/label": "Documented executable", "/versions/18/facts/1/label": "Executable version", "/versions/18/facts/2/label": "Reference inventory", "/versions/18/facts/2/value": "Client applications", "/versions/18/facts/3/label": "Option definition groups", "/versions/18/tables/0/title": "Documented options", "/versions/18/related/0/label": "libpq connection parameters", "/versions/18/tables/0/rows/0/summary": "Directory to write the output to.", "/versions/18/tables/0/rows/1/summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "/versions/18/tables/0/rows/2/summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "/versions/18/tables/0/rows/3/summary": "Don't loop on connection errors. Instead, exit right away with an error.", "/versions/18/tables/0/rows/4/summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "/versions/18/tables/0/rows/5/summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "/versions/18/tables/0/rows/6/summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "/versions/18/tables/0/rows/7/summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "/versions/18/tables/0/rows/8/summary": "Enables verbose mode.", "/versions/18/tables/0/rows/9/summary": "Enables compression of write-ahead logs.", "/versions/18/tables/0/columns/0/label": "Option and arguments", "/versions/18/tables/0/columns/1/label": "Description", "/versions/18/tables/0/rows/10/summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "/versions/18/tables/0/rows/11/summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "/versions/18/tables/0/rows/12/summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "/versions/18/tables/0/rows/13/summary": "User name to connect as.", "/versions/18/tables/0/rows/14/summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "/versions/18/tables/0/rows/15/summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "/versions/18/tables/0/rows/16/summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "/versions/18/tables/0/rows/17/summary": "Drop the replication slot with the name specified in --slot , then exit.", "/versions/18/tables/0/rows/18/summary": "Print the pg_receivewal version and exit.", "/versions/18/tables/0/rows/19/summary": "Show help about pg_receivewal command line arguments, and exit."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "b9b79a8fb4ba216738e2d38c6ed11972b9044589c1a5496bf91c1a27484c0ba9"}, "comparison_data": {"options": [{"names": ["-D directory", "--directory= directory"], "signature": "-D directory --directory= directory", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "signature": "-E lsn --endpos= lsn", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "signature": "--if-not-exists", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "signature": "-n --no-loop", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "signature": "--no-sync", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "signature": "-s interval --status-interval= interval", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "signature": "-S slotname --slot= slotname", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "signature": "--synchronous", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "signature": "-v --verbose", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "signature": "-d connstr --dbname= connstr", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. This option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, any database name included in the connection string will be ignored by the server. However, a database name supplied that way overrides the default database name ( replication ) for purposes of looking up the replication connection's password in ~/.pgpass . Similarly, middleware or proxies used in connecting to PostgreSQL might utilize the name for purposes such as connection routing."}, {"names": ["-h host", "--host= host"], "signature": "-h host --host= host", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "signature": "-p port --port= port", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "signature": "-U username --username= username", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "signature": "-w --no-password", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "signature": "-W --password", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "signature": "--create-slot", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "signature": "--drop-slot", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "signature": "-V --version", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "signature": "-? --help", "description": "Show help about pg_receivewal command line arguments, and exit."}], "synopsis": ["pg_receivewal [ option ...]"], "environment": []}, "comparison_hash": "c6606e42cd220bb7a9951062dfe3243fa8a486a49301db7c5ead2d5dd84a85fc", "manual_language": "zh"}, "19": {"facts": [{"label": "\u624b\u518c\u4e2d\u7684\u53ef\u6267\u884c\u7a0b\u5e8f", "value": "pg_receivewal"}, {"label": "\u7a0b\u5e8f\u7248\u672c", "value": "19beta4"}, {"label": "\u53c2\u8003\u6e05\u5355", "value": "\u5ba2\u6237\u7aef\u7a0b\u5e8f"}, {"label": "\u9009\u9879\u5b9a\u4e49\u7ec4", "value": "20"}], "tables": [{"key": "options", "rows": [{"summary": "\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-D directory --directory= directory"}}, {"summary": "\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-E lsn --endpos= lsn"}}, {"summary": "\u5f53\u6307\u5b9a --create-slot \u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "--if-not-exists"}}, {"summary": "\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-n --no-loop"}}, {"summary": "\u6b64\u9009\u9879\u4f1a\u4f7f pg_receivewal \u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "--no-sync"}}, {"summary": "\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-s interval --status-interval= interval"}}, {"summary": "\u8981\u6c42 pg_receivewal \u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1 \u7b2c 26.2.6 \u8282 \uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c pg_receivewal \u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-S slotname --slot= slotname"}}, {"summary": "\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba --status-interval \u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "--synchronous"}}, {"summary": "\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-v --verbose"}}, {"summary": "\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]"}}, {"summary": "\u4ee5 \u8fde\u63a5\u5b57\u7b26\u4e32 \u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-d connstr --dbname= connstr"}}, {"summary": "\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGHOST \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-h host --host= host"}}, {"summary": "\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGPORT \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-p port --port= port"}}, {"summary": "\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-U username --username= username"}}, {"summary": "\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7 .pgpass \u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-w --no-password"}}, {"summary": "\u5f3a\u5236 pg_receivewal \u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-W --password"}}, {"summary": "\u4f7f\u7528 --slot \u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "--create-slot"}}, {"summary": "\u5220\u9664 --slot \u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "--drop-slot"}}, {"summary": "\u6253\u5370 pg_receivewal \u7684\u7248\u672c\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-V --version"}}, {"summary": "\u663e\u793a pg_receivewal \u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/19/app-pgreceivewal.html", "text": "-? --help"}}], "title": "\u624b\u518c\u4e2d\u7684\u9009\u9879", "columns": [{"key": "signature", "label": "\u9009\u9879\u4e0e\u53c2\u6570"}, {"key": "summary", "label": "\u8bf4\u660e"}]}], "options": [{"names": ["-D directory", "--directory= directory"], "summary": "Directory to write the output to.", "signature": "-D directory --directory= directory", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "signature": "-E lsn --endpos= lsn", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "signature": "--if-not-exists", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "summary": "Don't loop on connection errors. Instead, exit right away with an error.", "signature": "-n --no-loop", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "signature": "--no-sync", "source_url": "/docs/19/app-pgreceivewal.html", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "signature": "-s interval --status-interval= interval", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "signature": "-S slotname --slot= slotname", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "signature": "--synchronous", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "summary": "Enables verbose mode.", "signature": "-v --verbose", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "summary": "Enables compression of write-ahead logs.", "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "signature": "-d connstr --dbname= connstr", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. This option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, any database name included in the connection string will be ignored by the server. However, a database name supplied that way overrides the default database name ( replication ) for purposes of looking up the replication connection's password in ~/.pgpass . Similarly, middleware or proxies used in connecting to PostgreSQL might utilize the name for purposes such as connection routing."}, {"names": ["-h host", "--host= host"], "summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "signature": "-h host --host= host", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "signature": "-p port --port= port", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "summary": "User name to connect as.", "signature": "-U username --username= username", "source_url": "/docs/19/app-pgreceivewal.html", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "signature": "-w --no-password", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "signature": "-W --password", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "signature": "--create-slot", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "summary": "Drop the replication slot with the name specified in --slot , then exit.", "signature": "--drop-slot", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "summary": "Print the pg_receivewal version and exit.", "signature": "-V --version", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "summary": "Show help about pg_receivewal command line arguments, and exit.", "signature": "-? --help", "source_url": "/docs/19/app-pgreceivewal.html", "description": "Show help about pg_receivewal command line arguments, and exit."}], "related": [{"url": "/wiki/conn/?v=19", "label": "libpq \u8fde\u63a5\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v19beta4/postgresql-19beta4.tar.bz2", "label": "19beta4", "major": "19", "channel": "preview", "manifest": {"pdf": {"A4": {"url": "/files/documentation/pdf/19/postgresql-19-A4.pdf", "bytes": 16064841, "pages": 3052, "sha256": "4dd099e4125c591128fc5f3ebd02178dc24781f9e5ae629f96d67c4c8547427b", "built_at": "2026-09-26"}, "US": {"url": "/files/documentation/pdf/19/postgresql-19-US.pdf", "bytes": 15974616, "pages": 3225, "sha256": "61971fa857f0956d47341a0388fa6af9ae10acf691d4b2fc009007d384b0342b", "built_at": "2026-09-26"}}, "tree": "19", "index": "index.html", "major": "19", "pages": 1155, "release": "19beta4", "source_url": "https://ftp.postgresql.org/pub/source/v19beta4/postgresql-19beta4.tar.bz2", "svg_assets": 5, "source_mode": "en SGML built with pinned official archive", "source_sha256": "83157ee9c599d03b2f7a3d73ef3a56ec24e0e79cc2b3501a64d1364f56398c86"}, "revision": "1bbbbf4133d426f0e4304010688d2984c30fb67df0cc3a61b3e37eb3f6f37833", "evidence_kind": "English manual and source declarations", "source_sha256": "83157ee9c599d03b2f7a3d73ef3a56ec24e0e79cc2b3501a64d1364f56398c86"}, "sources": [{"url": "https://pg.center/docs/19/app-pgreceivewal.html", "file": "app-pgreceivewal.html", "label": "19beta4 English manual \u00b7 app-pgreceivewal.html", "anchor": "", "sha256": "08a7ba595843d13036c30125980715bddea9b9cbdaf83c562eee65f7f5bf8069", "language": "en", "original_url": "/docs/19/app-pgreceivewal.html"}, {"url": "https://pg.center/docs/19/reference-client.html", "file": "reference-client.html", "label": "Client applications inventory", "anchor": "", "sha256": "c827f460db781b39da305303c88e73729a419cd2b2b9dedb126d8ad5cbf02c95", "language": "en", "original_url": "/docs/19/reference-client.html"}], "sections": [], "synopsis": ["pg_receivewal [ option ...]"], "signature": "pg_receivewal [ option ...]", "description": ["pg_receivewal \u2014 \u4ece PostgreSQL \u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7"], "environment": [], "manual_html": "<div><div class=\"refentry\" id=\"APP-PGRECEIVEWAL\">\n<div class=\"titlepage\"></div>\n<div class=\"refnamediv\">\n<h2><span class=\"refentrytitle\"><span class=\"application\">pg_receivewal</span></span></h2>\n<p lang=\"zh\">pg_receivewal \u2014 \u4ece<span class=\"productname\">PostgreSQL</span>\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7</p>\n</div>\n<div class=\"refsynopsisdiv\">\n<h2 lang=\"zh\">\u5927\u7eb2</h2>\n<div class=\"cmdsynopsis\">\n<p id=\"id-1.9.4.17.4.1\"><code class=\"command\">pg_receivewal</code> [<em class=\"replaceable\"><code>option</code></em>...]</p>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.5\">\n<h2 lang=\"zh\">\u8bf4\u660e</h2>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u7528\u4e8e\u4ece\u6b63\u5728\u8fd0\u884c\u7684<span class=\"productname\">PostgreSQL</span>\u6570\u636e\u5e93\u96c6\u7c07\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u3002\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u6d41\u590d\u5236\u534f\u8bae\u4f20\u8f93\uff0c\u5e76\u5199\u5165\u672c\u5730\u76ee\u5f55\u4e2d\u7684\u6587\u4ef6\u3002\u8be5\u76ee\u5f55\u53ef\u4f5c\u4e3a\u4f7f\u7528\u65f6\u95f4\u70b9\u6062\u590d\u6267\u884c\u6062\u590d\u65f6\u7684\u5f52\u6863\u4f4d\u7f6e\uff08\u89c1<a class=\"xref\" href=\"/docs/19/continuous-archiving.html\" title=\"25.3.\u00a0\u6301\u7eed\u5f52\u6863\u548c\u65f6\u95f4\u70b9\u6062\u590d\uff08PITR\uff09\">\u7b2c\u00a025.3\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u670d\u52a1\u5668\u751f\u6210\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u540c\u65f6\u5b9e\u65f6\u6d41\u5f0f\u63a5\u6536\uff0c\u800c\u4e0d\u50cf<a class=\"xref\" href=\"/docs/19/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u548c<a class=\"xref\" href=\"/docs/19/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u90a3\u6837\u7b49\u5f85 WAL \u6bb5\u5b8c\u6210\u3002\u56e0\u6b64\uff0c\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u65f6\u65e0\u9700\u8bbe\u7f6e<a class=\"xref\" href=\"/docs/19/runtime-config-wal.html#GUC-ARCHIVE-TIMEOUT\">archive_timeout</a>\u3002</p>\n<p lang=\"zh\">\u4e0e PostgreSQL \u5907\u5e93\u7684 WAL \u63a5\u6536\u8fdb\u7a0b\u4e0d\u540c\uff0c<span class=\"application\">pg_receivewal</span>\u9ed8\u8ba4\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8981\u5b9e\u65f6\u5237\u5199 WAL \u6570\u636e\uff0c\u5fc5\u987b\u6307\u5b9a<code class=\"option\">--synchronous</code>\u9009\u9879\u3002\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u4e0d\u4f1a\u5e94\u7528 WAL\uff0c\u56e0\u6b64\u5f53<a class=\"xref\" href=\"/docs/19/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\">synchronous_commit</a>\u7b49\u4e8e<code class=\"literal\">remote_apply</code>\u65f6\uff0c\u4e0d\u5e94\u8ba9\u5b83\u6210\u4e3a\u540c\u6b65\u5907\u5e93\u3002\u5982\u679c\u8fd9\u6837\u505a\uff0c\u5b83\u770b\u8d77\u6765\u4f1a\u50cf\u4e00\u53f0\u6c38\u8fdc\u8ffd\u4e0d\u4e0a\u7684\u5907\u5e93\uff0c\u5e76\u5bfc\u81f4\u4e8b\u52a1\u63d0\u4ea4\u963b\u585e\u3002\u4e3a\u907f\u514d\u8fd9\u79cd\u60c5\u51b5\uff0c\u5e94\u5f53\u4e3a<a class=\"xref\" href=\"/docs/19/runtime-config-replication.html#GUC-SYNCHRONOUS-STANDBY-NAMES\">synchronous_standby_names</a>\u914d\u7f6e\u5408\u9002\u7684\u503c\uff0c\u6216\u8005\u4e3a<span class=\"application\">pg_receivewal</span>\u6307\u5b9a\u4e00\u4e2a\u4e0e\u4e4b\u4e0d\u5339\u914d\u7684<code class=\"varname\">application_name</code>\uff0c\u6216\u8005\u5c06<code class=\"varname\">synchronous_commit</code>\u6539\u6210<code class=\"literal\">remote_apply</code>\u4ee5\u5916\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u666e\u901a\u7684<span class=\"productname\">PostgreSQL</span>\u8fde\u63a5\u8fdb\u884c\u6d41\u5f0f\u4f20\u8f93\uff0c\u5e76\u4f7f\u7528\u590d\u5236\u534f\u8bae\u3002\u5efa\u7acb\u8be5\u8fde\u63a5\u65f6\uff0c\u5fc5\u987b\u4f7f\u7528\u5177\u6709<code class=\"literal\">REPLICATION</code>\u6743\u9650\uff08\u89c1<a class=\"xref\" href=\"/docs/19/role-attributes.html\" title=\"21.2.\u00a0\u89d2\u8272\u5c5e\u6027\">\u7b2c\u00a021.2\u00a0\u8282</a>\uff09\u7684\u7528\u6237\u6216\u8d85\u7ea7\u7528\u6237\uff0c\u5e76\u4e14<code class=\"filename\">pg_hba.conf</code>\u5fc5\u987b\u5141\u8bb8\u590d\u5236\u8fde\u63a5\u3002\u670d\u52a1\u5668\u8fd8\u5fc5\u987b\u5c06<a class=\"xref\" href=\"/docs/19/runtime-config-replication.html#GUC-MAX-WAL-SENDERS\">max_wal_senders</a>\u8bbe\u7f6e\u5f97\u8db3\u591f\u9ad8\uff0c\u4ee5\u4fbf\u81f3\u5c11\u4e3a\u8be5\u6d41\u4fdd\u7559\u4e00\u4e2a\u53ef\u7528\u4f1a\u8bdd\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u6d41\u5f0f\u4f20\u8f93\u7684\u8d77\u59cb\u4f4d\u7f6e\u4f1a\u5728<span class=\"application\">pg_receivewal</span>\u542f\u52a8\u65f6\u8ba1\u7b97\u51fa\u6765\uff1a</p>\n<div class=\"orderedlist\">\n<ol class=\"orderedlist\">\n<li class=\"listitem\" lang=\"zh\">\n<p>\u9996\u5148\uff0c\u626b\u63cf\u5199\u5165 WAL \u6bb5\u6587\u4ef6\u7684\u76ee\u5f55\uff0c\u627e\u5230\u6700\u65b0\u7684\u5df2\u5b8c\u6210\u6bb5\u6587\u4ef6\uff0c\u5e76\u5c06\u4e0b\u4e00\u4e2a WAL \u6bb5\u6587\u4ef6\u7684\u5f00\u5934\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5e76\u4e14\u4f7f\u7528\u4e86\u590d\u5236\u69fd\uff0c\u5219\u4f1a\u989d\u5916\u53d1\u51fa<code class=\"command\">READ_REPLICATION_SLOT</code>\u547d\u4ee4\uff0c\u4ee5\u83b7\u53d6\u8be5\u69fd\u7684<code class=\"literal\">restart_lsn</code>\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002\u8fd9\u79cd\u65b9\u5f0f\u4ec5\u5728\u4ece<span class=\"productname\">PostgreSQL</span> 15 \u53ca\u4ee5\u4e0a\u7248\u672c\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u65f6\u53ef\u7528\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5219\u4f7f\u7528\u670d\u52a1\u5668\u901a\u8fc7<code class=\"literal\">IDENTIFY_SYSTEM</code>\u547d\u4ee4\u62a5\u544a\u7684\u6700\u65b0 WAL \u5237\u5199\u4f4d\u7f6e\u3002</p>\n</li>\n</ol>\n</div>\n<p lang=\"zh\">\u5982\u679c\u56e0\u975e\u81f4\u547d\u9519\u8bef\u5bfc\u81f4\u8fde\u63a5\u4e2d\u65ad\u6216\u521d\u6b21\u8fde\u63a5\u65e0\u6cd5\u5efa\u7acb\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u65e0\u9650\u671f\u91cd\u8bd5\u8be5\u8fde\u63a5\uff0c\u5e76\u5c3d\u5feb\u91cd\u65b0\u5efa\u7acb\u6d41\u5f0f\u4f20\u8f93\u3002\u8981\u907f\u514d\u8fd9\u79cd\u884c\u4e3a\uff0c\u8bf7\u4f7f\u7528<code class=\"literal\">-n</code>\u53c2\u6570\u3002</p>\n<p lang=\"zh\">\u5728\u6ca1\u6709\u81f4\u547d\u9519\u8bef\u7684\u60c5\u51b5\u4e0b\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u4e00\u76f4\u8fd0\u884c\uff0c\u76f4\u5230\u6536\u5230<span class=\"systemitem\">SIGINT</span>\uff08<span class=\"keycap\"><strong>Control</strong></span>+<span class=\"keycap\"><strong>C</strong></span>\uff09\u6216<span class=\"systemitem\">SIGTERM</span>\u4fe1\u53f7\u4e3a\u6b62\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.6\">\n<h2 lang=\"zh\">\u9009\u9879</h2>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-D <em class=\"replaceable\"><code>directory</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--directory=<em class=\"replaceable\"><code>directory</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u53c2\u6570\u662f\u5fc5\u9700\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-E <em class=\"replaceable\"><code>lsn</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--endpos=<em class=\"replaceable\"><code>lsn</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u5b58\u5728 LSN \u6070\u597d\u7b49\u4e8e<em class=\"replaceable\"><code>lsn</code></em>\u7684\u8bb0\u5f55\uff0c\u8be5\u8bb0\u5f55\u4e5f\u4f1a\u88ab\u5904\u7406\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--if-not-exists</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5f53\u6307\u5b9a<code class=\"option\">--create-slot</code>\u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-n</code><br/></span><span class=\"term\"><code class=\"option\">--no-loop</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--no-sync</code></span></dt>\n<dd>\n<p lang=\"zh\">\u6b64\u9009\u9879\u4f1a\u4f7f<code class=\"command\">pg_receivewal</code>\u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4e0e<code class=\"literal\">--synchronous</code>\u4e0d\u517c\u5bb9\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-s <em class=\"replaceable\"><code>interval</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--status-interval=<em class=\"replaceable\"><code>interval</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-S <em class=\"replaceable\"><code>slotname</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--slot=<em class=\"replaceable\"><code>slotname</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u8981\u6c42<span class=\"application\">pg_receivewal</span>\u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1<a class=\"xref\" href=\"/docs/19/warm-standby.html#STREAMING-REPLICATION-SLOTS\" title=\"26.2.6.\u00a0\u590d\u5236\u69fd\">\u7b2c\u00a026.2.6\u00a0\u8282</a>\uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002</p>\n<p lang=\"zh\">\u5f53\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\u65f6\uff0c\u4f7f\u7528\u590d\u5236\u69fd\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u4f46\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u62a5\u544a\u3002\u56e0\u6b64\uff0c\u8fd9\u79cd\u914d\u7f6e\u4f1a\u5bfc\u81f4\u4e3b\u5e93\u4e0a\u7684\u4e8b\u52a1\u957f\u65f6\u95f4\u7b49\u5f85\uff0c\u5b9e\u9645\u4e0a\u65e0\u6cd5\u4ee4\u4eba\u6ee1\u610f\u5730\u5de5\u4f5c\u3002\u8981\u8ba9\u8fd9\u79cd\u914d\u7f6e\u6b63\u786e\u5de5\u4f5c\uff0c\u8fd8\u5fc5\u987b\u53e6\u5916\u6307\u5b9a<code class=\"literal\">--synchronous</code>\u9009\u9879\uff08\u89c1\u4e0b\u6587\uff09\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--synchronous</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba<code class=\"literal\">--status-interval</code>\u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\uff0c\u5219\u5e94\u6307\u5b9a\u6b64\u9009\u9879\uff0c\u4ee5\u786e\u4fdd\u53ca\u65f6\u5411\u670d\u52a1\u5668\u53d1\u9001\u53cd\u9988\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-v</code><br/></span><span class=\"term\"><code class=\"option\">--verbose</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code></span></dt>\n<dd>\n<p lang=\"zh\">\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u538b\u7f29\u65b9\u6cd5\u53ef\u4ee5\u8bbe\u7f6e\u4e3a<code class=\"literal\">gzip</code>\u3001<code class=\"literal\">lz4</code>\uff08\u5982\u679c<span class=\"productname\">PostgreSQL</span>\u7f16\u8bd1\u65f6\u542f\u7528\u4e86<code class=\"option\">--with-lz4</code>\uff09\u6216<code class=\"literal\">none</code>\uff08\u4e0d\u538b\u7f29\uff09\u3002\u8fd8\u53ef\u4ee5\u9009\u62e9\u6307\u5b9a\u538b\u7f29\u7ec6\u8282\u5b57\u7b26\u4e32\u3002\u5982\u679c\u8be5\u5b57\u7b26\u4e32\u662f\u6574\u6570\uff0c\u5219\u8868\u793a\u538b\u7f29\u7ea7\u522b\uff1b\u5426\u5219\u5e94\u4e3a\u7528\u9017\u53f7\u5206\u9694\u7684\u5217\u8868\uff0c\u5176\u4e2d\u6bcf\u4e00\u9879\u90fd\u91c7\u7528<em class=\"replaceable\"><code>keyword</code></em>\u6216<em class=\"replaceable\"><code>keyword=value</code></em>\u7684\u5f62\u5f0f\u3002\u76ee\u524d\uff0c\u552f\u4e00\u652f\u6301\u7684\u5173\u952e\u5b57\u662f<code class=\"literal\">level</code>\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u672a\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff0c\u5c06\u4f7f\u7528\u9ed8\u8ba4\u7ea7\u522b\u3002\u5982\u679c\u53ea\u6307\u5b9a\u7ea7\u522b\u800c\u672a\u6307\u5b9a\u7b97\u6cd5\uff0c\u5219\u7ea7\u522b\u5927\u4e8e 0 \u65f6\u4f7f\u7528 gzip \u538b\u7f29\uff0c\u7ea7\u522b\u4e3a 0 \u65f6\u4e0d\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u4f7f\u7528 gzip \u65f6\uff0c\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0 .gz \u540e\u7f00\uff1b\u4f7f\u7528 lz4 \u65f6\uff0c\u6dfb\u52a0 .lz4 \u540e\u7f00\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e0b\u5217\u547d\u4ee4\u884c\u9009\u9879\u63a7\u5236\u6570\u636e\u5e93\u8fde\u63a5\u53c2\u6570\u3002</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-d <em class=\"replaceable\"><code>connstr</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--dbname=<em class=\"replaceable\"><code>connstr</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u4ee5<a class=\"link\" href=\"/docs/19/libpq-connect.html#LIBPQ-CONNSTRING\" title=\"32.1.1.\u00a0\u8fde\u63a5\u5b57\u7b26\u4e32\">\u8fde\u63a5\u5b57\u7b26\u4e32</a>\u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002</p>\n<p lang=\"zh\">\u4e3a\u4e86\u4e0e\u5176\u4ed6\u5ba2\u6237\u7aef\u5e94\u7528\u4fdd\u6301\u4e00\u81f4\uff0c\u8be5\u9009\u9879\u88ab\u79f0\u4e3a<code class=\"literal\">--dbname</code>\u3002\u4f46\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u5e76\u4e0d\u8fde\u63a5\u5230\u96c6\u7c07\u4e2d\u7684\u4efb\u4f55\u7279\u5b9a\u6570\u636e\u5e93\uff0c\u8fde\u63a5\u5b57\u7b26\u4e32\u4e2d\u5305\u542b\u7684\u6570\u636e\u5e93\u540d\u4f1a\u88ab\u670d\u52a1\u5668\u5ffd\u7565\u3002\u4e0d\u8fc7\uff0c\u4ee5\u8fd9\u79cd\u65b9\u5f0f\u63d0\u4f9b\u7684\u6570\u636e\u5e93\u540d\u4f1a\u8986\u76d6\u9ed8\u8ba4\u6570\u636e\u5e93\u540d\uff08<code class=\"literal\">replication</code>\uff09\uff0c\u7528\u4e8e\u5728<code class=\"filename\">~/.pgpass</code>\u4e2d\u67e5\u627e\u590d\u5236\u8fde\u63a5\u7684\u5bc6\u7801\u3002\u7c7b\u4f3c\u5730\uff0c\u8fde\u63a5\u5230<span class=\"productname\">PostgreSQL</span>\u65f6\u4f7f\u7528\u7684\u4e2d\u95f4\u4ef6\u6216\u4ee3\u7406\u4e5f\u53ef\u80fd\u5c06\u8be5\u540d\u79f0\u7528\u4e8e\u8fde\u63a5\u8def\u7531\u7b49\u76ee\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-h <em class=\"replaceable\"><code>host</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--host=<em class=\"replaceable\"><code>host</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGHOST</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-p <em class=\"replaceable\"><code>port</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--port=<em class=\"replaceable\"><code>port</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGPORT</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-U <em class=\"replaceable\"><code>username</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--username=<em class=\"replaceable\"><code>username</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-w</code><br/></span><span class=\"term\"><code class=\"option\">--no-password</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7<code class=\"filename\">.pgpass</code>\u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-W</code><br/></span><span class=\"term\"><code class=\"option\">--password</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f3a\u5236<span class=\"application\">pg_receivewal</span>\u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4ece\u6765\u90fd\u4e0d\u662f\u5fc5\u9700\u7684\uff0c\u56e0\u4e3a\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u81ea\u52a8\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u4e0d\u8fc7\uff0c<span class=\"application\">pg_receivewal</span>\u9700\u8981\u5148\u6d6a\u8d39\u4e00\u6b21\u8fde\u63a5\u5c1d\u8bd5\uff0c\u624d\u80fd\u53d1\u73b0\u670d\u52a1\u5668\u9700\u8981\u5bc6\u7801\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u8f93\u5165<code class=\"option\">-W</code>\u4ee5\u907f\u514d\u8fd9\u6b21\u989d\u5916\u7684\u8fde\u63a5\u5c1d\u8bd5\u662f\u503c\u5f97\u7684\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e3a\u4e86\u63a7\u5236\u7269\u7406\u590d\u5236\u69fd\uff0c<span class=\"application\">pg_receivewal</span> \u53ef\u4ee5\u6267\u884c\u4e0b\u5217\u4e24\u79cd\u64cd\u4f5c\u4e4b\u4e00\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">--create-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u4f7f\u7528<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--drop-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5220\u9664<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u8fd8\u53ef\u4ee5\u4f7f\u7528\u4e0b\u5217\u5176\u4ed6\u9009\u9879\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-V</code><br/></span><span class=\"term\"><code class=\"option\">--version</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6253\u5370<span class=\"application\">pg_receivewal</span>\u7684\u7248\u672c\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-?</code><br/></span><span class=\"term\"><code class=\"option\">--help</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u663e\u793a<span class=\"application\">pg_receivewal</span>\u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.7\">\n<h2 lang=\"zh\">\u9000\u51fa\u72b6\u6001</h2>\n<p lang=\"zh\">\u5f53\u56e0<span class=\"systemitem\">SIGINT</span>\u6216<span class=\"systemitem\">SIGTERM</span>\u4fe1\u53f7\u7ec8\u6b62\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u4ee5\u72b6\u6001 0 \u9000\u51fa\u3002\uff08\u8fd9\u662f\u5176\u6b63\u5e38\u7ed3\u675f\u65b9\u5f0f\uff0c\u56e0\u6b64\u4e0d\u7b97\u9519\u8bef\u3002\uff09\u5bf9\u4e8e\u81f4\u547d\u9519\u8bef\u6216\u5176\u4ed6\u4fe1\u53f7\uff0c\u9000\u51fa\u72b6\u6001\u5c06\u4e3a\u975e\u96f6\u503c\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.8\">\n<h2 lang=\"zh\">\u73af\u5883</h2>\n<p lang=\"zh\">\u4e0e\u5927\u591a\u6570\u5176\u4ed6<span class=\"productname\">PostgreSQL</span>\u5de5\u5177\u4e00\u6837\uff0c\u6b64\u5de5\u5177\u4e5f\u4f7f\u7528<span class=\"application\">libpq</span>\u652f\u6301\u7684\u73af\u5883\u53d8\u91cf\uff08\u89c1<a class=\"xref\" href=\"/docs/19/libpq-envars.html\" title=\"32.15.\u00a0\u73af\u5883\u53d8\u91cf\">\u7b2c\u00a032.15\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\">\u73af\u5883\u53d8\u91cf<code class=\"envar\">PG_COLOR</code>\u6307\u5b9a\u662f\u5426\u5728\u8bca\u65ad\u6d88\u606f\u4e2d\u4f7f\u7528\u989c\u8272\u3002\u53ef\u80fd\u7684\u503c\u4e3a<code class=\"literal\">always</code>\u3001<code class=\"literal\">auto</code>\u548c<code class=\"literal\">never</code>\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.9\">\n<h2 lang=\"zh\">\u6ce8\u89e3</h2>\n<p lang=\"zh\">\u5f53\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u800c\u4e0d\u662f<a class=\"xref\" href=\"/docs/19/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u6216<a class=\"xref\" href=\"/docs/19/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u4f5c\u4e3a\u4e3b\u8981 WAL \u5907\u4efd\u65b9\u6cd5\u65f6\uff0c\u5f3a\u70c8\u5efa\u8bae\u4f7f\u7528\u590d\u5236\u69fd\u3002\u5426\u5219\uff0c\u670d\u52a1\u5668\u53ef\u4ee5\u5728\u8fd9\u4e9b\u9884\u5199\u5f0f\u65e5\u5fd7\u6587\u4ef6\u5907\u4efd\u5b8c\u6210\u4e4b\u524d\u81ea\u7531\u56de\u6536\u6216\u5220\u9664\u5b83\u4eec\uff0c\u56e0\u4e3a\u65e0\u8bba\u662f<a class=\"xref\" href=\"/docs/19/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u3001<a class=\"xref\" href=\"/docs/19/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u8fd8\u662f\u590d\u5236\u69fd\uff0c\u90fd\u4e0d\u4f1a\u5411\u670d\u52a1\u5668\u63d0\u4f9b WAL \u6d41\u5df2\u7ecf\u5f52\u6863\u5230\u4ec0\u4e48\u4f4d\u7f6e\u7684\u4fe1\u606f\u3002\u4e0d\u8fc7\u8bf7\u6ce8\u610f\uff0c\u5982\u679c\u63a5\u6536\u7aef\u8ddf\u4e0d\u4e0a\u83b7\u53d6 WAL \u6570\u636e\u7684\u901f\u5ea6\uff0c\u590d\u5236\u69fd\u4f1a\u5360\u6ee1\u670d\u52a1\u5668\u7684\u78c1\u76d8\u7a7a\u95f4\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u6e90\u96c6\u7c07\u542f\u7528\u4e86\u7ec4\u6743\u9650\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u63a5\u6536\u5230\u7684 WAL \u6587\u4ef6\u4e0a\u4fdd\u7559\u8fd9\u4e9b\u7ec4\u6743\u9650\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.10\">\n<h2 lang=\"zh\">\u793a\u4f8b</h2>\n<p lang=\"zh\">\u8981\u4ece\u4f4d\u4e8e<code class=\"literal\">mydbserver</code>\u7684\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\uff0c\u5e76\u5c06\u5176\u5b58\u50a8\u5230\u672c\u5730\u76ee\u5f55<code class=\"filename\">/usr/local/pgsql/archive</code>\uff1a</p>\n<pre class=\"screen\"><code class=\"prompt\">$</code> <strong class=\"userinput\"><code>pg_receivewal -h mydbserver -D /usr/local/pgsql/archive</code></strong>\n</pre>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.11\">\n<h2 lang=\"zh\">\u53e6\u89c1</h2><span class=\"simplelist\"><a class=\"xref\" href=\"https://pg.center/docs/19/app-pgbasebackup.html\" title=\"pg_basebackup\"><span class=\"refentrytitle\"><span class=\"application\">pg_basebackup</span></span></a></span>\n</div>\n</div></div>", "manual_path": "app-pgreceivewal.html", "localization": {"status": "complete", "sources": [{"url": "/docs/19/app-pgreceivewal.html", "method": "same-major semantic node", "sha256": "450fcb8245ac74e3ec1e47e10b9af1208172d0a27d44d707431517e14d252b40", "language": "zh", "matched_nodes": ["#APP-PGRECEIVEWAL/div[10]/h2[0]", "#APP-PGRECEIVEWAL/div[2]/p[1]", "#APP-PGRECEIVEWAL/div[3]/h2[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[1]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[2]", "#APP-PGRECEIVEWAL/div[4]/p[1]", "#APP-PGRECEIVEWAL/div[4]/p[2]", "#APP-PGRECEIVEWAL/div[4]/p[3]", "#APP-PGRECEIVEWAL/div[4]/p[4]", "#APP-PGRECEIVEWAL/div[4]/p[5]", "#APP-PGRECEIVEWAL/div[4]/p[7]", "#APP-PGRECEIVEWAL/div[4]/p[8]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[11]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[17]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[9]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/p[2]", "#APP-PGRECEIVEWAL/div[5]/p[4]", "#APP-PGRECEIVEWAL/div[5]/p[6]", "#APP-PGRECEIVEWAL/div[6]/h2[0]", "#APP-PGRECEIVEWAL/div[6]/p[1]", "#APP-PGRECEIVEWAL/div[7]/h2[0]", "#APP-PGRECEIVEWAL/div[7]/p[1]", "#APP-PGRECEIVEWAL/div[7]/p[2]", "#APP-PGRECEIVEWAL/div[8]/h2[0]", "#APP-PGRECEIVEWAL/div[8]/p[1]", "#APP-PGRECEIVEWAL/div[8]/p[2]", "#APP-PGRECEIVEWAL/div[9]/h2[0]", "#APP-PGRECEIVEWAL/div[9]/p[1]"]}], "language": "zh", "original_text": {"/versions/19/description/0": "pg_receivewal \u2014 stream write-ahead logs from a PostgreSQL server", "/versions/19/facts/0/label": "Documented executable", "/versions/19/facts/1/label": "Executable version", "/versions/19/facts/2/label": "Reference inventory", "/versions/19/facts/2/value": "Client applications", "/versions/19/facts/3/label": "Option definition groups", "/versions/19/tables/0/title": "Documented options", "/versions/19/related/0/label": "libpq connection parameters", "/versions/19/tables/0/rows/0/summary": "Directory to write the output to.", "/versions/19/tables/0/rows/1/summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "/versions/19/tables/0/rows/2/summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "/versions/19/tables/0/rows/3/summary": "Don't loop on connection errors. Instead, exit right away with an error.", "/versions/19/tables/0/rows/4/summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "/versions/19/tables/0/rows/5/summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "/versions/19/tables/0/rows/6/summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "/versions/19/tables/0/rows/7/summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "/versions/19/tables/0/rows/8/summary": "Enables verbose mode.", "/versions/19/tables/0/rows/9/summary": "Enables compression of write-ahead logs.", "/versions/19/tables/0/columns/0/label": "Option and arguments", "/versions/19/tables/0/columns/1/label": "Description", "/versions/19/tables/0/rows/10/summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "/versions/19/tables/0/rows/11/summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "/versions/19/tables/0/rows/12/summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "/versions/19/tables/0/rows/13/summary": "User name to connect as.", "/versions/19/tables/0/rows/14/summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "/versions/19/tables/0/rows/15/summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "/versions/19/tables/0/rows/16/summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "/versions/19/tables/0/rows/17/summary": "Drop the replication slot with the name specified in --slot , then exit.", "/versions/19/tables/0/rows/18/summary": "Print the pg_receivewal version and exit.", "/versions/19/tables/0/rows/19/summary": "Show help about pg_receivewal command line arguments, and exit."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "6da5789dd87598e2ad983eb10c80ec7dfc0f98102090ec85e16aa53b0a82e60a"}, "comparison_data": {"options": [{"names": ["-D directory", "--directory= directory"], "signature": "-D directory --directory= directory", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "signature": "-E lsn --endpos= lsn", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "signature": "--if-not-exists", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "signature": "-n --no-loop", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "signature": "--no-sync", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "signature": "-s interval --status-interval= interval", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "signature": "-S slotname --slot= slotname", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "signature": "--synchronous", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "signature": "-v --verbose", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "signature": "-d connstr --dbname= connstr", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. This option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, any database name included in the connection string will be ignored by the server. However, a database name supplied that way overrides the default database name ( replication ) for purposes of looking up the replication connection's password in ~/.pgpass . Similarly, middleware or proxies used in connecting to PostgreSQL might utilize the name for purposes such as connection routing."}, {"names": ["-h host", "--host= host"], "signature": "-h host --host= host", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "signature": "-p port --port= port", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "signature": "-U username --username= username", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "signature": "-w --no-password", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "signature": "-W --password", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "signature": "--create-slot", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "signature": "--drop-slot", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "signature": "-V --version", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "signature": "-? --help", "description": "Show help about pg_receivewal command line arguments, and exit."}], "synopsis": ["pg_receivewal [ option ...]"], "environment": []}, "comparison_hash": "c6606e42cd220bb7a9951062dfe3243fa8a486a49301db7c5ead2d5dd84a85fc", "manual_language": "zh"}, "20": {"facts": [{"label": "\u624b\u518c\u4e2d\u7684\u53ef\u6267\u884c\u7a0b\u5e8f", "value": "pg_receivewal"}, {"label": "\u7a0b\u5e8f\u7248\u672c", "value": "20devel"}, {"label": "\u53c2\u8003\u6e05\u5355", "value": "\u5ba2\u6237\u7aef\u7a0b\u5e8f"}, {"label": "\u9009\u9879\u5b9a\u4e49\u7ec4", "value": "20"}], "tables": [{"key": "options", "rows": [{"summary": "\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-D directory --directory= directory"}}, {"summary": "\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-E lsn --endpos= lsn"}}, {"summary": "\u5f53\u6307\u5b9a --create-slot \u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "--if-not-exists"}}, {"summary": "\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-n --no-loop"}}, {"summary": "\u6b64\u9009\u9879\u4f1a\u4f7f pg_receivewal \u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "--no-sync"}}, {"summary": "\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-s interval --status-interval= interval"}}, {"summary": "\u8981\u6c42 pg_receivewal \u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1 \u7b2c 26.2.6 \u8282 \uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c pg_receivewal \u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-S slotname --slot= slotname"}}, {"summary": "\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba --status-interval \u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "--synchronous"}}, {"summary": "\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-v --verbose"}}, {"summary": "\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]"}}, {"summary": "\u4ee5 \u8fde\u63a5\u5b57\u7b26\u4e32 \u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-d connstr --dbname= connstr"}}, {"summary": "\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGHOST \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-h host --host= host"}}, {"summary": "\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGPORT \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-p port --port= port"}}, {"summary": "\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-U username --username= username"}}, {"summary": "\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7 .pgpass \u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-w --no-password"}}, {"summary": "\u5f3a\u5236 pg_receivewal \u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-W --password"}}, {"summary": "\u4f7f\u7528 --slot \u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "--create-slot"}}, {"summary": "\u5220\u9664 --slot \u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "--drop-slot"}}, {"summary": "\u6253\u5370 pg_receivewal \u7684\u7248\u672c\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-V --version"}}, {"summary": "\u663e\u793a pg_receivewal \u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/devel/app-pgreceivewal.html", "text": "-? --help"}}], "title": "\u624b\u518c\u4e2d\u7684\u9009\u9879", "columns": [{"key": "signature", "label": "\u9009\u9879\u4e0e\u53c2\u6570"}, {"key": "summary", "label": "\u8bf4\u660e"}]}], "options": [{"names": ["-D directory", "--directory= directory"], "summary": "Directory to write the output to.", "signature": "-D directory --directory= directory", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "signature": "-E lsn --endpos= lsn", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "signature": "--if-not-exists", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "summary": "Don't loop on connection errors. Instead, exit right away with an error.", "signature": "-n --no-loop", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "signature": "--no-sync", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "signature": "-s interval --status-interval= interval", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "signature": "-S slotname --slot= slotname", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "signature": "--synchronous", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "summary": "Enables verbose mode.", "signature": "-v --verbose", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "summary": "Enables compression of write-ahead logs.", "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "signature": "-d connstr --dbname= connstr", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. This option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, any database name included in the connection string will be ignored by the server. However, a database name supplied that way overrides the default database name ( replication ) for purposes of looking up the replication connection's password in ~/.pgpass . Similarly, middleware or proxies used in connecting to PostgreSQL might utilize the name for purposes such as connection routing."}, {"names": ["-h host", "--host= host"], "summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "signature": "-h host --host= host", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "signature": "-p port --port= port", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "summary": "User name to connect as.", "signature": "-U username --username= username", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "signature": "-w --no-password", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "signature": "-W --password", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "signature": "--create-slot", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "summary": "Drop the replication slot with the name specified in --slot , then exit.", "signature": "--drop-slot", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "summary": "Print the pg_receivewal version and exit.", "signature": "-V --version", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "summary": "Show help about pg_receivewal command line arguments, and exit.", "signature": "-? --help", "source_url": "/docs/devel/app-pgreceivewal.html", "description": "Show help about pg_receivewal command line arguments, and exit."}], "related": [{"url": "/wiki/conn/?v=20", "label": "libpq \u8fde\u63a5\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/snapshot/dev/postgresql-snapshot.tar.bz2", "label": "20devel", "major": "20", "channel": "devel", "manifest": {"pdf": {"A4": {"url": "/files/documentation/pdf/20/postgresql-20-A4.pdf", "bytes": 16030631, "pages": 3052, "sha256": "bd5d82c0ce38fc18f92a0447818a91a193a261776bca1c37564bf9a683e177d0", "built_at": "2026-09-28"}, "US": {"url": "/files/documentation/pdf/20/postgresql-20-US.pdf", "bytes": 15936613, "pages": 3223, "sha256": "d97d9e0db479a02f4234b175f50fcad70c3661619afc8d6df9b9437882e3c299", "built_at": "2026-09-28"}}, "tree": "0", "index": "index.html", "major": "20", "pages": 1156, "release": "20devel", "source_url": "https://ftp.postgresql.org/pub/snapshot/dev/postgresql-snapshot.tar.bz2", "svg_assets": 6, "source_mode": "en SGML built with pinned official archive", "source_sha256": "4d3346909b201ac1648232cf290462a7070c119326f56196f1f0253ed80fae41", "source_snapshot_utc": "26-Sep-2026 20:22"}, "revision": "2eba5e0fd4c3bffb2803247b6cd537878e9d6ee5a6dfbe3c50ece8b421b80918", "evidence_kind": "English manual and source declarations", "source_sha256": "4d3346909b201ac1648232cf290462a7070c119326f56196f1f0253ed80fae41"}, "sources": [{"url": "https://pg.center/docs/devel/app-pgreceivewal.html", "file": "app-pgreceivewal.html", "label": "20devel English manual \u00b7 app-pgreceivewal.html", "anchor": "", "sha256": "74cec690326616ab8538215fe46c84b1e04c92469454b1a9a5d4a9d68068a271", "language": "en", "original_url": "/docs/devel/app-pgreceivewal.html"}, {"url": "https://pg.center/docs/devel/reference-client.html", "file": "reference-client.html", "label": "Client applications inventory", "anchor": "", "sha256": "a6c7ba748fa1d9feac5bb7cde41d1d36a1f4c26d5963e07fb103d02918b2a8ca", "language": "en", "original_url": "/docs/devel/reference-client.html"}], "sections": [], "synopsis": ["pg_receivewal [ option ...]"], "signature": "pg_receivewal [ option ...]", "description": ["pg_receivewal \u2014 \u4ece PostgreSQL \u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7"], "environment": [], "manual_html": "<div><div class=\"refentry\" id=\"APP-PGRECEIVEWAL\">\n<div class=\"titlepage\"></div>\n<div class=\"refnamediv\">\n<h2><span class=\"refentrytitle\"><span class=\"application\">pg_receivewal</span></span></h2>\n<p lang=\"zh\">pg_receivewal \u2014 \u4ece<span class=\"productname\">PostgreSQL</span>\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7</p>\n</div>\n<div class=\"refsynopsisdiv\">\n<h2 lang=\"zh\">\u5927\u7eb2</h2>\n<div class=\"cmdsynopsis\">\n<p id=\"id-1.9.4.17.4.1\"><code class=\"command\">pg_receivewal</code> [<em class=\"replaceable\"><code>option</code></em>...]</p>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.5\">\n<h2 lang=\"zh\">\u8bf4\u660e</h2>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u7528\u4e8e\u4ece\u6b63\u5728\u8fd0\u884c\u7684<span class=\"productname\">PostgreSQL</span>\u6570\u636e\u5e93\u96c6\u7c07\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u3002\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u6d41\u590d\u5236\u534f\u8bae\u4f20\u8f93\uff0c\u5e76\u5199\u5165\u672c\u5730\u76ee\u5f55\u4e2d\u7684\u6587\u4ef6\u3002\u8be5\u76ee\u5f55\u53ef\u4f5c\u4e3a\u4f7f\u7528\u65f6\u95f4\u70b9\u6062\u590d\u6267\u884c\u6062\u590d\u65f6\u7684\u5f52\u6863\u4f4d\u7f6e\uff08\u89c1<a class=\"xref\" href=\"/docs/devel/continuous-archiving.html\" title=\"25.3.\u00a0\u6301\u7eed\u5f52\u6863\u548c\u65f6\u95f4\u70b9\u6062\u590d\uff08PITR\uff09\">\u7b2c\u00a025.3\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u670d\u52a1\u5668\u751f\u6210\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u540c\u65f6\u5b9e\u65f6\u6d41\u5f0f\u63a5\u6536\uff0c\u800c\u4e0d\u50cf<a class=\"xref\" href=\"/docs/devel/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u548c<a class=\"xref\" href=\"/docs/devel/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u90a3\u6837\u7b49\u5f85 WAL \u6bb5\u5b8c\u6210\u3002\u56e0\u6b64\uff0c\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u65f6\u65e0\u9700\u8bbe\u7f6e<a class=\"xref\" href=\"/docs/devel/runtime-config-wal.html#GUC-ARCHIVE-TIMEOUT\">archive_timeout</a>\u3002</p>\n<p lang=\"zh\">\u4e0e PostgreSQL \u5907\u5e93\u7684 WAL \u63a5\u6536\u8fdb\u7a0b\u4e0d\u540c\uff0c<span class=\"application\">pg_receivewal</span>\u9ed8\u8ba4\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8981\u5b9e\u65f6\u5237\u5199 WAL \u6570\u636e\uff0c\u5fc5\u987b\u6307\u5b9a<code class=\"option\">--synchronous</code>\u9009\u9879\u3002\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u4e0d\u4f1a\u5e94\u7528 WAL\uff0c\u56e0\u6b64\u5f53<a class=\"xref\" href=\"/docs/devel/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\">synchronous_commit</a>\u7b49\u4e8e<code class=\"literal\">remote_apply</code>\u65f6\uff0c\u4e0d\u5e94\u8ba9\u5b83\u6210\u4e3a\u540c\u6b65\u5907\u5e93\u3002\u5982\u679c\u8fd9\u6837\u505a\uff0c\u5b83\u770b\u8d77\u6765\u4f1a\u50cf\u4e00\u53f0\u6c38\u8fdc\u8ffd\u4e0d\u4e0a\u7684\u5907\u5e93\uff0c\u5e76\u5bfc\u81f4\u4e8b\u52a1\u63d0\u4ea4\u963b\u585e\u3002\u4e3a\u907f\u514d\u8fd9\u79cd\u60c5\u51b5\uff0c\u5e94\u5f53\u4e3a<a class=\"xref\" href=\"/docs/devel/runtime-config-replication.html#GUC-SYNCHRONOUS-STANDBY-NAMES\">synchronous_standby_names</a>\u914d\u7f6e\u5408\u9002\u7684\u503c\uff0c\u6216\u8005\u4e3a<span class=\"application\">pg_receivewal</span>\u6307\u5b9a\u4e00\u4e2a\u4e0e\u4e4b\u4e0d\u5339\u914d\u7684<code class=\"varname\">application_name</code>\uff0c\u6216\u8005\u5c06<code class=\"varname\">synchronous_commit</code>\u6539\u6210<code class=\"literal\">remote_apply</code>\u4ee5\u5916\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u666e\u901a\u7684<span class=\"productname\">PostgreSQL</span>\u8fde\u63a5\u8fdb\u884c\u6d41\u5f0f\u4f20\u8f93\uff0c\u5e76\u4f7f\u7528\u590d\u5236\u534f\u8bae\u3002\u5efa\u7acb\u8be5\u8fde\u63a5\u65f6\uff0c\u5fc5\u987b\u4f7f\u7528\u5177\u6709<code class=\"literal\">REPLICATION</code>\u6743\u9650\uff08\u89c1<a class=\"xref\" href=\"/docs/devel/role-attributes.html\" title=\"21.2.\u00a0\u89d2\u8272\u5c5e\u6027\">\u7b2c\u00a021.2\u00a0\u8282</a>\uff09\u7684\u7528\u6237\u6216\u8d85\u7ea7\u7528\u6237\uff0c\u5e76\u4e14<code class=\"filename\">pg_hba.conf</code>\u5fc5\u987b\u5141\u8bb8\u590d\u5236\u8fde\u63a5\u3002\u670d\u52a1\u5668\u8fd8\u5fc5\u987b\u5c06<a class=\"xref\" href=\"/docs/devel/runtime-config-replication.html#GUC-MAX-WAL-SENDERS\">max_wal_senders</a>\u8bbe\u7f6e\u5f97\u8db3\u591f\u9ad8\uff0c\u4ee5\u4fbf\u81f3\u5c11\u4e3a\u8be5\u6d41\u4fdd\u7559\u4e00\u4e2a\u53ef\u7528\u4f1a\u8bdd\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u6d41\u5f0f\u4f20\u8f93\u7684\u8d77\u59cb\u4f4d\u7f6e\u4f1a\u5728<span class=\"application\">pg_receivewal</span>\u542f\u52a8\u65f6\u8ba1\u7b97\u51fa\u6765\uff1a</p>\n<div class=\"orderedlist\">\n<ol class=\"orderedlist\">\n<li class=\"listitem\" lang=\"zh\">\n<p>\u9996\u5148\uff0c\u626b\u63cf\u5199\u5165 WAL \u6bb5\u6587\u4ef6\u7684\u76ee\u5f55\uff0c\u627e\u5230\u6700\u65b0\u7684\u5df2\u5b8c\u6210\u6bb5\u6587\u4ef6\uff0c\u5e76\u5c06\u4e0b\u4e00\u4e2a WAL \u6bb5\u6587\u4ef6\u7684\u5f00\u5934\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5e76\u4e14\u4f7f\u7528\u4e86\u590d\u5236\u69fd\uff0c\u5219\u4f1a\u989d\u5916\u53d1\u51fa<code class=\"command\">READ_REPLICATION_SLOT</code>\u547d\u4ee4\uff0c\u4ee5\u83b7\u53d6\u8be5\u69fd\u7684<code class=\"literal\">restart_lsn</code>\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002\u8fd9\u79cd\u65b9\u5f0f\u4ec5\u5728\u4ece<span class=\"productname\">PostgreSQL</span> 15 \u53ca\u4ee5\u4e0a\u7248\u672c\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u65f6\u53ef\u7528\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5219\u4f7f\u7528\u670d\u52a1\u5668\u901a\u8fc7<code class=\"literal\">IDENTIFY_SYSTEM</code>\u547d\u4ee4\u62a5\u544a\u7684\u6700\u65b0 WAL \u5237\u5199\u4f4d\u7f6e\u3002</p>\n</li>\n</ol>\n</div>\n<p lang=\"zh\">\u5982\u679c\u56e0\u975e\u81f4\u547d\u9519\u8bef\u5bfc\u81f4\u8fde\u63a5\u4e2d\u65ad\u6216\u521d\u6b21\u8fde\u63a5\u65e0\u6cd5\u5efa\u7acb\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u65e0\u9650\u671f\u91cd\u8bd5\u8be5\u8fde\u63a5\uff0c\u5e76\u5c3d\u5feb\u91cd\u65b0\u5efa\u7acb\u6d41\u5f0f\u4f20\u8f93\u3002\u8981\u907f\u514d\u8fd9\u79cd\u884c\u4e3a\uff0c\u8bf7\u4f7f\u7528<code class=\"literal\">-n</code>\u53c2\u6570\u3002</p>\n<p lang=\"zh\">\u5728\u6ca1\u6709\u81f4\u547d\u9519\u8bef\u7684\u60c5\u51b5\u4e0b\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u4e00\u76f4\u8fd0\u884c\uff0c\u76f4\u5230\u6536\u5230<span class=\"systemitem\">SIGINT</span>\uff08<span class=\"keycap\"><strong>Control</strong></span>+<span class=\"keycap\"><strong>C</strong></span>\uff09\u6216<span class=\"systemitem\">SIGTERM</span>\u4fe1\u53f7\u4e3a\u6b62\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.6\">\n<h2 lang=\"zh\">\u9009\u9879</h2>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-D <em class=\"replaceable\"><code>directory</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--directory=<em class=\"replaceable\"><code>directory</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u53c2\u6570\u662f\u5fc5\u9700\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-E <em class=\"replaceable\"><code>lsn</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--endpos=<em class=\"replaceable\"><code>lsn</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u5b58\u5728 LSN \u6070\u597d\u7b49\u4e8e<em class=\"replaceable\"><code>lsn</code></em>\u7684\u8bb0\u5f55\uff0c\u8be5\u8bb0\u5f55\u4e5f\u4f1a\u88ab\u5904\u7406\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--if-not-exists</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5f53\u6307\u5b9a<code class=\"option\">--create-slot</code>\u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-n</code><br/></span><span class=\"term\"><code class=\"option\">--no-loop</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--no-sync</code></span></dt>\n<dd>\n<p lang=\"zh\">\u6b64\u9009\u9879\u4f1a\u4f7f<code class=\"command\">pg_receivewal</code>\u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4e0e<code class=\"literal\">--synchronous</code>\u4e0d\u517c\u5bb9\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-s <em class=\"replaceable\"><code>interval</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--status-interval=<em class=\"replaceable\"><code>interval</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-S <em class=\"replaceable\"><code>slotname</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--slot=<em class=\"replaceable\"><code>slotname</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u8981\u6c42<span class=\"application\">pg_receivewal</span>\u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1<a class=\"xref\" href=\"/docs/devel/warm-standby.html#STREAMING-REPLICATION-SLOTS\" title=\"26.2.6.\u00a0\u590d\u5236\u69fd\">\u7b2c\u00a026.2.6\u00a0\u8282</a>\uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002</p>\n<p lang=\"zh\">\u5f53\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\u65f6\uff0c\u4f7f\u7528\u590d\u5236\u69fd\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u4f46\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u62a5\u544a\u3002\u56e0\u6b64\uff0c\u8fd9\u79cd\u914d\u7f6e\u4f1a\u5bfc\u81f4\u4e3b\u5e93\u4e0a\u7684\u4e8b\u52a1\u957f\u65f6\u95f4\u7b49\u5f85\uff0c\u5b9e\u9645\u4e0a\u65e0\u6cd5\u4ee4\u4eba\u6ee1\u610f\u5730\u5de5\u4f5c\u3002\u8981\u8ba9\u8fd9\u79cd\u914d\u7f6e\u6b63\u786e\u5de5\u4f5c\uff0c\u8fd8\u5fc5\u987b\u53e6\u5916\u6307\u5b9a<code class=\"literal\">--synchronous</code>\u9009\u9879\uff08\u89c1\u4e0b\u6587\uff09\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--synchronous</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba<code class=\"literal\">--status-interval</code>\u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\uff0c\u5219\u5e94\u6307\u5b9a\u6b64\u9009\u9879\uff0c\u4ee5\u786e\u4fdd\u53ca\u65f6\u5411\u670d\u52a1\u5668\u53d1\u9001\u53cd\u9988\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-v</code><br/></span><span class=\"term\"><code class=\"option\">--verbose</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code></span></dt>\n<dd>\n<p lang=\"zh\">\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u538b\u7f29\u65b9\u6cd5\u53ef\u4ee5\u8bbe\u7f6e\u4e3a<code class=\"literal\">gzip</code>\u3001<code class=\"literal\">lz4</code>\uff08\u5982\u679c<span class=\"productname\">PostgreSQL</span>\u7f16\u8bd1\u65f6\u542f\u7528\u4e86<code class=\"option\">--with-lz4</code>\uff09\u6216<code class=\"literal\">none</code>\uff08\u4e0d\u538b\u7f29\uff09\u3002\u8fd8\u53ef\u4ee5\u9009\u62e9\u6307\u5b9a\u538b\u7f29\u7ec6\u8282\u5b57\u7b26\u4e32\u3002\u5982\u679c\u8be5\u5b57\u7b26\u4e32\u662f\u6574\u6570\uff0c\u5219\u8868\u793a\u538b\u7f29\u7ea7\u522b\uff1b\u5426\u5219\u5e94\u4e3a\u7528\u9017\u53f7\u5206\u9694\u7684\u5217\u8868\uff0c\u5176\u4e2d\u6bcf\u4e00\u9879\u90fd\u91c7\u7528<em class=\"replaceable\"><code>keyword</code></em>\u6216<em class=\"replaceable\"><code>keyword=value</code></em>\u7684\u5f62\u5f0f\u3002\u76ee\u524d\uff0c\u552f\u4e00\u652f\u6301\u7684\u5173\u952e\u5b57\u662f<code class=\"literal\">level</code>\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u672a\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff0c\u5c06\u4f7f\u7528\u9ed8\u8ba4\u7ea7\u522b\u3002\u5982\u679c\u53ea\u6307\u5b9a\u7ea7\u522b\u800c\u672a\u6307\u5b9a\u7b97\u6cd5\uff0c\u5219\u7ea7\u522b\u5927\u4e8e 0 \u65f6\u4f7f\u7528 gzip \u538b\u7f29\uff0c\u7ea7\u522b\u4e3a 0 \u65f6\u4e0d\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u4f7f\u7528 gzip \u65f6\uff0c\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0 .gz \u540e\u7f00\uff1b\u4f7f\u7528 lz4 \u65f6\uff0c\u6dfb\u52a0 .lz4 \u540e\u7f00\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e0b\u5217\u547d\u4ee4\u884c\u9009\u9879\u63a7\u5236\u6570\u636e\u5e93\u8fde\u63a5\u53c2\u6570\u3002</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-d <em class=\"replaceable\"><code>connstr</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--dbname=<em class=\"replaceable\"><code>connstr</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u4ee5<a class=\"link\" href=\"/docs/devel/libpq-connect.html#LIBPQ-CONNSTRING\" title=\"32.1.1.\u00a0\u8fde\u63a5\u5b57\u7b26\u4e32\">\u8fde\u63a5\u5b57\u7b26\u4e32</a>\u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002</p>\n<p lang=\"zh\">\u4e3a\u4e86\u4e0e\u5176\u4ed6\u5ba2\u6237\u7aef\u5e94\u7528\u4fdd\u6301\u4e00\u81f4\uff0c\u8be5\u9009\u9879\u88ab\u79f0\u4e3a<code class=\"literal\">--dbname</code>\u3002\u4f46\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u5e76\u4e0d\u8fde\u63a5\u5230\u96c6\u7c07\u4e2d\u7684\u4efb\u4f55\u7279\u5b9a\u6570\u636e\u5e93\uff0c\u8fde\u63a5\u5b57\u7b26\u4e32\u4e2d\u5305\u542b\u7684\u6570\u636e\u5e93\u540d\u4f1a\u88ab\u670d\u52a1\u5668\u5ffd\u7565\u3002\u4e0d\u8fc7\uff0c\u4ee5\u8fd9\u79cd\u65b9\u5f0f\u63d0\u4f9b\u7684\u6570\u636e\u5e93\u540d\u4f1a\u8986\u76d6\u9ed8\u8ba4\u6570\u636e\u5e93\u540d\uff08<code class=\"literal\">replication</code>\uff09\uff0c\u7528\u4e8e\u5728<code class=\"filename\">~/.pgpass</code>\u4e2d\u67e5\u627e\u590d\u5236\u8fde\u63a5\u7684\u5bc6\u7801\u3002\u7c7b\u4f3c\u5730\uff0c\u8fde\u63a5\u5230<span class=\"productname\">PostgreSQL</span>\u65f6\u4f7f\u7528\u7684\u4e2d\u95f4\u4ef6\u6216\u4ee3\u7406\u4e5f\u53ef\u80fd\u5c06\u8be5\u540d\u79f0\u7528\u4e8e\u8fde\u63a5\u8def\u7531\u7b49\u76ee\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-h <em class=\"replaceable\"><code>host</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--host=<em class=\"replaceable\"><code>host</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGHOST</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-p <em class=\"replaceable\"><code>port</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--port=<em class=\"replaceable\"><code>port</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGPORT</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-U <em class=\"replaceable\"><code>username</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--username=<em class=\"replaceable\"><code>username</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-w</code><br/></span><span class=\"term\"><code class=\"option\">--no-password</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7<code class=\"filename\">.pgpass</code>\u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-W</code><br/></span><span class=\"term\"><code class=\"option\">--password</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f3a\u5236<span class=\"application\">pg_receivewal</span>\u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4ece\u6765\u90fd\u4e0d\u662f\u5fc5\u9700\u7684\uff0c\u56e0\u4e3a\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u81ea\u52a8\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u4e0d\u8fc7\uff0c<span class=\"application\">pg_receivewal</span>\u9700\u8981\u5148\u6d6a\u8d39\u4e00\u6b21\u8fde\u63a5\u5c1d\u8bd5\uff0c\u624d\u80fd\u53d1\u73b0\u670d\u52a1\u5668\u9700\u8981\u5bc6\u7801\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u8f93\u5165<code class=\"option\">-W</code>\u4ee5\u907f\u514d\u8fd9\u6b21\u989d\u5916\u7684\u8fde\u63a5\u5c1d\u8bd5\u662f\u503c\u5f97\u7684\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e3a\u4e86\u63a7\u5236\u7269\u7406\u590d\u5236\u69fd\uff0c<span class=\"application\">pg_receivewal</span> \u53ef\u4ee5\u6267\u884c\u4e0b\u5217\u4e24\u79cd\u64cd\u4f5c\u4e4b\u4e00\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">--create-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u4f7f\u7528<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--drop-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5220\u9664<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u8fd8\u53ef\u4ee5\u4f7f\u7528\u4e0b\u5217\u5176\u4ed6\u9009\u9879\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-V</code><br/></span><span class=\"term\"><code class=\"option\">--version</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6253\u5370<span class=\"application\">pg_receivewal</span>\u7684\u7248\u672c\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-?</code><br/></span><span class=\"term\"><code class=\"option\">--help</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u663e\u793a<span class=\"application\">pg_receivewal</span>\u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.7\">\n<h2 lang=\"zh\">\u9000\u51fa\u72b6\u6001</h2>\n<p lang=\"zh\">\u5f53\u56e0<span class=\"systemitem\">SIGINT</span>\u6216<span class=\"systemitem\">SIGTERM</span>\u4fe1\u53f7\u7ec8\u6b62\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u4ee5\u72b6\u6001 0 \u9000\u51fa\u3002\uff08\u8fd9\u662f\u5176\u6b63\u5e38\u7ed3\u675f\u65b9\u5f0f\uff0c\u56e0\u6b64\u4e0d\u7b97\u9519\u8bef\u3002\uff09\u5bf9\u4e8e\u81f4\u547d\u9519\u8bef\u6216\u5176\u4ed6\u4fe1\u53f7\uff0c\u9000\u51fa\u72b6\u6001\u5c06\u4e3a\u975e\u96f6\u503c\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.8\">\n<h2 lang=\"zh\">\u73af\u5883</h2>\n<p lang=\"zh\">\u4e0e\u5927\u591a\u6570\u5176\u4ed6<span class=\"productname\">PostgreSQL</span>\u5de5\u5177\u4e00\u6837\uff0c\u6b64\u5de5\u5177\u4e5f\u4f7f\u7528<span class=\"application\">libpq</span>\u652f\u6301\u7684\u73af\u5883\u53d8\u91cf\uff08\u89c1<a class=\"xref\" href=\"/docs/devel/libpq-envars.html\" title=\"32.14.\u00a0\u73af\u5883\u53d8\u91cf\">\u7b2c\u00a032.14\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\">\u73af\u5883\u53d8\u91cf<code class=\"envar\">PG_COLOR</code>\u6307\u5b9a\u662f\u5426\u5728\u8bca\u65ad\u6d88\u606f\u4e2d\u4f7f\u7528\u989c\u8272\u3002\u53ef\u80fd\u7684\u503c\u4e3a<code class=\"literal\">always</code>\u3001<code class=\"literal\">auto</code>\u548c<code class=\"literal\">never</code>\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.9\">\n<h2 lang=\"zh\">\u6ce8\u89e3</h2>\n<p lang=\"zh\">\u5f53\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u800c\u4e0d\u662f<a class=\"xref\" href=\"/docs/devel/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u6216<a class=\"xref\" href=\"/docs/devel/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u4f5c\u4e3a\u4e3b\u8981 WAL \u5907\u4efd\u65b9\u6cd5\u65f6\uff0c\u5f3a\u70c8\u5efa\u8bae\u4f7f\u7528\u590d\u5236\u69fd\u3002\u5426\u5219\uff0c\u670d\u52a1\u5668\u53ef\u4ee5\u5728\u8fd9\u4e9b\u9884\u5199\u5f0f\u65e5\u5fd7\u6587\u4ef6\u5907\u4efd\u5b8c\u6210\u4e4b\u524d\u81ea\u7531\u56de\u6536\u6216\u5220\u9664\u5b83\u4eec\uff0c\u56e0\u4e3a\u65e0\u8bba\u662f<a class=\"xref\" href=\"/docs/devel/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u3001<a class=\"xref\" href=\"/docs/devel/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u8fd8\u662f\u590d\u5236\u69fd\uff0c\u90fd\u4e0d\u4f1a\u5411\u670d\u52a1\u5668\u63d0\u4f9b WAL \u6d41\u5df2\u7ecf\u5f52\u6863\u5230\u4ec0\u4e48\u4f4d\u7f6e\u7684\u4fe1\u606f\u3002\u4e0d\u8fc7\u8bf7\u6ce8\u610f\uff0c\u5982\u679c\u63a5\u6536\u7aef\u8ddf\u4e0d\u4e0a\u83b7\u53d6 WAL \u6570\u636e\u7684\u901f\u5ea6\uff0c\u590d\u5236\u69fd\u4f1a\u5360\u6ee1\u670d\u52a1\u5668\u7684\u78c1\u76d8\u7a7a\u95f4\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u6e90\u96c6\u7c07\u542f\u7528\u4e86\u7ec4\u6743\u9650\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u63a5\u6536\u5230\u7684 WAL \u6587\u4ef6\u4e0a\u4fdd\u7559\u8fd9\u4e9b\u7ec4\u6743\u9650\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.10\">\n<h2 lang=\"zh\">\u793a\u4f8b</h2>\n<p lang=\"zh\">\u8981\u4ece\u4f4d\u4e8e<code class=\"literal\">mydbserver</code>\u7684\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\uff0c\u5e76\u5c06\u5176\u5b58\u50a8\u5230\u672c\u5730\u76ee\u5f55<code class=\"filename\">/usr/local/pgsql/archive</code>\uff1a</p>\n<pre class=\"screen\"><code class=\"prompt\">$</code> <strong class=\"userinput\"><code>pg_receivewal -h mydbserver -D /usr/local/pgsql/archive</code></strong>\n</pre>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.11\">\n<h2 lang=\"zh\">\u53e6\u89c1</h2><span class=\"simplelist\"><a class=\"xref\" href=\"https://pg.center/docs/devel/app-pgbasebackup.html\" title=\"pg_basebackup\"><span class=\"refentrytitle\"><span class=\"application\">pg_basebackup</span></span></a></span>\n</div>\n</div></div>", "manual_path": "app-pgreceivewal.html", "localization": {"status": "complete", "sources": [{"url": "/docs/devel/app-pgreceivewal.html", "method": "same-major semantic node", "sha256": "f871350ddcfcda3a1b23789eb0c75cf9d05a71e952e50038fffb29bcfeb99061", "language": "zh", "matched_nodes": ["#APP-PGRECEIVEWAL/div[10]/h2[0]", "#APP-PGRECEIVEWAL/div[2]/p[1]", "#APP-PGRECEIVEWAL/div[3]/h2[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[1]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[2]", "#APP-PGRECEIVEWAL/div[4]/p[1]", "#APP-PGRECEIVEWAL/div[4]/p[2]", "#APP-PGRECEIVEWAL/div[4]/p[3]", "#APP-PGRECEIVEWAL/div[4]/p[4]", "#APP-PGRECEIVEWAL/div[4]/p[5]", "#APP-PGRECEIVEWAL/div[4]/p[7]", "#APP-PGRECEIVEWAL/div[4]/p[8]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[11]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[17]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[9]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/p[2]", "#APP-PGRECEIVEWAL/div[5]/p[4]", "#APP-PGRECEIVEWAL/div[5]/p[6]", "#APP-PGRECEIVEWAL/div[6]/h2[0]", "#APP-PGRECEIVEWAL/div[6]/p[1]", "#APP-PGRECEIVEWAL/div[7]/h2[0]", "#APP-PGRECEIVEWAL/div[7]/p[1]", "#APP-PGRECEIVEWAL/div[7]/p[2]", "#APP-PGRECEIVEWAL/div[8]/h2[0]", "#APP-PGRECEIVEWAL/div[8]/p[1]", "#APP-PGRECEIVEWAL/div[8]/p[2]", "#APP-PGRECEIVEWAL/div[9]/h2[0]", "#APP-PGRECEIVEWAL/div[9]/p[1]"]}], "language": "zh", "original_text": {"/summary": "pg_receivewal \u2014 stream write-ahead logs from a PostgreSQL server", "/category": "Client applications", "/versions/20/description/0": "pg_receivewal \u2014 stream write-ahead logs from a PostgreSQL server", "/versions/20/facts/0/label": "Documented executable", "/versions/20/facts/1/label": "Executable version", "/versions/20/facts/2/label": "Reference inventory", "/versions/20/facts/2/value": "Client applications", "/versions/20/facts/3/label": "Option definition groups", "/versions/20/tables/0/title": "Documented options", "/versions/20/related/0/label": "libpq connection parameters", "/versions/20/tables/0/rows/0/summary": "Directory to write the output to.", "/versions/20/tables/0/rows/1/summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "/versions/20/tables/0/rows/2/summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "/versions/20/tables/0/rows/3/summary": "Don't loop on connection errors. Instead, exit right away with an error.", "/versions/20/tables/0/rows/4/summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "/versions/20/tables/0/rows/5/summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "/versions/20/tables/0/rows/6/summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "/versions/20/tables/0/rows/7/summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "/versions/20/tables/0/rows/8/summary": "Enables verbose mode.", "/versions/20/tables/0/rows/9/summary": "Enables compression of write-ahead logs.", "/versions/20/tables/0/columns/0/label": "Option and arguments", "/versions/20/tables/0/columns/1/label": "Description", "/versions/20/tables/0/rows/10/summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "/versions/20/tables/0/rows/11/summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "/versions/20/tables/0/rows/12/summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "/versions/20/tables/0/rows/13/summary": "User name to connect as.", "/versions/20/tables/0/rows/14/summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "/versions/20/tables/0/rows/15/summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "/versions/20/tables/0/rows/16/summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "/versions/20/tables/0/rows/17/summary": "Drop the replication slot with the name specified in --slot , then exit.", "/versions/20/tables/0/rows/18/summary": "Print the pg_receivewal version and exit.", "/versions/20/tables/0/rows/19/summary": "Show help about pg_receivewal command line arguments, and exit."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "91060b7f5815b0d925f8bb48fcde2ee97d9804b679bb79ac1831cba17c8a4a73"}, "comparison_data": {"options": [{"names": ["-D directory", "--directory= directory"], "signature": "-D directory --directory= directory", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "signature": "-E lsn --endpos= lsn", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "signature": "--if-not-exists", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "signature": "-n --no-loop", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "signature": "--no-sync", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "signature": "-s interval --status-interval= interval", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "signature": "-S slotname --slot= slotname", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "signature": "--synchronous", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "signature": "-v --verbose", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "signature": "-d connstr --dbname= connstr", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. This option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, any database name included in the connection string will be ignored by the server. However, a database name supplied that way overrides the default database name ( replication ) for purposes of looking up the replication connection's password in ~/.pgpass . Similarly, middleware or proxies used in connecting to PostgreSQL might utilize the name for purposes such as connection routing."}, {"names": ["-h host", "--host= host"], "signature": "-h host --host= host", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "signature": "-p port --port= port", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "signature": "-U username --username= username", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "signature": "-w --no-password", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "signature": "-W --password", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "signature": "--create-slot", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "signature": "--drop-slot", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "signature": "-V --version", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "signature": "-? --help", "description": "Show help about pg_receivewal command line arguments, and exit."}], "synopsis": ["pg_receivewal [ option ...]"], "environment": []}, "comparison_hash": "c6606e42cd220bb7a9951062dfe3243fa8a486a49301db7c5ead2d5dd84a85fc", "manual_language": "zh"}}}, "snapshot": {"facts": [{"label": "\u624b\u518c\u4e2d\u7684\u53ef\u6267\u884c\u7a0b\u5e8f", "value": "pg_receivewal"}, {"label": "\u7a0b\u5e8f\u7248\u672c", "value": "18.6"}, {"label": "\u53c2\u8003\u6e05\u5355", "value": "\u5ba2\u6237\u7aef\u7a0b\u5e8f"}, {"label": "\u9009\u9879\u5b9a\u4e49\u7ec4", "value": "20"}], "tables": [{"key": "options", "rows": [{"summary": "\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-D directory --directory= directory"}}, {"summary": "\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-E lsn --endpos= lsn"}}, {"summary": "\u5f53\u6307\u5b9a --create-slot \u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "--if-not-exists"}}, {"summary": "\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-n --no-loop"}}, {"summary": "\u6b64\u9009\u9879\u4f1a\u4f7f pg_receivewal \u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "--no-sync"}}, {"summary": "\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-s interval --status-interval= interval"}}, {"summary": "\u8981\u6c42 pg_receivewal \u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1 \u7b2c 26.2.6 \u8282 \uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c pg_receivewal \u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-S slotname --slot= slotname"}}, {"summary": "\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba --status-interval \u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "--synchronous"}}, {"summary": "\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-v --verbose"}}, {"summary": "\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]"}}, {"summary": "\u4ee5 \u8fde\u63a5\u5b57\u7b26\u4e32 \u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-d connstr --dbname= connstr"}}, {"summary": "\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGHOST \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-h host --host= host"}}, {"summary": "\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea PGPORT \u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-p port --port= port"}}, {"summary": "\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-U username --username= username"}}, {"summary": "\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7 .pgpass \u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-w --no-password"}}, {"summary": "\u5f3a\u5236 pg_receivewal \u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-W --password"}}, {"summary": "\u4f7f\u7528 --slot \u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "--create-slot"}}, {"summary": "\u5220\u9664 --slot \u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "--drop-slot"}}, {"summary": "\u6253\u5370 pg_receivewal \u7684\u7248\u672c\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-V --version"}}, {"summary": "\u663e\u793a pg_receivewal \u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002", "signature": {"url": "/docs/18/app-pgreceivewal.html", "text": "-? --help"}}], "title": "\u624b\u518c\u4e2d\u7684\u9009\u9879", "columns": [{"key": "signature", "label": "\u9009\u9879\u4e0e\u53c2\u6570"}, {"key": "summary", "label": "\u8bf4\u660e"}]}], "options": [{"names": ["-D directory", "--directory= directory"], "summary": "Directory to write the output to.", "signature": "-D directory --directory= directory", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "signature": "-E lsn --endpos= lsn", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "signature": "--if-not-exists", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "summary": "Don't loop on connection errors. Instead, exit right away with an error.", "signature": "-n --no-loop", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "signature": "--no-sync", "source_url": "/docs/18/app-pgreceivewal.html", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "signature": "-s interval --status-interval= interval", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "signature": "-S slotname --slot= slotname", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "signature": "--synchronous", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "summary": "Enables verbose mode.", "signature": "-v --verbose", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "summary": "Enables compression of write-ahead logs.", "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "signature": "-d connstr --dbname= connstr", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. This option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, any database name included in the connection string will be ignored by the server. However, a database name supplied that way overrides the default database name ( replication ) for purposes of looking up the replication connection's password in ~/.pgpass . Similarly, middleware or proxies used in connecting to PostgreSQL might utilize the name for purposes such as connection routing."}, {"names": ["-h host", "--host= host"], "summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "signature": "-h host --host= host", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "signature": "-p port --port= port", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "summary": "User name to connect as.", "signature": "-U username --username= username", "source_url": "/docs/18/app-pgreceivewal.html", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "signature": "-w --no-password", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "signature": "-W --password", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "signature": "--create-slot", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "summary": "Drop the replication slot with the name specified in --slot , then exit.", "signature": "--drop-slot", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "summary": "Print the pg_receivewal version and exit.", "signature": "-V --version", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "summary": "Show help about pg_receivewal command line arguments, and exit.", "signature": "-? --help", "source_url": "/docs/18/app-pgreceivewal.html", "description": "Show help about pg_receivewal command line arguments, and exit."}], "related": [{"url": "/wiki/conn/?v=18", "label": "libpq \u8fde\u63a5\u53c2\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2", "label": "18.6", "major": "18", "channel": "stable", "manifest": {"pdf": {"A4": {"url": "/files/documentation/pdf/18/postgresql-18-A4.pdf", "bytes": 15865106, "pages": 3154, "sha256": "19512c405da53f9f7fcf0abba359223aa65f021be025bf3411381918f92e3190", "built_at": "2026-09-26"}, "US": {"url": "/files/documentation/pdf/18/postgresql-18-US.pdf", "bytes": 15748059, "pages": 3328, "sha256": "facbe6c229e598b872d3d98bef53308f46e06746006fa4590de9a7de9dd46319", "built_at": "2026-09-26"}}, "tree": "18", "index": "index.html", "major": "18", "pages": 1148, "release": "18.6", "source_url": "https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2", "svg_assets": 3, "source_mode": "en SGML built with pinned official archive", "source_sha256": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "revision": "ee8d1a3612338fd9adf250730cb640fcc5233b5491337cc00a316a44e3a0b9f8", "evidence_kind": "English manual and source declarations", "source_sha256": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "sources": [{"url": "https://pg.center/docs/18/app-pgreceivewal.html", "file": "app-pgreceivewal.html", "label": "18.6 English manual \u00b7 app-pgreceivewal.html", "anchor": "", "sha256": "a6f48474b24312a13fc108cfee2e960577f5bcf78e9993eaea04d39761c86ddc", "language": "en", "original_url": "/docs/18/app-pgreceivewal.html"}, {"url": "https://pg.center/docs/18/reference-client.html", "file": "reference-client.html", "label": "Client applications inventory", "anchor": "", "sha256": "68f726af77272fe73a827be2b7b5958d0f2239a6f8ed44264e9d42496bfa4fd0", "language": "en", "original_url": "/docs/18/reference-client.html"}], "sections": [], "synopsis": ["pg_receivewal [ option ...]"], "signature": "pg_receivewal [ option ...]", "description": ["pg_receivewal \u2014 \u4ece PostgreSQL \u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7"], "environment": [], "manual_html": "<div><div class=\"refentry\" id=\"APP-PGRECEIVEWAL\">\n<div class=\"titlepage\"></div>\n<div class=\"refnamediv\">\n<h2><span class=\"refentrytitle\"><span class=\"application\">pg_receivewal</span></span></h2>\n<p lang=\"zh\">pg_receivewal \u2014 \u4ece<span class=\"productname\">PostgreSQL</span>\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7</p>\n</div>\n<div class=\"refsynopsisdiv\">\n<h2 lang=\"zh\">\u5927\u7eb2</h2>\n<div class=\"cmdsynopsis\">\n<p id=\"id-1.9.4.17.4.1\"><code class=\"command\">pg_receivewal</code> [<em class=\"replaceable\"><code>option</code></em>...]</p>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.5\">\n<h2 lang=\"zh\">\u8bf4\u660e</h2>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u7528\u4e8e\u4ece\u6b63\u5728\u8fd0\u884c\u7684<span class=\"productname\">PostgreSQL</span>\u6570\u636e\u5e93\u96c6\u7c07\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u3002\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u6d41\u590d\u5236\u534f\u8bae\u4f20\u8f93\uff0c\u5e76\u5199\u5165\u672c\u5730\u76ee\u5f55\u4e2d\u7684\u6587\u4ef6\u3002\u8be5\u76ee\u5f55\u53ef\u4f5c\u4e3a\u4f7f\u7528\u65f6\u95f4\u70b9\u6062\u590d\u6267\u884c\u6062\u590d\u65f6\u7684\u5f52\u6863\u4f4d\u7f6e\uff08\u89c1<a class=\"xref\" href=\"/docs/18/continuous-archiving.html\" title=\"25.3.\u00a0\u6301\u7eed\u5f52\u6863\u548c\u65f6\u95f4\u70b9\u6062\u590d\uff08PITR\uff09\">\u7b2c\u00a025.3\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\"><span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u670d\u52a1\u5668\u751f\u6210\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u540c\u65f6\u5b9e\u65f6\u6d41\u5f0f\u63a5\u6536\uff0c\u800c\u4e0d\u50cf<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u548c<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u90a3\u6837\u7b49\u5f85 WAL \u6bb5\u5b8c\u6210\u3002\u56e0\u6b64\uff0c\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u65f6\u65e0\u9700\u8bbe\u7f6e<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-TIMEOUT\">archive_timeout</a>\u3002</p>\n<p lang=\"zh\">\u4e0e PostgreSQL \u5907\u5e93\u7684 WAL \u63a5\u6536\u8fdb\u7a0b\u4e0d\u540c\uff0c<span class=\"application\">pg_receivewal</span>\u9ed8\u8ba4\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8981\u5b9e\u65f6\u5237\u5199 WAL \u6570\u636e\uff0c\u5fc5\u987b\u6307\u5b9a<code class=\"option\">--synchronous</code>\u9009\u9879\u3002\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u4e0d\u4f1a\u5e94\u7528 WAL\uff0c\u56e0\u6b64\u5f53<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-SYNCHRONOUS-COMMIT\">synchronous_commit</a>\u7b49\u4e8e<code class=\"literal\">remote_apply</code>\u65f6\uff0c\u4e0d\u5e94\u8ba9\u5b83\u6210\u4e3a\u540c\u6b65\u5907\u5e93\u3002\u5982\u679c\u8fd9\u6837\u505a\uff0c\u5b83\u770b\u8d77\u6765\u4f1a\u50cf\u4e00\u53f0\u6c38\u8fdc\u8ffd\u4e0d\u4e0a\u7684\u5907\u5e93\uff0c\u5e76\u5bfc\u81f4\u4e8b\u52a1\u63d0\u4ea4\u963b\u585e\u3002\u4e3a\u907f\u514d\u8fd9\u79cd\u60c5\u51b5\uff0c\u5e94\u5f53\u4e3a<a class=\"xref\" href=\"/docs/18/runtime-config-replication.html#GUC-SYNCHRONOUS-STANDBY-NAMES\">synchronous_standby_names</a>\u914d\u7f6e\u5408\u9002\u7684\u503c\uff0c\u6216\u8005\u4e3a<span class=\"application\">pg_receivewal</span>\u6307\u5b9a\u4e00\u4e2a\u4e0e\u4e4b\u4e0d\u5339\u914d\u7684<code class=\"varname\">application_name</code>\uff0c\u6216\u8005\u5c06<code class=\"varname\">synchronous_commit</code>\u6539\u6210<code class=\"literal\">remote_apply</code>\u4ee5\u5916\u7684\u503c\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u901a\u8fc7\u666e\u901a\u7684<span class=\"productname\">PostgreSQL</span>\u8fde\u63a5\u8fdb\u884c\u6d41\u5f0f\u4f20\u8f93\uff0c\u5e76\u4f7f\u7528\u590d\u5236\u534f\u8bae\u3002\u5efa\u7acb\u8be5\u8fde\u63a5\u65f6\uff0c\u5fc5\u987b\u4f7f\u7528\u5177\u6709<code class=\"literal\">REPLICATION</code>\u6743\u9650\uff08\u89c1<a class=\"xref\" href=\"/docs/18/role-attributes.html\" title=\"21.2.\u00a0\u89d2\u8272\u5c5e\u6027\">\u7b2c\u00a021.2\u00a0\u8282</a>\uff09\u7684\u7528\u6237\u6216\u8d85\u7ea7\u7528\u6237\uff0c\u5e76\u4e14<code class=\"filename\">pg_hba.conf</code>\u5fc5\u987b\u5141\u8bb8\u590d\u5236\u8fde\u63a5\u3002\u670d\u52a1\u5668\u8fd8\u5fc5\u987b\u5c06<a class=\"xref\" href=\"/docs/18/runtime-config-replication.html#GUC-MAX-WAL-SENDERS\">max_wal_senders</a>\u8bbe\u7f6e\u5f97\u8db3\u591f\u9ad8\uff0c\u4ee5\u4fbf\u81f3\u5c11\u4e3a\u8be5\u6d41\u4fdd\u7559\u4e00\u4e2a\u53ef\u7528\u4f1a\u8bdd\u3002</p>\n<p lang=\"zh\">\u9884\u5199\u5f0f\u65e5\u5fd7\u6d41\u5f0f\u4f20\u8f93\u7684\u8d77\u59cb\u4f4d\u7f6e\u4f1a\u5728<span class=\"application\">pg_receivewal</span>\u542f\u52a8\u65f6\u8ba1\u7b97\u51fa\u6765\uff1a</p>\n<div class=\"orderedlist\">\n<ol class=\"orderedlist\">\n<li class=\"listitem\" lang=\"zh\">\n<p>\u9996\u5148\uff0c\u626b\u63cf\u5199\u5165 WAL \u6bb5\u6587\u4ef6\u7684\u76ee\u5f55\uff0c\u627e\u5230\u6700\u65b0\u7684\u5df2\u5b8c\u6210\u6bb5\u6587\u4ef6\uff0c\u5e76\u5c06\u4e0b\u4e00\u4e2a WAL \u6bb5\u6587\u4ef6\u7684\u5f00\u5934\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5e76\u4e14\u4f7f\u7528\u4e86\u590d\u5236\u69fd\uff0c\u5219\u4f1a\u989d\u5916\u53d1\u51fa<code class=\"command\">READ_REPLICATION_SLOT</code>\u547d\u4ee4\uff0c\u4ee5\u83b7\u53d6\u8be5\u69fd\u7684<code class=\"literal\">restart_lsn</code>\u4f5c\u4e3a\u8d77\u59cb\u4f4d\u7f6e\u3002\u8fd9\u79cd\u65b9\u5f0f\u4ec5\u5728\u4ece<span class=\"productname\">PostgreSQL</span> 15 \u53ca\u4ee5\u4e0a\u7248\u672c\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\u65f6\u53ef\u7528\u3002</p>\n</li>\n<li class=\"listitem\" lang=\"zh\">\n<p>\u5982\u679c\u65e0\u6cd5\u7528\u4e0a\u8ff0\u65b9\u6cd5\u8ba1\u7b97\u8d77\u59cb\u4f4d\u7f6e\uff0c\u5219\u4f7f\u7528\u670d\u52a1\u5668\u901a\u8fc7<code class=\"literal\">IDENTIFY_SYSTEM</code>\u547d\u4ee4\u62a5\u544a\u7684\u6700\u65b0 WAL \u5237\u5199\u4f4d\u7f6e\u3002</p>\n</li>\n</ol>\n</div>\n<p lang=\"zh\">\u5982\u679c\u56e0\u975e\u81f4\u547d\u9519\u8bef\u5bfc\u81f4\u8fde\u63a5\u4e2d\u65ad\u6216\u521d\u6b21\u8fde\u63a5\u65e0\u6cd5\u5efa\u7acb\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u65e0\u9650\u671f\u91cd\u8bd5\u8be5\u8fde\u63a5\uff0c\u5e76\u5c3d\u5feb\u91cd\u65b0\u5efa\u7acb\u6d41\u5f0f\u4f20\u8f93\u3002\u8981\u907f\u514d\u8fd9\u79cd\u884c\u4e3a\uff0c\u8bf7\u4f7f\u7528<code class=\"literal\">-n</code>\u53c2\u6570\u3002</p>\n<p lang=\"zh\">\u5728\u6ca1\u6709\u81f4\u547d\u9519\u8bef\u7684\u60c5\u51b5\u4e0b\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u4e00\u76f4\u8fd0\u884c\uff0c\u76f4\u5230\u6536\u5230<span class=\"systemitem\">SIGINT</span>\uff08<span class=\"keycap\"><strong>Control</strong></span>+<span class=\"keycap\"><strong>C</strong></span>\uff09\u6216<span class=\"systemitem\">SIGTERM</span>\u4fe1\u53f7\u4e3a\u6b62\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.6\">\n<h2 lang=\"zh\">\u9009\u9879</h2>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-D <em class=\"replaceable\"><code>directory</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--directory=<em class=\"replaceable\"><code>directory</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u7528\u4e8e\u5199\u5165\u8f93\u51fa\u7684\u76ee\u5f55\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u53c2\u6570\u662f\u5fc5\u9700\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-E <em class=\"replaceable\"><code>lsn</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--endpos=<em class=\"replaceable\"><code>lsn</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f53\u63a5\u6536\u4f4d\u7f6e\u5230\u8fbe\u6307\u5b9a LSN \u65f6\uff0c\u81ea\u52a8\u505c\u6b62\u590d\u5236\u5e76\u4ee5\u6b63\u5e38\u9000\u51fa\u72b6\u6001 0 \u9000\u51fa\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u5b58\u5728 LSN \u6070\u597d\u7b49\u4e8e<em class=\"replaceable\"><code>lsn</code></em>\u7684\u8bb0\u5f55\uff0c\u8be5\u8bb0\u5f55\u4e5f\u4f1a\u88ab\u5904\u7406\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--if-not-exists</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5f53\u6307\u5b9a<code class=\"option\">--create-slot</code>\u4e14\u540c\u540d\u69fd\u5df2\u5b58\u5728\u65f6\uff0c\u4e0d\u62a5\u9519\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-n</code><br/></span><span class=\"term\"><code class=\"option\">--no-loop</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u9047\u5230\u8fde\u63a5\u9519\u8bef\u65f6\u4e0d\u8981\u5faa\u73af\u91cd\u8bd5\uff0c\u800c\u662f\u7acb\u5373\u62a5\u9519\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--no-sync</code></span></dt>\n<dd>\n<p lang=\"zh\">\u6b64\u9009\u9879\u4f1a\u4f7f<code class=\"command\">pg_receivewal</code>\u4e0d\u5f3a\u5236\u5c06 WAL \u6570\u636e\u5237\u5199\u5230\u78c1\u76d8\u3002\u8fd9\u6837\u4f1a\u66f4\u5feb\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5982\u679c\u968f\u540e\u53d1\u751f\u64cd\u4f5c\u7cfb\u7edf\u5d29\u6e83\uff0c\u53ef\u80fd\u4f1a\u7559\u4e0b\u635f\u574f\u7684 WAL \u6bb5\u3002\u4e00\u822c\u6765\u8bf4\uff0c\u6b64\u9009\u9879\u9002\u5408\u6d4b\u8bd5\uff0c\u4f46\u4e0d\u5e94\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u6267\u884c WAL \u5f52\u6863\u65f6\u4f7f\u7528\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4e0e<code class=\"literal\">--synchronous</code>\u4e0d\u517c\u5bb9\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-s <em class=\"replaceable\"><code>interval</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--status-interval=<em class=\"replaceable\"><code>interval</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u7684\u65f6\u95f4\u95f4\u9694\uff08\u79d2\uff09\u3002\u8fd9\u6837\u66f4\u4fbf\u4e8e\u4ece\u670d\u52a1\u5668\u7aef\u76d1\u89c6\u8fdb\u5ea6\u3002\u503c\u4e3a\u96f6\u5c06\u5b8c\u5168\u7981\u7528\u5468\u671f\u6027\u72b6\u6001\u66f4\u65b0\uff0c\u4e0d\u8fc7\u5728\u670d\u52a1\u5668\u8bf7\u6c42\u65f6\u4ecd\u4f1a\u53d1\u9001\u66f4\u65b0\uff0c\u4ee5\u907f\u514d\u56e0\u8d85\u65f6\u800c\u65ad\u5f00\u8fde\u63a5\u3002\u9ed8\u8ba4\u503c\u662f 10 \u79d2\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-S <em class=\"replaceable\"><code>slotname</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--slot=<em class=\"replaceable\"><code>slotname</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u8981\u6c42<span class=\"application\">pg_receivewal</span>\u4f7f\u7528\u4e00\u4e2a\u73b0\u6709\u590d\u5236\u69fd\uff08\u89c1<a class=\"xref\" href=\"/docs/18/warm-standby.html#STREAMING-REPLICATION-SLOTS\" title=\"26.2.6.\u00a0\u590d\u5236\u69fd\">\u7b2c\u00a026.2.6\u00a0\u8282</a>\uff09\u3002\u4f7f\u7528\u6b64\u9009\u9879\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u6307\u793a\u6bcf\u4e2a\u6bb5\u4f55\u65f6\u5df2\u540c\u6b65\u5230\u78c1\u76d8\uff0c\u4ee5\u4fbf\u670d\u52a1\u5668\u5728\u8be5\u6bb5\u4e0d\u518d\u88ab\u9700\u8981\u65f6\u5c06\u5176\u79fb\u9664\u3002</p>\n<p lang=\"zh\">\u5f53\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\u65f6\uff0c\u4f7f\u7528\u590d\u5236\u69fd\u4f1a\u5411\u670d\u52a1\u5668\u62a5\u544a\u5237\u5199\u4f4d\u7f6e\uff0c\u4f46\u53ea\u4f1a\u5728\u4e00\u4e2a WAL \u6587\u4ef6\u5173\u95ed\u65f6\u624d\u62a5\u544a\u3002\u56e0\u6b64\uff0c\u8fd9\u79cd\u914d\u7f6e\u4f1a\u5bfc\u81f4\u4e3b\u5e93\u4e0a\u7684\u4e8b\u52a1\u957f\u65f6\u95f4\u7b49\u5f85\uff0c\u5b9e\u9645\u4e0a\u65e0\u6cd5\u4ee4\u4eba\u6ee1\u610f\u5730\u5de5\u4f5c\u3002\u8981\u8ba9\u8fd9\u79cd\u914d\u7f6e\u6b63\u786e\u5de5\u4f5c\uff0c\u8fd8\u5fc5\u987b\u53e6\u5916\u6307\u5b9a<code class=\"literal\">--synchronous</code>\u9009\u9879\uff08\u89c1\u4e0b\u6587\uff09\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--synchronous</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5728\u6536\u5230 WAL \u6570\u636e\u540e\u7acb\u5373\u5c06\u5176\u5237\u5199\u5230\u78c1\u76d8\u3002\u65e0\u8bba<code class=\"literal\">--status-interval</code>\u5982\u4f55\uff0c\u5237\u5199\u540e\u8fd8\u4f1a\u7acb\u5373\u5411\u670d\u52a1\u5668\u56de\u9001\u72b6\u6001\u5305\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u670d\u52a1\u5668\u5c06<span class=\"application\">pg_receivewal</span>\u7684\u590d\u5236\u5ba2\u6237\u7aef\u914d\u7f6e\u4e3a\u540c\u6b65\u5907\u5e93\uff0c\u5219\u5e94\u6307\u5b9a\u6b64\u9009\u9879\uff0c\u4ee5\u786e\u4fdd\u53ca\u65f6\u5411\u670d\u52a1\u5668\u53d1\u9001\u53cd\u9988\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-v</code><br/></span><span class=\"term\"><code class=\"option\">--verbose</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u542f\u7528\u8be6\u7ec6\u8f93\u51fa\u6a21\u5f0f\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">-Z <em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>level</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--compress=<em class=\"replaceable\"><code>method</code></em>[:<em class=\"replaceable\"><code>detail</code></em>]</code></span></dt>\n<dd>\n<p lang=\"zh\">\u542f\u7528\u9884\u5199\u5f0f\u65e5\u5fd7\u7684\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u538b\u7f29\u65b9\u6cd5\u53ef\u4ee5\u8bbe\u7f6e\u4e3a<code class=\"literal\">gzip</code>\u3001<code class=\"literal\">lz4</code>\uff08\u5982\u679c<span class=\"productname\">PostgreSQL</span>\u7f16\u8bd1\u65f6\u542f\u7528\u4e86<code class=\"option\">--with-lz4</code>\uff09\u6216<code class=\"literal\">none</code>\uff08\u4e0d\u538b\u7f29\uff09\u3002\u8fd8\u53ef\u4ee5\u9009\u62e9\u6307\u5b9a\u538b\u7f29\u7ec6\u8282\u5b57\u7b26\u4e32\u3002\u5982\u679c\u8be5\u5b57\u7b26\u4e32\u662f\u6574\u6570\uff0c\u5219\u8868\u793a\u538b\u7f29\u7ea7\u522b\uff1b\u5426\u5219\u5e94\u4e3a\u7528\u9017\u53f7\u5206\u9694\u7684\u5217\u8868\uff0c\u5176\u4e2d\u6bcf\u4e00\u9879\u90fd\u91c7\u7528<em class=\"replaceable\"><code>keyword</code></em>\u6216<em class=\"replaceable\"><code>keyword=value</code></em>\u7684\u5f62\u5f0f\u3002\u76ee\u524d\uff0c\u552f\u4e00\u652f\u6301\u7684\u5173\u952e\u5b57\u662f<code class=\"literal\">level</code>\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u672a\u6307\u5b9a\u538b\u7f29\u7ea7\u522b\uff0c\u5c06\u4f7f\u7528\u9ed8\u8ba4\u7ea7\u522b\u3002\u5982\u679c\u53ea\u6307\u5b9a\u7ea7\u522b\u800c\u672a\u6307\u5b9a\u7b97\u6cd5\uff0c\u5219\u7ea7\u522b\u5927\u4e8e 0 \u65f6\u4f7f\u7528 gzip \u538b\u7f29\uff0c\u7ea7\u522b\u4e3a 0 \u65f6\u4e0d\u538b\u7f29\u3002</p>\n<p lang=\"zh\">\u4f7f\u7528 gzip \u65f6\uff0c\u6240\u6709\u6587\u4ef6\u540d\u90fd\u4f1a\u81ea\u52a8\u6dfb\u52a0 .gz \u540e\u7f00\uff1b\u4f7f\u7528 lz4 \u65f6\uff0c\u6dfb\u52a0 .lz4 \u540e\u7f00\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e0b\u5217\u547d\u4ee4\u884c\u9009\u9879\u63a7\u5236\u6570\u636e\u5e93\u8fde\u63a5\u53c2\u6570\u3002</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-d <em class=\"replaceable\"><code>connstr</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--dbname=<em class=\"replaceable\"><code>connstr</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\u4ee5<a class=\"link\" href=\"/docs/18/libpq-connect.html#LIBPQ-CONNSTRING\" title=\"32.1.1.\u00a0\u8fde\u63a5\u5b57\u7b26\u4e32\">\u8fde\u63a5\u5b57\u7b26\u4e32</a>\u7684\u5f62\u5f0f\u6307\u5b9a\u7528\u4e8e\u8fde\u63a5\u5230\u670d\u52a1\u5668\u7684\u53c2\u6570\uff1b\u8fd9\u4e9b\u53c2\u6570\u4f1a\u8986\u76d6\u4efb\u4f55\u51b2\u7a81\u7684\u547d\u4ee4\u884c\u9009\u9879\u3002</p>\n<p lang=\"zh\">\u4e3a\u4e86\u4e0e\u5176\u4ed6\u5ba2\u6237\u7aef\u5e94\u7528\u4fdd\u6301\u4e00\u81f4\uff0c\u8be5\u9009\u9879\u88ab\u79f0\u4e3a<code class=\"literal\">--dbname</code>\u3002\u4f46\u7531\u4e8e<span class=\"application\">pg_receivewal</span>\u5e76\u4e0d\u8fde\u63a5\u5230\u96c6\u7c07\u4e2d\u7684\u4efb\u4f55\u7279\u5b9a\u6570\u636e\u5e93\uff0c\u8fde\u63a5\u5b57\u7b26\u4e32\u4e2d\u5305\u542b\u7684\u6570\u636e\u5e93\u540d\u4f1a\u88ab\u670d\u52a1\u5668\u5ffd\u7565\u3002\u4e0d\u8fc7\uff0c\u4ee5\u8fd9\u79cd\u65b9\u5f0f\u63d0\u4f9b\u7684\u6570\u636e\u5e93\u540d\u4f1a\u8986\u76d6\u9ed8\u8ba4\u6570\u636e\u5e93\u540d\uff08<code class=\"literal\">replication</code>\uff09\uff0c\u7528\u4e8e\u5728<code class=\"filename\">~/.pgpass</code>\u4e2d\u67e5\u627e\u590d\u5236\u8fde\u63a5\u7684\u5bc6\u7801\u3002\u7c7b\u4f3c\u5730\uff0c\u8fde\u63a5\u5230<span class=\"productname\">PostgreSQL</span>\u65f6\u4f7f\u7528\u7684\u4e2d\u95f4\u4ef6\u6216\u4ee3\u7406\u4e5f\u53ef\u80fd\u5c06\u8be5\u540d\u79f0\u7528\u4e8e\u8fde\u63a5\u8def\u7531\u7b49\u76ee\u7684\u3002</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-h <em class=\"replaceable\"><code>host</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--host=<em class=\"replaceable\"><code>host</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u8fd0\u884c\u670d\u52a1\u5668\u7684\u4e3b\u673a\u540d\u3002\u5982\u679c\u8be5\u503c\u4ee5\u659c\u6760\u5f00\u5934\uff0c\u5219\u88ab\u7528\u4f5c Unix \u57df\u5957\u63a5\u5b57\u7684\u76ee\u5f55\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGHOST</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u5c1d\u8bd5 Unix \u57df\u5957\u63a5\u5b57\u8fde\u63a5\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-p <em class=\"replaceable\"><code>port</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--port=<em class=\"replaceable\"><code>port</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6307\u5b9a\u670d\u52a1\u5668\u6b63\u5728\u76d1\u542c\u8fde\u63a5\u7684 TCP \u7aef\u53e3\uff0c\u6216\u672c\u5730 Unix \u57df\u5957\u63a5\u5b57\u6587\u4ef6\u6269\u5c55\u540d\u3002\u9ed8\u8ba4\u503c\u53d6\u81ea<code class=\"envar\">PGPORT</code>\u73af\u5883\u53d8\u91cf\uff08\u5982\u679c\u5df2\u8bbe\u7f6e\uff09\uff0c\u5426\u5219\u4f7f\u7528\u7f16\u8bd1\u65f6\u7684\u9ed8\u8ba4\u503c\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-U <em class=\"replaceable\"><code>username</code></em></code><br/></span><span class=\"term\"><code class=\"option\">--username=<em class=\"replaceable\"><code>username</code></em></code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7528\u4e8e\u8fde\u63a5\u7684\u7528\u6237\u540d\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-w</code><br/></span><span class=\"term\"><code class=\"option\">--no-password</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u7edd\u4e0d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c\u800c\u53c8\u65e0\u6cd5\u901a\u8fc7<code class=\"filename\">.pgpass</code>\u6587\u4ef6\u7b49\u5176\u4ed6\u65b9\u5f0f\u83b7\u5f97\u5bc6\u7801\uff0c\u5219\u8fde\u63a5\u5c1d\u8bd5\u5c06\u4f1a\u5931\u8d25\u3002\u6b64\u9009\u9879\u53ef\u7528\u4e8e\u6279\u5904\u7406\u4f5c\u4e1a\u548c\u811a\u672c\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u573a\u666f\u4e2d\u6ca1\u6709\u7528\u6237\u5728\u573a\u8f93\u5165\u5bc6\u7801\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-W</code><br/></span><span class=\"term\"><code class=\"option\">--password</code></span></dt>\n<dd>\n<p lang=\"zh\">\u5f3a\u5236<span class=\"application\">pg_receivewal</span>\u5728\u5efa\u7acb\u8fde\u63a5\u524d\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002</p>\n<p lang=\"zh\">\u8fd9\u4e2a\u9009\u9879\u4ece\u6765\u90fd\u4e0d\u662f\u5fc5\u9700\u7684\uff0c\u56e0\u4e3a\u5982\u679c\u670d\u52a1\u5668\u8981\u6c42\u5bc6\u7801\u8ba4\u8bc1\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u81ea\u52a8\u63d0\u793a\u8f93\u5165\u5bc6\u7801\u3002\u4e0d\u8fc7\uff0c<span class=\"application\">pg_receivewal</span>\u9700\u8981\u5148\u6d6a\u8d39\u4e00\u6b21\u8fde\u63a5\u5c1d\u8bd5\uff0c\u624d\u80fd\u53d1\u73b0\u670d\u52a1\u5668\u9700\u8981\u5bc6\u7801\u3002\u5728\u67d0\u4e9b\u60c5\u51b5\u4e0b\uff0c\u8f93\u5165<code class=\"option\">-W</code>\u4ee5\u907f\u514d\u8fd9\u6b21\u989d\u5916\u7684\u8fde\u63a5\u5c1d\u8bd5\u662f\u503c\u5f97\u7684\u3002</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u4e3a\u4e86\u63a7\u5236\u7269\u7406\u590d\u5236\u69fd\uff0c<span class=\"application\">pg_receivewal</span> \u53ef\u4ee5\u6267\u884c\u4e0b\u5217\u4e24\u79cd\u64cd\u4f5c\u4e4b\u4e00\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">--create-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u4f7f\u7528<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u7684\u540d\u79f0\u521b\u5efa\u4e00\u4e2a\u65b0\u7684\u7269\u7406\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">--drop-slot</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u5220\u9664<code class=\"option\">--slot</code>\u4e2d\u6307\u5b9a\u540d\u79f0\u7684\u590d\u5236\u69fd\uff0c\u7136\u540e\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n<p lang=\"zh\">\u8fd8\u53ef\u4ee5\u4f7f\u7528\u4e0b\u5217\u5176\u4ed6\u9009\u9879\uff1a</p>\n<div class=\"variablelist\">\n<dl class=\"variablelist\">\n<dt><span class=\"term\"><code class=\"option\">-V</code><br/></span><span class=\"term\"><code class=\"option\">--version</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u6253\u5370<span class=\"application\">pg_receivewal</span>\u7684\u7248\u672c\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n<dt><span class=\"term\"><code class=\"option\">-?</code><br/></span><span class=\"term\"><code class=\"option\">--help</code></span></dt>\n<dd>\n<p lang=\"zh\">\n<p>\u663e\u793a<span class=\"application\">pg_receivewal</span>\u547d\u4ee4\u884c\u53c2\u6570\u7684\u5e2e\u52a9\u5e76\u9000\u51fa\u3002</p>\n</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.7\">\n<h2 lang=\"zh\">\u9000\u51fa\u72b6\u6001</h2>\n<p lang=\"zh\">\u5f53\u56e0<span class=\"systemitem\">SIGINT</span>\u6216<span class=\"systemitem\">SIGTERM</span>\u4fe1\u53f7\u7ec8\u6b62\u65f6\uff0c<span class=\"application\">pg_receivewal</span>\u5c06\u4ee5\u72b6\u6001 0 \u9000\u51fa\u3002\uff08\u8fd9\u662f\u5176\u6b63\u5e38\u7ed3\u675f\u65b9\u5f0f\uff0c\u56e0\u6b64\u4e0d\u7b97\u9519\u8bef\u3002\uff09\u5bf9\u4e8e\u81f4\u547d\u9519\u8bef\u6216\u5176\u4ed6\u4fe1\u53f7\uff0c\u9000\u51fa\u72b6\u6001\u5c06\u4e3a\u975e\u96f6\u503c\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.8\">\n<h2 lang=\"zh\">\u73af\u5883</h2>\n<p lang=\"zh\">\u4e0e\u5927\u591a\u6570\u5176\u4ed6<span class=\"productname\">PostgreSQL</span>\u5de5\u5177\u4e00\u6837\uff0c\u6b64\u5de5\u5177\u4e5f\u4f7f\u7528<span class=\"application\">libpq</span>\u652f\u6301\u7684\u73af\u5883\u53d8\u91cf\uff08\u89c1<a class=\"xref\" href=\"/docs/18/libpq-envars.html\" title=\"32.15.\u00a0\u73af\u5883\u53d8\u91cf\">\u7b2c\u00a032.15\u00a0\u8282</a>\uff09\u3002</p>\n<p lang=\"zh\">\u73af\u5883\u53d8\u91cf<code class=\"envar\">PG_COLOR</code>\u6307\u5b9a\u662f\u5426\u5728\u8bca\u65ad\u6d88\u606f\u4e2d\u4f7f\u7528\u989c\u8272\u3002\u53ef\u80fd\u7684\u503c\u4e3a<code class=\"literal\">always</code>\u3001<code class=\"literal\">auto</code>\u548c<code class=\"literal\">never</code>\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.9\">\n<h2 lang=\"zh\">\u6ce8\u89e3</h2>\n<p lang=\"zh\">\u5f53\u4f7f\u7528<span class=\"application\">pg_receivewal</span>\u800c\u4e0d\u662f<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u6216<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u4f5c\u4e3a\u4e3b\u8981 WAL \u5907\u4efd\u65b9\u6cd5\u65f6\uff0c\u5f3a\u70c8\u5efa\u8bae\u4f7f\u7528\u590d\u5236\u69fd\u3002\u5426\u5219\uff0c\u670d\u52a1\u5668\u53ef\u4ee5\u5728\u8fd9\u4e9b\u9884\u5199\u5f0f\u65e5\u5fd7\u6587\u4ef6\u5907\u4efd\u5b8c\u6210\u4e4b\u524d\u81ea\u7531\u56de\u6536\u6216\u5220\u9664\u5b83\u4eec\uff0c\u56e0\u4e3a\u65e0\u8bba\u662f<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-COMMAND\">archive_command</a>\u3001<a class=\"xref\" href=\"/docs/18/runtime-config-wal.html#GUC-ARCHIVE-LIBRARY\">archive_library</a>\u8fd8\u662f\u590d\u5236\u69fd\uff0c\u90fd\u4e0d\u4f1a\u5411\u670d\u52a1\u5668\u63d0\u4f9b WAL \u6d41\u5df2\u7ecf\u5f52\u6863\u5230\u4ec0\u4e48\u4f4d\u7f6e\u7684\u4fe1\u606f\u3002\u4e0d\u8fc7\u8bf7\u6ce8\u610f\uff0c\u5982\u679c\u63a5\u6536\u7aef\u8ddf\u4e0d\u4e0a\u83b7\u53d6 WAL \u6570\u636e\u7684\u901f\u5ea6\uff0c\u590d\u5236\u69fd\u4f1a\u5360\u6ee1\u670d\u52a1\u5668\u7684\u78c1\u76d8\u7a7a\u95f4\u3002</p>\n<p lang=\"zh\">\u5982\u679c\u6e90\u96c6\u7c07\u542f\u7528\u4e86\u7ec4\u6743\u9650\uff0c<span class=\"application\">pg_receivewal</span>\u4f1a\u5728\u63a5\u6536\u5230\u7684 WAL \u6587\u4ef6\u4e0a\u4fdd\u7559\u8fd9\u4e9b\u7ec4\u6743\u9650\u3002</p>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.10\">\n<h2 lang=\"zh\">\u793a\u4f8b</h2>\n<p lang=\"zh\">\u8981\u4ece\u4f4d\u4e8e<code class=\"literal\">mydbserver</code>\u7684\u670d\u52a1\u5668\u6d41\u5f0f\u63a5\u6536\u9884\u5199\u5f0f\u65e5\u5fd7\uff0c\u5e76\u5c06\u5176\u5b58\u50a8\u5230\u672c\u5730\u76ee\u5f55<code class=\"filename\">/usr/local/pgsql/archive</code>\uff1a</p>\n<pre class=\"screen\"><code class=\"prompt\">$</code> <strong class=\"userinput\"><code>pg_receivewal -h mydbserver -D /usr/local/pgsql/archive</code></strong>\n</pre>\n</div>\n<div class=\"refsect1\" id=\"id-1.9.4.17.11\">\n<h2 lang=\"zh\">\u53e6\u89c1</h2><span class=\"simplelist\"><a class=\"xref\" href=\"https://pg.center/docs/18/app-pgbasebackup.html\" title=\"pg_basebackup\"><span class=\"refentrytitle\"><span class=\"application\">pg_basebackup</span></span></a></span>\n</div>\n</div></div>", "manual_path": "app-pgreceivewal.html", "localization": {"status": "complete", "sources": [{"url": "/docs/18/app-pgreceivewal.html", "method": "same-major semantic node", "sha256": "e5b8524f06df27fd34a44bb397ae2920b2f6739d212f6dff11f8b93dadd4d4b9", "language": "zh", "matched_nodes": ["#APP-PGRECEIVEWAL/div[10]/h2[0]", "#APP-PGRECEIVEWAL/div[2]/p[1]", "#APP-PGRECEIVEWAL/div[3]/h2[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[0]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[1]", "#APP-PGRECEIVEWAL/div[4]/div[6]/ol[0]/li[2]", "#APP-PGRECEIVEWAL/div[4]/p[1]", "#APP-PGRECEIVEWAL/div[4]/p[2]", "#APP-PGRECEIVEWAL/div[4]/p[3]", "#APP-PGRECEIVEWAL/div[4]/p[4]", "#APP-PGRECEIVEWAL/div[4]/p[5]", "#APP-PGRECEIVEWAL/div[4]/p[7]", "#APP-PGRECEIVEWAL/div[4]/p[8]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[11]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[13]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[15]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[17]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[19]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[3]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[1]/dl[0]/dd[9]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[11]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[0]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[1]/p[1]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[5]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[7]", "#APP-PGRECEIVEWAL/div[5]/div[3]/dl[0]/dd[9]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[5]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[1]", "#APP-PGRECEIVEWAL/div[5]/div[7]/dl[0]/dd[3]", "#APP-PGRECEIVEWAL/div[5]/p[2]", "#APP-PGRECEIVEWAL/div[5]/p[4]", "#APP-PGRECEIVEWAL/div[5]/p[6]", "#APP-PGRECEIVEWAL/div[6]/h2[0]", "#APP-PGRECEIVEWAL/div[6]/p[1]", "#APP-PGRECEIVEWAL/div[7]/h2[0]", "#APP-PGRECEIVEWAL/div[7]/p[1]", "#APP-PGRECEIVEWAL/div[7]/p[2]", "#APP-PGRECEIVEWAL/div[8]/h2[0]", "#APP-PGRECEIVEWAL/div[8]/p[1]", "#APP-PGRECEIVEWAL/div[8]/p[2]", "#APP-PGRECEIVEWAL/div[9]/h2[0]", "#APP-PGRECEIVEWAL/div[9]/p[1]"]}], "language": "zh", "original_text": {"/versions/18/description/0": "pg_receivewal \u2014 stream write-ahead logs from a PostgreSQL server", "/versions/18/facts/0/label": "Documented executable", "/versions/18/facts/1/label": "Executable version", "/versions/18/facts/2/label": "Reference inventory", "/versions/18/facts/2/value": "Client applications", "/versions/18/facts/3/label": "Option definition groups", "/versions/18/tables/0/title": "Documented options", "/versions/18/related/0/label": "libpq connection parameters", "/versions/18/tables/0/rows/0/summary": "Directory to write the output to.", "/versions/18/tables/0/rows/1/summary": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN.", "/versions/18/tables/0/rows/2/summary": "Do not error out when --create-slot is specified and a slot with the specified name already exists.", "/versions/18/tables/0/rows/3/summary": "Don't loop on connection errors. Instead, exit right away with an error.", "/versions/18/tables/0/rows/4/summary": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment.", "/versions/18/tables/0/rows/5/summary": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds.", "/versions/18/tables/0/rows/6/summary": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.", "/versions/18/tables/0/rows/7/summary": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval .", "/versions/18/tables/0/rows/8/summary": "Enables verbose mode.", "/versions/18/tables/0/rows/9/summary": "Enables compression of write-ahead logs.", "/versions/18/tables/0/columns/0/label": "Option and arguments", "/versions/18/tables/0/columns/1/label": "Description", "/versions/18/tables/0/rows/10/summary": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options.", "/versions/18/tables/0/rows/11/summary": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted.", "/versions/18/tables/0/rows/12/summary": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default.", "/versions/18/tables/0/rows/13/summary": "User name to connect as.", "/versions/18/tables/0/rows/14/summary": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.", "/versions/18/tables/0/rows/15/summary": "Force pg_receivewal to prompt for a password before connecting to a database.", "/versions/18/tables/0/rows/16/summary": "Create a new physical replication slot with the name specified in --slot , then exit.", "/versions/18/tables/0/rows/17/summary": "Drop the replication slot with the name specified in --slot , then exit.", "/versions/18/tables/0/rows/18/summary": "Print the pg_receivewal version and exit.", "/versions/18/tables/0/rows/19/summary": "Show help about pg_receivewal command line arguments, and exit."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "b9b79a8fb4ba216738e2d38c6ed11972b9044589c1a5496bf91c1a27484c0ba9"}, "comparison_data": {"options": [{"names": ["-D directory", "--directory= directory"], "signature": "-D directory --directory= directory", "description": "Directory to write the output to. This parameter is required."}, {"names": ["-E lsn", "--endpos= lsn"], "signature": "-E lsn --endpos= lsn", "description": "Automatically stop replication and exit with normal exit status 0 when receiving reaches the specified LSN. If there is a record with LSN exactly equal to lsn , the record will be processed."}, {"names": ["--if-not-exists"], "signature": "--if-not-exists", "description": "Do not error out when --create-slot is specified and a slot with the specified name already exists."}, {"names": ["-n", "--no-loop"], "signature": "-n --no-loop", "description": "Don't loop on connection errors. Instead, exit right away with an error."}, {"names": ["--no-sync"], "signature": "--no-sync", "description": "This option causes pg_receivewal to not force WAL data to be flushed to disk. This is faster, but means that a subsequent operating system crash can leave the WAL segments corrupt. Generally, this option is useful for testing but should not be used when doing WAL archiving on a production deployment. This option is incompatible with --synchronous ."}, {"names": ["-s interval", "--status-interval= interval"], "signature": "-s interval --status-interval= interval", "description": "Specifies the number of seconds between status packets sent back to the server. This allows for easier monitoring of the progress from server. A value of zero disables the periodic status updates completely, although an update will still be sent when requested by the server, to avoid timeout disconnect. The default value is 10 seconds."}, {"names": ["-S slotname", "--slot= slotname"], "signature": "-S slotname --slot= slotname", "description": "Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly."}, {"names": ["--synchronous"], "signature": "--synchronous", "description": "Flush the WAL data to disk immediately after it has been received. Also send a status packet back to the server immediately after flushing, regardless of --status-interval . This option should be specified if the replication client of pg_receivewal is configured on the server as a synchronous standby, to ensure that timely feedback is sent to the server."}, {"names": ["-v", "--verbose"], "signature": "-v --verbose", "description": "Enables verbose mode."}, {"names": ["-Z level", "-Z method [: detail ]", "--compress= level", "--compress= method [: detail ]"], "signature": "-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]", "description": "Enables compression of write-ahead logs. The compression method can be set to gzip , lz4 (if PostgreSQL was compiled with --with-lz4 ) or none for no compression. A compression detail string can optionally be specified. If the detail string is an integer, it specifies the compression level. Otherwise, it should be a comma-separated list of items, each of the form keyword or keyword=value . Currently, the only supported keyword is level . If no compression level is specified, the default compression level will be used. If only a level is specified without mentioning an algorithm, gzip compression will be used if the level is greater than 0, and no compression will be used if the level is 0. The suffix .gz will automatically be added to all filenames when using gzip , and the suffix .lz4 is added when using lz4 ."}, {"names": ["-d connstr", "--dbname= connstr"], "signature": "-d connstr --dbname= connstr", "description": "Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. This option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, any database name included in the connection string will be ignored by the server. However, a database name supplied that way overrides the default database name ( replication ) for purposes of looking up the replication connection's password in ~/.pgpass . Similarly, middleware or proxies used in connecting to PostgreSQL might utilize the name for purposes such as connection routing."}, {"names": ["-h host", "--host= host"], "signature": "-h host --host= host", "description": "Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. The default is taken from the PGHOST environment variable, if set, else a Unix domain socket connection is attempted."}, {"names": ["-p port", "--port= port"], "signature": "-p port --port= port", "description": "Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. Defaults to the PGPORT environment variable, if set, or a compiled-in default."}, {"names": ["-U username", "--username= username"], "signature": "-U username --username= username", "description": "User name to connect as."}, {"names": ["-w", "--no-password"], "signature": "-w --no-password", "description": "Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password."}, {"names": ["-W", "--password"], "signature": "-W --password", "description": "Force pg_receivewal to prompt for a password before connecting to a database. This option is never essential, since pg_receivewal will automatically prompt for a password if the server demands password authentication. However, pg_receivewal will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt."}, {"names": ["--create-slot"], "signature": "--create-slot", "description": "Create a new physical replication slot with the name specified in --slot , then exit."}, {"names": ["--drop-slot"], "signature": "--drop-slot", "description": "Drop the replication slot with the name specified in --slot , then exit."}, {"names": ["-V", "--version"], "signature": "-V --version", "description": "Print the pg_receivewal version and exit."}, {"names": ["-?", "--help"], "signature": "-? --help", "description": "Show help about pg_receivewal command line arguments, and exit."}], "synopsis": ["pg_receivewal [ option ...]"], "environment": []}, "comparison_hash": "c6606e42cd220bb7a9951062dfe3243fa8a486a49301db7c5ead2d5dd84a85fc", "manual_language": "zh"}, "comparison": {"left": "16", "right": "17", "status": "changed", "diff": "--- PostgreSQL 16\n+++ PostgreSQL 17\n@@ -48,7 +48,7 @@\n       \"signature\": \"-s interval --status-interval= interval\"\n     },\n     {\n-      \"description\": \"Require pg_receivewal to use an existing replication slot (see Section 27.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly.\",\n+      \"description\": \"Require pg_receivewal to use an existing replication slot (see Section 26.2.6 ). When this option is used, pg_receivewal will report a flush position to the server, indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed. When the replication client of pg_receivewal is configured on the server as a synchronous standby, then using a replication slot will report the flush position to the server, but only when a WAL file is closed. Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily. The option --synchronous (see below) must be specified in addition to make this work correctly.\",\n       \"names\": [\n         \"-S slotname\",\n         \"--slot= slotname\"\n@@ -81,7 +81,7 @@\n       \"signature\": \"-Z level -Z method [: detail ] --compress= level --compress= method [: detail ]\"\n     },\n     {\n-      \"description\": \"Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. The option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, database name in the connection string will be ignored.\",\n+      \"description\": \"Specifies parameters used to connect to the server, as a connection string ; these will override any conflicting command line options. This option is called --dbname for consistency with other client applications, but because pg_receivewal doesn't connect to any particular database in the cluster, any database name included in the connection string will be ignored by the server. However, a database name supplied that way overrides the default database name ( replication ) for purposes of looking up the replication connection's password in ~/.pgpass . Similarly, middleware or proxies used in connecting to PostgreSQL might utilize the name for purposes such as connection routing.\",\n       \"names\": [\n         \"-d connstr\",\n         \"--dbname= connstr\""}}