我正在尝试使用以下步骤创buildPostgresql 9.1热备份:
主编的pg_hba。 补充行:
host replication postgres 10.10.10.2/32 md5
编辑硕士的postgresql.conf:
listen_address = '*' wal_level = hot_standby max_wal_senders = 3
在Standby上创buildrecovery.conf:
standby_mode = 'on' primary_conninfo = 'host=10.10.10.1'
添加recovery.conf后,我无法启动备用服务器。 在启动日志中,我得到一个错误:
> could not create IPv6 socket
我错过了什么吗?
当内核中没有启用IPv6时,会发生这种情况,但IPv6地址在某处发布。
有时候/etc/hosts localhost指定127.0.0.1 (IPv4)和::1 (IPv6)。 在这种情况下,您可以删除IPv6别名以避免这种错误。
统计信息收集器(由PostgreSQL启动的一个单独的进程)使用硬编码的名字localhost ,所以这个问题将使它无法启动提到的错误信息。 但是,这不应该阻止PostgreSQL本身的启动。
如果*碰巧包含有问题的IPv6地址,则可以通过在listen_addresses进行select来解决问题(无论如何,这是一个很好的做法):
listen_addresses = 127.0.0.1,10.10.10.1#如果需要添加其他接口
要禁用IPv6错误,您必须执行以下步骤。
将下面的代码粘贴到这个文件中(/etc/sysctl.conf)
net.ipv6.conf.all.disable_ipv6 = 1
在postgresql.conf文件中,将监听地址更改为0.0.0.0
listen_address ='0.0.0.0'
就是这样,重新启动postgreSQL服务。