<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Real_Server_Configuration</title><link>https://sourceforge.net/p/postgres-xc/xc-wiki/Real_Server_Configuration/</link><description>Recent changes to Real_Server_Configuration</description><atom:link href="https://sourceforge.net/p/postgres-xc/xc-wiki/Real_Server_Configuration/feed" rel="self"/><language>en</language><lastBuildDate>Fri, 27 Jun 2014 02:32:36 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/postgres-xc/xc-wiki/Real_Server_Configuration/feed" rel="self" type="application/rss+xml"/><item><title>Real_Server_Configuration modified by Koichi Suzuki</title><link>https://sourceforge.net/p/postgres-xc/xc-wiki/Real_Server_Configuration/</link><description>&lt;div class="markdown_content"&gt;&lt;div class="toc"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#what-is-in-this-page"&gt;What is in this page?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#what-we-are-configuring"&gt;What we are configuring&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href="#what-you-need-to-determine"&gt;What you need to determine&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="#configuring-each-component"&gt;Configuring each component&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#starting-your-postgres-xc-cluster"&gt;Starting your Postgres-XC cluster&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#before-beginning-your-work"&gt;Before beginning your work&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;h2 id="what-is-in-this-page"&gt;What is in this page?&lt;/h2&gt;
&lt;p&gt;This page describes how to configure small Postgres-XC cluster using three servers. Each server should run 64bit Linux (32bit may work though) and should be connected via appropriate TCP/IP connection each other. In this page, we assume each server's name as &lt;em&gt;&lt;strong&gt;node01&lt;/strong&gt;&lt;/em&gt;, &lt;em&gt;&lt;strong&gt;node02&lt;/strong&gt;&lt;/em&gt; and &lt;em&gt;&lt;strong&gt;node03&lt;/strong&gt;&lt;/em&gt;. &lt;/p&gt;
&lt;h2 id="what-we-are-configuring"&gt;What we are configuring&lt;/h2&gt;
&lt;p&gt;We're configuring the following Postgres-XC components. If you are not familiar with them, please go back to the page &lt;a class="alink" href="/p/postgres-xc/xc-wiki/Configuration/"&gt;[Configuration]&lt;/a&gt;. &lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;one GTM: you need only one GTM. &lt;/li&gt;
&lt;li&gt;two GTM proxies: it is recommended to configure GTM proxies for each server to improve the performance. &lt;/li&gt;
&lt;li&gt;two coordinators: you can see each coordinator provides the same database view to your application including psql. &lt;/li&gt;
&lt;li&gt;two datanodes: you can find how Postgres-XC tables are replicated and distributed. &lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="what-you-need-to-determine"&gt;What you need to determine&lt;/h3&gt;
&lt;p&gt;You should determine the followng resources for each of the component above: &lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;User&lt;br /&gt;
You should determine the owner of Postgres-XC user (Linux user). Here, postgresxc is your Postgres-XC datanbase cluster owner. It is highly recommended to use the same user in all the servers. Postgresxc's home directory is /home/postgresxc in all the servers above. &lt;/li&gt;
&lt;li&gt;Which server to configure what&lt;br /&gt;
We should determine what components should be configured in which server. It is a good start to install a pair of coordinator and datanode in servers. Here, we assume the following. &lt;ol&gt;
&lt;li&gt;GTM: configured in node03 &lt;/li&gt;
&lt;li&gt;GTM proxies: configured in node01 and node02 &lt;/li&gt;
&lt;li&gt;Coordinators: configured in node01 and node02 &lt;/li&gt;
&lt;li&gt;Datanodes: configured in node01 and node02 &lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;Working directory&lt;br /&gt;
Each of the components needs separate working directory where various local information is stored. Let's assume the following working directory. &lt;ol&gt;
&lt;li&gt;GTM: /home/postgresxc/pgxc/gtm &lt;/li&gt;
&lt;li&gt;GTM proxy: /home/postgresxc/pgxc/gtm_proxy &lt;/li&gt;
&lt;li&gt;Coordinator: /home/postgresxc/pgxc/coord (recall we should configure coordinators both in node 01 and node02) &lt;/li&gt;
&lt;li&gt;Datanode: /home/postgresxc/pgxc/datanode (recall we should configure datanodes both in node01 and node03) &lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;Node name&lt;br /&gt;
Each node needs unique node name. Let's assign the following names. &lt;ol&gt;
&lt;li&gt;GTM: gtm &lt;/li&gt;
&lt;li&gt;GTM proxies: gtm_pxy01 and gtm_pxy02 (on node01 and node02 respectively) &lt;/li&gt;
&lt;li&gt;Cordinators: coord1 and coord2 (on node01 and node02 respectively) &lt;/li&gt;
&lt;li&gt;Datanodes: datanode1 and datanode2 (on node01 and node02 respecitively) &lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;Port number&lt;br /&gt;
Each component interact each other, as well as with applications. They need unique TCP/IP port for this purpose. Because all the components run on single server (or virtual machine), you need to assign different port number to each of them. Here, we assume: &lt;ol&gt;
&lt;li&gt;GTM: 20001 &lt;/li&gt;
&lt;li&gt;GTM proxies: 20001 &lt;/li&gt;
&lt;li&gt;Coordinators: 20004 &lt;/li&gt;
&lt;li&gt;Datanodes: 20006 &lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Each componet has similar set of resources you should assign. &lt;/p&gt;
&lt;h2 id="configuring-each-component"&gt;Configuring each component&lt;/h2&gt;
&lt;p&gt;Now we begin the configuration from a server 'main'. Because you need to login to different servers, the command prompts are prefixed with the server name such as: &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;ssh&lt;/span&gt; &lt;span class="n"&gt;node01&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node01&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Now, please visit pages for each compoent as follows: &lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a class="alink" href="/p/postgres-xc/xc-wiki/Configure_Server_GTM/"&gt;[Configure_Server_GTM]&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a class="alink" href="/p/postgres-xc/xc-wiki/Configure_Server_GTM_Proxies/"&gt;[Configure_Server_GTM_Proxies]&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a class="alink" href="/p/postgres-xc/xc-wiki/Configure_Server_Coordinators/"&gt;[Configure_Server_Coordinators]&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;span&gt;[Configure_Server_Datanodes]&lt;/span&gt; &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Now your're ready to run your applications. &lt;/p&gt;
&lt;h2 id="starting-your-postgres-xc-cluster"&gt;Starting your Postgres-XC cluster&lt;/h2&gt;
&lt;p&gt;You have done all the configurations successfully. Congratulations!! Now you can start your Postgres-XC cluster by starting each component one by one. You should start GTM first because all the other components assume that GTM is running. Then you start GTM Proxy. &lt;/p&gt;
&lt;p&gt;Please do like this. &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;ssh&lt;/span&gt; &lt;span class="n"&gt;node03&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node03&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;gtm_ctl&lt;/span&gt; &lt;span class="n"&gt;start&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;Z&lt;/span&gt; &lt;span class="n"&gt;gtm&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;D&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;home&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;postgresxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;pgxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;gtm&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node03&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;exit&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;ssh&lt;/span&gt; &lt;span class="n"&gt;node01&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node01&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;gtm_ctl&lt;/span&gt; &lt;span class="n"&gt;start&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;Z&lt;/span&gt; &lt;span class="n"&gt;gtm_proxy&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;D&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;home&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;postgresxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;pgxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;gtm_proxy&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node01&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;exit&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;ssh&lt;/span&gt; &lt;span class="n"&gt;node02&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node02&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;gtm_ctl&lt;/span&gt; &lt;span class="n"&gt;start&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;Z&lt;/span&gt; &lt;span class="n"&gt;gtm_proxy&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;D&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;home&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;postgresxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;pgxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;gtm_proxy&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node02&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;exit&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Now you can start coordinator and datanode. Although you can start them in arbitrary order, it is a good habit to start datanode first. If you start coordinator firist and your applications issue SQL statements before datanodes start, it will lead to an error. &lt;/p&gt;
&lt;p&gt;You can do like this: &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;ssh&lt;/span&gt; &lt;span class="n"&gt;node01&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node01&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;pg_ctl&lt;/span&gt; &lt;span class="n"&gt;start&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;Z&lt;/span&gt; &lt;span class="n"&gt;datanode&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;D&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;home&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;postgresxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;pgxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;datanode&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node01&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;exit&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;ssh&lt;/span&gt; &lt;span class="n"&gt;node02&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node02&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;pg_ctl&lt;/span&gt; &lt;span class="n"&gt;start&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;Z&lt;/span&gt; &lt;span class="n"&gt;datanode&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;D&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;home&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;postgresxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;pgxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;datanode&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node02&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;exit&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;ssh&lt;/span&gt; &lt;span class="n"&gt;node01&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node01&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;pg_ctl&lt;/span&gt; &lt;span class="n"&gt;start&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;Z&lt;/span&gt; &lt;span class="n"&gt;coordinator&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;D&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;home&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;postgresxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;pgxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;coordinator&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node01&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;exit&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;ssh&lt;/span&gt; &lt;span class="n"&gt;node02&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node02&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;pg_ctl&lt;/span&gt; &lt;span class="n"&gt;start&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;Z&lt;/span&gt; &lt;span class="n"&gt;coordinator&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;D&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;home&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;postgresxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;pgxc&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;coordinator&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;node02&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;exit&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;All the components are up and waiting for your application to connect. &lt;/p&gt;
&lt;h2 id="before-beginning-your-work"&gt;Before beginning your work&lt;/h2&gt;
&lt;p&gt;Please note that until know, we told each component where GTM is. However, coordinators do not know where other coordinators are and where datanodes are. They're very important configuration and you should configure them here. &lt;/p&gt;
&lt;p&gt;Only coordinators need to know other nodes. Here, we use psql for this purpose and use CREATE NODE and ALTER NODE statement. At this moment, database called 'postgres' is available. So login to postgres. Because you created the database as user name postgresxc, you're the superuser. &lt;/p&gt;
&lt;p&gt;First, you configure coord1. &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;psql&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="mi"&gt;20004&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt; &lt;span class="n"&gt;node01&lt;/span&gt; &lt;span class="n"&gt;postgres&lt;/span&gt;
&lt;span class="cp"&gt;# CREATE NODE coord2 WITH (TYPE = 'coordinator', HOST = 'node02', PORT = 20004);&lt;/span&gt;
&lt;span class="cp"&gt;# CREATE NODE datanode1 WITH (TYPE = 'datanode', HOST = 'node01', PORT = 20006);&lt;/span&gt;
&lt;span class="cp"&gt;# CREATE NODE datanode2 WITH (TYPE = 'datanode', HOST = 'node02', PORT = 20006);&lt;/span&gt;
&lt;span class="cp"&gt;# \q&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Next, do the similar for coord2. &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt; &lt;span class="n"&gt;psql&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt; &lt;span class="mi"&gt;20004&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;h&lt;/span&gt; &lt;span class="n"&gt;node02&lt;/span&gt; &lt;span class="n"&gt;postgres&lt;/span&gt;
&lt;span class="cp"&gt;# CREATE NODE coord1 WITH (TYPE = 'coordinator', HOST = 'node01', PORT = 20004);&lt;/span&gt;
&lt;span class="cp"&gt;# CREATE NODE datanode1 WITH (TYPE = 'datanode', HOST = 'node01', PORT = 20006);&lt;/span&gt;
&lt;span class="cp"&gt;# CREATE NODE datanode2 WITH (TYPE = 'datanode', HOST = 'node02', PORT = 20006);&lt;/span&gt;
&lt;span class="cp"&gt;# \q&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;main&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="err"&gt;$&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;You must do the above only at the first time you started Postgres-XC cluster. After then, you skip this process and connect your application to any of the coordinators. &lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Koichi Suzuki</dc:creator><pubDate>Fri, 27 Jun 2014 02:32:36 -0000</pubDate><guid>https://sourceforge.netef388a7d008d5ee9099463294a27dc6f4a725fd1</guid></item></channel></rss>