谢谢你的帮助。我未能构建Postgres集群。我的gtm.confg:
listen_addresses = '0.0.0.0'
port = 6668在10.80.19.47。我的gtm_proxy.confg:
listen_addresses = '0.0.0.0'
port = 6666
gtm_host = '10.80.19.47'
gtm_port = 6668在启动gtm和gtm_proxy之后,我显示了使用lsof -i的网络信息:
gtm 11730 postgres 6u IPv4 355914 0t0 TCP 10.80.19.47:ircu-4->10.80.19.46:44017 (ESTABLISHED
gtm 11730 postgres 7u IPv4 355915 0t0 TCP 10.80.19.47:ircu-4->10.80.19.46:44018 (ESTABLISHED)
gtm 11730 postgres 8u IPv4 355916 0t0 TCP 10.80.19.47:ircu-4->10.80.19.46:44019 (ESTABLISHED)然后配置datanode,如:
listen_addresses = '0.0.0.0'
port = 5432
pooler_port = 20002
gtm_host = '127.0.0.1'
gtm_port = 6666 协调员如下:
listen_addresses = '0.0.0.0'
port = 3456
pooler_port = 20003
gtm_host = '127.0.0.1'
gtm_port = 6666其他是默认的,那么我用以下内容启动datanode:
/usr/postgres-xl-9.2/bin/postgres --datanode -D /data1/pgsql/data &启动协调员:
/usr/postgres-xl-9.2/bin/postgres --coordinator -D /data1/pgsql/coordinator &当我连接到Postgres-XL时,使用协调器:
psql -h 127.0.0.1 -p 3456 postgres;当我想要创建一个数据库时:
create database test;但是失败了,它表明:
No Datanode defined in cluster
You need to define at least 1 Datanode with CREATE NODE.然后,我使用以下方法检查集群:
psql -h 127.0.0.1 -p 3456 postgres -c "select * from pgxc_node order by 1";它只显示一个节点,如下所示:
node_name | node_type | node_port | node_host | nodeis_primary | nodeis_preferred | node_id
-------------------+-----------+-----------+-----------+----------------+------------------+-----------
coordinator_node2 | C | 5432 | localhost | f | f | 738118815我连接到端口5432,它显示了类似的信息,如:
node_name | node_type | node_port | node_host | nodeis_primary | nodeis_preferred | node_id
------------+-----------+-----------+-----------+----------------+------------------+------------
data_node2 | C | 5432 | localhost | f | f | -923817565我的配置有什么问题?谢谢大家。
发布于 2015-08-12 04:42:39
您需要定义这样的datanode。
./psql -c "CREATE NODE datanode1 WITH (TYPE = 'datanode', PORT = 7777)" postgres -p 3456 -h 127.0.0.1发布于 2016-10-06 05:30:11
一年后我会回答这个问题。但是,我建议您使用Postgres开发人员自己建议的pgxc_ctl命令行工具。它将使您远离手动配置集群的繁忙任务。
为此,您可以参考Postgres的正式文档。成功安装pgxc_ctl命令行工具后,键入
prepare config minimal以生成配置集群的基本配置文件。相应地编辑pgxc_ctl/pgxc_ctl.conf中的更改。输入exit,最后,如果配置正常,可以初始化所有集群。为此,键入
pgxc_ctl init allhttps://stackoverflow.com/questions/31740178
复制相似问题