pg_receivexlog

pg_receivexlog—以流的方式从一个PostgreSQL集簇得到事务日志

pg_receivexlog被用来从一个运行着的PostgreSQL集簇以流的方式得到事务日志。事务日志会被使用流复制协议以流的方式传送,并且被写入到文件的一个本地目录。这个目录可以被用作归档位置来做一次使用时间点恢复的恢复。

当事务日志在服务器上被产生时,pg_receivexlog实时以流的方式传输事务日志,并且不像archive_command那样等待段完成。由于这个原因,在使用pg_receivexlog时不必设置archive_timeout。

事务日志在一个常规PostgreSQL连接上被以流式传送,并且使用复制协议。连接必须由一个超级用户或一个具有REPLICATION权限(见Section 20.2)的用户建立,并且pg_hba.conf必须显式允许复制连接。服务器也必须被配置一个足够高的max_wal_senders来至少留出一个可用会话给流。

如果该连接丢失,或者它一开始就由于一个非致命错误而没有被建立,pg_receivexlog将无限期地重试连接并且尽可能重新建立流。为了避免这种行为,使用-n参数。

选项

下列命令行选项控制输出的位置和格式。

-D directory

--directory=directory

要把输出写到哪个目录。

这个参数是必需的。

下列命令行选项控制程序的运行。

-n

--no-loop

不要在连接错误上循环。相反,碰到一个错误时立刻退出。

-v

--verbose

启用冗长模式。

下列命令行选项控制数据库连接参数。

-d connstr

--dbname=connstr

指定用于连接到服务器的参数为一个连接字符串。详见Section 31.1.1。

为了和其他客户端应用一致,该选项被称为--dbname。但是因为pg_receivexlog并不连

接到集簇中的任何特定数据库,连接字符串中的数据库名将被忽略。

-h host

--host=host

指定运行服务器的机器的主机名。如果该值以一个斜线开始,它被用作Unix 域套接字

的目录。默认值取自PGHOST环境变量(如果设置),否则会尝试一个Unix 域套接字连

接。

-p port

--port=port

指定服务器正在监听连接的TCP 端口或本地Unix 域套接字文件扩展。默认用PGPORT环

境变量中的值(如果设置),或者一个编译在程序中的默认值。

-s interval

--status-interval=interval

指定发送回服务器的状态包之间的秒数。这允许我们更容易地监控服务器的进度。一个

零值完全禁用这种周期性的状态更新,不过当服务器需要时还是会有一个更新会被发送

来避免超时导致的断开连接。默认值是10秒。

-U username

--username=username

要作为哪个用户连接。

-w

--no-password

从不发出一个口令提示。如果服务器要求口令认证并且没有其他方式提供口令(例如一

个.pgpass文件),那儿连接尝试将失败。这个选项对于批处理任务和脚本有用,因为

在其中没有一个用户来输入口令。

-W

--password

强制pg_receivexlog在连接到一个数据库之前提示要求一个口令。

这个选项不是必不可少的,因为如果服务器要求口令认证,pg_receivexlog将自动提示要

求一个口令。但是,pg_receivexlog将浪费一次连接尝试来发现服务器想要一个口令。在

某些情况下值得用-W来避免额外的连接尝试。

其他选项也可用:

-V

--version

打印pg_receivexlog版本并退出。

-?

--help

显示有关pg_receivexlog命令行参数的帮助并退出。

例子

要从位于mydbserver的服务器流式传送事务日志并且将它存储在本地目

录/usr/local/pgsql/archive:

$ pg_receivexlog -h mydbserver -D /usr/local/pgsql/archive

