必须至少声明下列的一个选项用来选择一个动作:
创建一个新的逻辑复制槽,使用--slot声明的名字、 --plugin声明的输出插件、--dbname声明的数据库。
删除--slot声明的复制槽,然后退出。
从--slot声明的逻辑复制槽开始流修改,直到被信号终止。 如果服务器端的修改流以服务器关机或断开结束,那么在一个循环中重试, 除非声明了--no-loop。
流的格式是由创建槽时声明的输出插件决定的。
必须连接到创建该槽时使用的那个数据库。
--create-slot和--start可以一起声明。 --drop-slot不能和其他动作组合。
下面的命令行选项控制输出和其他复制行为的位置和格式:
将接收到的和解码的事务数据写入到这个文件中。使用-来标准输出。
声明pg_recvlogical应该多久发出一次fsync()
调用,确保输出文件安全的刷新到了磁盘上。
服务器将偶尔请求客户端执行一次刷新,并报告刷新位置给服务器。 这个设置除此之外,会更频繁的执行刷新。
声明间隔为0完全禁用发出fsync()
调用,
而仍然向服务器汇报进展。在这种情况下,一旦崩溃,数据可能会丢失。
在--start模式下,从给定的LSN开始复制。关于这个操作的影响的细节, 请查看第 46 章和第 49.3 节中的文档。 在其他模式下忽略。
当到服务器的连接断开时,不在一个循环中重试,只是退出。
传递选项name到输出插件,选项值为value (如果声明了的话)。退出哪个选项和它们的影响取决于使用的输出插件。
当创建一个槽时,使用指定的逻辑解码输出插件。参阅第 46 章。 如果槽早已存在,那么该选项没什么影响。
这个选项和pg_receivexlog中具有相同名字的选项的影响相同。 参阅那里的描述。
在--start模式下,使用现有的名字为slot_name 的逻辑复制槽,在--create-slot模式下,用这个名字创建槽。 在--drop-slot模式下,删除这个名字的槽。
启用详细模式。
下列的命令行选项控制数据库连接参数。
要连接的数据库。查看该动作的描述获取这详细意味着什么。这可以是一个libpq连接字符串; 参阅第 31.1.1 节获取更多信息。缺省是用户名。
声明正在运行服务器的机器的主机名。如果该值以一个斜线开始,那么它用作Unix域套接字的路径。 缺省来自PGHOST环境变量,如果已经设置,否则尝试一个Unix域套接字连接。
声明TCP端口或服务器正在监听链接的本地Unix域套接字文件扩展。 缺省是PGPORT环境变量,如果设置了的话,或者是一个内部编译的缺省值。
要连接的用户名。缺省是当前操作系统的用户名。
永不发出密码提示。如果服务器请求密码认证并且密码不可通过其他方式, 比如.pgpass文件,获得,那么该连接尝试将失败。 这个选项在批量作业和没有用户输入密码的脚本中有用。
强制pg_recvlogical在连接到数据库之前提示密码。
这个选项从来都不重要,因为如果服务器需要密码认证,那么pg_recvlogical 将自动提示一个密码,pg_recvlogical 将在找出服务器想要一个密码上浪费一个连接尝试。在某些情况下, 输入-W来避免额外的连接尝试是值得的。
下列附加选项是可用的:
打印pg_recvlogical的版本并退出。
显示关于pg_recvlogical命令行参数的帮助,然后退出。