PostgreSQL/bin的更多相关文章

  1. PostgreSQL入门

    这篇文章主要介绍我在最近工作中接触到的数据库PostgreSQL,做个入门记录,以便自己日后回顾. 1.下载安装,安装配置过程可以参考http://blog.chinaunix.net/uid-354 ...

  2. postgresql流复制配置

    一.配置环境: 示例环境 主机名 IP 角色 系统版本 数据目录 pg版本 db1 192.168.128.128 主库 RedHat5.3 /app/postgreSQL/data 9.1.7 db ...

  3. How to debug PostgreSQL function with pgAdminIII

    How to debug plpgsql with pgAdminIII [root@localhost soft_bak]# git clone git://git.postgresql.org/g ...

  4. Avoiding PostgreSQL database corruption

    TL;DR: Don't ever set fsync=off, don't kill -9 the postmaster then deletepostmaster.pid, don't run P ...

  5. Linux环境PostgreSQL源码编译安装

    Linux环境PostgreSQL源码编译安装 Linux版本: Red Hat 6.4 PostgreSQL版本: postgresql-9.3.2.tar.gz 数据存放目录: /var/post ...

  6. PostgreSQL安装详细步骤(windows)

    原文地址:http://blog.chinaunix.net/uid-354915-id-3498734.html PostgreSQL安装:一.windows下安装过程安装介质:postgresql ...

  7. PostgreSQL安装详细步骤windows

    PostgreSQL安装:一.windows下安装过程安装介质:postgresql-9.1.3-1-windows.exe(46M),安装过程非常简单,过程如下:1.开始安装: 2.选择程序安装目录 ...

  8. linux安装postgresql

    第一步在编译安装postgresql源码的时候,需要用到以下依赖,若本机没有的话,需要提前安装依赖环境,执行以下命令:yum install gcc gcc-c++yum install zlib-d ...

  9. 访问GitLab的PostgreSQL数据库,查询、修改、替换等操作

    1.登陆gitlab的安装服务查看配置文件 cat /var/opt/gitlab/gitlab-rails/etc/database.yml production: adapter: postgre ...

随机推荐

  1. nignx的proxy_cache

    http段配置: #cache configclient_body_buffer_size 512k;proxy_connect_timeout 5;proxy_read_timeout 60;pro ...

  2. mysql默认字符集修改

    (1) 最简单的修改方法,就是修改mysql的my.ini文件中的字符集键值,添加 [mysql] default-character-set = utf8 [mysqld] character_se ...

  3. 不要让mysql犹豫不决

    DROP TABLE IF EXISTS `w1`; CREATE TABLE `w1` ( `waid` ) NOT NULL AUTO_INCREMENT, `wa1` ) COLLATE utf ...

  4. IMAP和POP3有什么区别

    http://help.163.com/10/0203/13/5UJONJ4I00753VB8.html?servCode=6010237 IMAP和POP3有什么区别?   POP3协议允许电子邮件 ...

  5. Java中的可变参数以及foreach语句

    Java中的可变参数的定义格式如下: 返回值类型  方法名称(类型 ... 参数名称){} foreach语句的格式如下: for ( 数据类型  变量名称 :数据名称){ ... } public ...

  6. Delphi 中的结构体与结构体指针

    好多程序都给结构体变量设定了一个结构体指针 例如: PAbc = ^TAbc; TAbc = record a: string[10]; b: string[5]; c: string[1]; end ...

  7. (转)js闭包初入门

    先看一段JS代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 function a(){             var num = 0;             function  ...

  8. {转}每次从vss获取文件都是只读

    http://www.cnblogs.com/lauplay/p/3141636.html 在 Visual Studio 2008 中,使用 VSS 作为源码管理器,把文件签入后,文件会自动变为只读 ...

  9. Hbase中rowkey设计原则

    1.热点问题 在某一时间段,有大量的数据同时对一个region进行操作 2.原因 对rowkey的设计不合理 对rowkey的划分不合理 3.解决方式 rowkey是hbase的读写唯一标识 最大长度 ...

  10. C#中Dynamic关键字

    dynamic关键字和动态语言运行时(DLR)是.Net 4.0中新增的功能. 什么是"动态"? 编程语言有时可以划分为静态类型化语言和动态类型化语言.C#和Java经常被认为是静 ...