Postgres-XC 1.0.4安装
- 格式:doc
- 大小:1.40 MB
- 文档页数:16
PostgreSQL数据库安装教程(仅供参考)最新更新:2014年08月27日深圳市恩布网络科技有限公司(内部技术文档)目 录1. Linux安装PostgreSQL数据库 (3)1.1. 概述 (3)1.2. 新建postgres用户和目录 (3)1.3. 配置postgres用户的环境变量: (3)1.4. yum安装 (3)1.5. 初始化数据库目录 (3)1.6. 给postgres赋予权限 (4)1.7. 配置监听地址、端口 (4)1.8. 配置支持远程连接 (4)1.9. 设置开机启动 (4)1.10. 启动服务 (4)1.11. 修改postgres帐号密码 (4)2. Windows安装PostgreSQL数据库 (5)2.1. 概述 (5)2.2. 安装 (5)2.3. 配置监听地址、端口 (5)2.4. 配置支持远程连接 (5)3. 注意事项 (6)4. 附录一:PostgreSQL数据库介绍 (6)5. 附录二:PostgreSQL与MySQL比较 (6)1.Linux安装PostgreSQL数据库1.1.概述以CentOS 6.4(或以上)X64(64位)版本,PostgreSQL8.4为例子说明。
本文仅供参考,如果安装不成功,或需要更多PostgreSQL技术资料,请自行上网搜索;1.2.新建postgres用户和目录mkdir /var/lib/pgsqlgroupadd postgresuseradd ‐g postgres postgres1.3.配置postgres用户的环境变量:cat >>/var/lib/pgsql/.bash_profile<<EOFPGDATA=/var/lib/pgsql/dataexport PGDATAPGCLIENTENCODING=EUC_CNexport PGCLIENTENCODINGEOF1.4.yum安装yum ‐y install postgresql‐server postgresql‐libs1.5.初始化数据库目录su postgres/usr/bin/initdb ‐D /var/lib/pgsql/data1.6.给postgres赋予权限exit退回root用户,执行下面命令:chown postgres:postgres /var/lib/pgsql/data 1.7.配置监听地址、端口vi /var/lib/pgsql/data/postgresql.conf取消以下两行的注释以及修改以下参数:listen_addresses = '*'port = 5432max_connections = 20001.8.配置支持远程连接vi /var/lib/pgsql/data/pg_hba.conf在文件最后增加以下一行:host all all 0.0.0.0/0 md51.9.设置开机启动chkconfig postgresql on1.10.启动服务service postgresql start1.11.修改postgres帐号密码su postgrespsqlALTER USER postgres PASSWORD '你的密码';\q2.Windows安装PostgreSQL数据库2.1.概述Windows版本PostgreSQL安装最新9.3版本,下载地址:/download/windows//products‐services‐training/pgdownload#windows2.2.安装不需要重造相同的轮子,网上已经有很不错的安装教程,这里随机搜索了二个,如果时间久了,链接无效,也可以自己到网上搜索:PostgreSQL安装详细步骤(windows)Windows系统中安装PostgreSQL数据库图文教程安装完成后,记得修改配置监听地址、端口,和配置支持远程连接,请看后面内容。
PostgreSQL安装及配置PostgreSQL的安装可以有以下几种方式:a).run文件安装b)yum安装c)源码安装一、.run文件安装1、安装文件下载,格式如下:postgresql-9.4.1-3-linux-x64.run将该文件拷贝到linux系统下目录,如/home/zhangwy下2、添加用户组postgresql,用以下命令:#groupadd postgresql3、添加用户组postgresql下的用户postgres,用以下命令:#adduser postgres –g postgresql4、修改postgres用户的密码:#passwd postgres5、切换到.run文件目录下,查看文件权限:#cd /home/zhangwy#ls –l执行.run文件:#./post*.run(貌似只能在root用户下安装)开始安装postgresql:默认安装路径为:/opt/PostgreSQL/9.4数据文件安装目录为:/opt/PostgreSQL/9.4/data安装过程中,系统会默认创建一个superuser(postgres),可以设置密码,这里设置为postgres设置字符编码为709,开始安装:安装完成后,系统中默认已创建好postgres数据库6、配置环境变量修改/etc下的profile文件,增加:export PGHOME=/opt/PostgreSQL/9.4export PATH=$PGHOME/bin:$PATHexport PGDATA=$PGHOME/dataexport LD_LIBRARY_PATH=$PGHOME/lib保存后,执行:#source /etc/profile命令,修改的配置将立即生效。
7、连接到postgres数据库此时表示数据库连接成功。
8、登录到linux的图像界面,可看到postgresql的安装,其中pgAdminIII是它的一个客户端界面,可在客户端进行操作。
PostgreSQL的下载和安装使⽤步骤PostgreSQL的下载和安装使⽤步骤wunanliu 2019-06-03 18:43:57 11451 收藏 25分类专栏: PostgreSQL ⽂章标签: PostgreSQL版权第⼆步:点击Download,就来到下载页,这⾥点击Linux下⾯的Other Linux选项,然后点击下⽅的tar.gz archive下载⼆进制归档可以选择对应版本,对应操作系统对应的位数,我在此处选择的即为点击即可下载,下载完毕之后准备安装,解压1. 安装并初始化,解压数据库并放到指定⽬录:tar -zxvf postgresql-9.6.13-1-linux-x64-binaries.tar.gz# 解压出来之后⽬录为pgsqlmv pgsql/ /monchickey/现在pgsql的安装⽬录就是/monchickey/pgsql创建pgsql⽤户并设置密码:useradd postgrespasswd postgres# 两次输⼊密码并确认创建pgsql数据⽬录:mkdir /monchickey/pgsql_data给postgres⽤户授权⽬录访问权限:chown postgres /monchickey/pgsql_data/然后切换到postgres⽤户来操作数据库,pgsql数据库就以postgres为默认⽤户,执⾏: su - postgres 切换下⾯初始化数据库:/monchickey/bin/initdb -D /monchickey/pgsql_data/等待执⾏完毕,没什么问题就初始化成功了,提⽰如下:如图根据提⽰可以启动数据库: /monchickey/bin/pg_ctl -D /monchickey/pgsql_data/ -l logfile start这⾥-l指定⽇志⽂件位置,这⾥直接输出在家⽬录下的logfile中,这个可以⾃⼰指定,这⾥-D指定数据⽬录,默认如果不加数据⽬录直接报错找不到,可以刚才说的环境变量配置⽂件中~/.bash_profile加⼊⼀⾏: export PGDATA=/monchickey/pgsql_data 然后source进去即可,这样pgsql会⾃动去找PGDATA环境变量值,找不到才会报错。
PostgreSQL数据库的安装和配置PostgreSQL是一种强大的开源关系型数据库管理系统,被广泛应用于各种规模的企业和项目中。
本文将介绍如何进行PostgreSQL数据库的安装和配置,让您能够轻松地开始使用这一强大的数据库系统。
一、安装PostgreSQL数据库要安装PostgreSQL数据库,您需要按照以下步骤进行操作:1. 下载PostgreSQL软件包:您可以在PostgreSQL官方网站上找到适合您操作系统的安装包,并进行下载。
确保选择最新版本的软件包以获得更好的性能和安全性。
2. 运行安装程序:运行下载的安装程序,并按照向导提示进行操作。
您可以选择安装位置、创建数据库集群的位置以及设置管理员用户的密码等。
3. 完成安装:安装程序将自动完成数据库软件的安装过程。
一旦安装完成,您将可以在您选择的安装位置找到PostgreSQL数据库的执行文件,并可以通过命令行或图形界面进行数据库管理。
二、配置PostgreSQL数据库安装完成后,您需要进行一些配置以确保PostgreSQL数据库可以正常运行并满足您的需求。
以下是配置PostgreSQL的关键步骤:1. 修改配置文件:在PostgreSQL的安装目录中,您将找到一个名为postgresql.conf的配置文件。
您可以使用任何文本编辑器打开该文件,并根据自己的需求对其进行修改。
2. 设置监听地址:在配置文件中,您可以找到一个名为listen_addresses的选项。
这决定了PostgreSQL数据库监听的IP地址。
如果您计划在本地访问数据库,您可以将其设置为localhost。
如果您希望从其他计算机上访问数据库,则可以将其设置为数据库服务器的IP地址。
3. 配置端口号:在配置文件中,您还可以找到一个名为port的选项,该选项确定了数据库服务器监听的端口号。
默认情况下,端口号为5432,您可以根据需要进行修改。
4. 设定认证方式:在配置文件中,您可以找到一个名为pg_hba.conf的文件。
linux下 postgres数据库安装教程0. 所有软件都放在/root/soft/目录下1. 检查PostgreSQL 是否已经安装rpm -qa|grep postgres如果rpm安装的用以下方式卸载:用 rpm -ev 命令卸载或者用yum remove postgresyum remove pgsql删除 rm -rf /etc/init.d/postgresql 删除 rm -rf /usr/pgsql-9.2.4删除 rm -rf /var/lib/pgsql/9.2.4/datauserdel -r postgresgroupdel postgres2. 进入到软件安装目录cd /root/soft3. 解压tar -zxvf postgresql-9.2.4.tar.gz4.进入解压后的目录cd postgresql-9.2.45开始编译./configure --prefix=/usr/pgsql-9.2.4(如果有以下错误)-----------------------以下是我编译时遇到的错误----------------------第一个问题:configure:error: in'/root/postgresql-9.2.4':configure:error: no acceptable C compiler foundin $PATH原因是没有GCC安装即可#yum -y install gcc第二问题:configure: error: readline library not found少readline库,安装即可#yum -y install readline-devel第三个问题:configure: error: zlib library not found安装zlib#yum -y install zlib-devel也许每个人的问题都不一样,编译的时候找到错误提示,百度一下,应该可以有答案的,我遇到的也就是这三个-----------------------------------------------------------------------6.make7.make install8.创建用户组和用户:groupadd postgresuseradd -g postgres postgres// passwd postgres 输入密码我是输入了postgres+_)(*9.创建数据库库文件存储目录、给postgres赋予权限:su postgrescd /home/postgresmkdir -p pgsql/locker/logmkdir -p pgsql/locker/datacd /home/postgres/pgsql/locker/这个data目录必须是chmod 700的权限否则起不来su rootchown postgres.postgres datachown postgres.postgres logchmod 700 data10.初始化数据库目录:切换用户su postgres初始化数据/usr/pgsql-9.2.4/bin/initdb -D/home/postgres/pgsql/locker/data11.配置监听地址和端口:(必须用postgres用户修改)cd /home/postgres/pgsql/locker/datavi postgresql.conf修改listen_addresses = '*'port = 5432max_connections = 100012.允许远程连接:vi pg_hba.conf增加一行修改host all all 0.0.0.0/0 md5md5是要密码 trust 是不要密码su root配置iptables让远程主机能访问:vi /etc/sysconfig/iptables添加-A INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPTservice iptables restart13启动数据库 su postgres/usr/pgsql-9.2.4/bin/postmaster -p 5432 -D/home/postgres/pgsql/locker/data如果报错误主要是看你"/tmp/.s.PGSQL.5433.lock": Permission denied"..删除这个件用root的用户 rm -rf /tmp/.s.PGSQL.5432.locksysctl -w kernel.shmmax=128000000FATAL: could not create shared memory segment: 无效的参数DETAIL: Failed system call was shmget(key=5432001,size=58310656, 03600).HINT: This error usually means that PostgreSQL's request for a shared memory segment exceeded your kernel's SHMMAX parameter. You can either reduce the request size or reconfigure the kernel with larger SHMMAX. To reduce the request size (currently 58310656 bytes), reduce PostgreSQL's shared memory usage, perhaps by reducing shared_buffers or max_connections.LOG: could not bind Unix socket: Address already in useHINT: Is another postmaster already running on port 5432? If not, remove socket file "/tmp/.s.PGSQL.5432" and retry.删除这个件用root的用户 rm -rf /tmp/.s.PGSQL.543214,su postgres设置密码用postgres用户/usr/pgsql-9.2.4/bin/psql -p 5432 -U postgres可以修改超级用户postgres的密码ALTER USER postgres WITH PASSWORD 'postgres+_)(*';用客户端起来测试成功15. 让postgresql数据库随系统启动而启动:将启动脚本拷贝到/etc/init.d目录下,具体执行如下命令:su rootcd /etc/init.d#cd (第一步解压的安装文件目录)/postgresql-9.2.4/contrib/start-scriptscd /root/soft/postgresql-9.2.4/contrib/start-scriptscp linux /etc/init.d/postgresqlcd /etc/init.dchmod +x postgresqlvi postgresql修改prefix=/usr/pgsql-9.2.4PGDATA="/home/postgres/pgsql/locker/data"PGUSER=postgresPGLOG="/home/postgres/pgsql/locker/log/serverlog"设置postgresql服务开机自启动chkconfig --add postgresql启动数据库:service postgresql stop service postgresql start。
PostgreSQL安装、命令和性能调优一、安装1.安装包文件yum install https:///pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-centos11-11-2.noarch.rpm#客户端yum install postgresql11s#服务端yum install postgresql11-server2.初始化/usr/pgsql-11/bin/postgresql-11-setup initdbsystemctl enable postgresql-11systemctl start postgresql-113.设置Postgres用户权限passwd postgressu postgrespsqlALTER USER postgres WITH PASSWORD 'password';4.编辑访问配置编辑postgresql.conf,修改listen_addresseslisten_addresses = '*' # what IP address(es) to listen on;编辑pg_hba.conf# "local" is for Unix domain socket connections onlylocal all all md5 # IPv4 local connections:host all all 127.0.0.1/32 md5 host all all 192.168.1.15/20 md5 5.重启systemctl restart postgresql-11select * from pg_database;update pg_database set datcollate='zh_CN.UTF-8',datctype='zh_CN.UTF-8';6.重新装载pg_hba.conf配置首先/etc/profile加入export PGDATA=/var/lib/pgsql/11/data/usr/pgsql-11/bin/pg_ctl reload二、命令1.创建角色create role my_hub login password ‘password’2.创建DBcreate database my_db with owner= my_hub;3.连接DBpsql -U my_hub -d my_db4.\l查看数据库列表5.\d \d+ \dt \dt+ \ds \ds+查看所有表和序列6.\dnS命令也可以列出所有模式7.\c database切换数据库8.\c role切换用户9.revoke connect on database my_db from public;取消所有角色连接my_db数据库的权限10.grant connect on database my_db to my_test;赋予my_test角色连接my_db数据库的权限11.grant all privileges on database my_db to my_sheng;赋予my_sheng角色所有my_db数据库的权限12.GRANT ALL ON SCHEMA my_hub TO my_yan赋予my_yan角色操作health_hub模式的所有权限13.GRANT ALL ON SEQUENCE my_hub.base_hub_id_seq TO my_yan赋予my_yan角色操作my_hub.base_hub_id_seq序列的权限三、性能优化配置postgresql.conf以16G 4核为硬件参考superuser_reserved_connections = 15# 为超级用户保留多少个连接(change requires restart)max_connections=415# 规格内存(GB)*1000*(1/4)/10 + superuser_reserved_connectionsshared_buffers=4GB# IF use hugepage: 规格内存*(1/4) ELSE: min(32GB, 规格内存*(1/4))max_prepared_transactions=415# max_prepared_transactions=max_connections 分布式事务支持两阶段提交使用work_mem =4MB# max(min(规格内存/4096, 64MB), 4MB)maintenance_work_mem = 1GB# min( 8G, (主机内存*1/8)/max_parallel_maintenance_workers )autovacuum_work_mem = 400MB# min( 8G, (规格内存*1/8)/autovacuum_max_workers )max_worker_processes = 64max_parallel_maintenance_workers = 2# min( max(2, CPU核数/2) , 16 )max_parallel_workers_per_gather=2# min( max(2, CPU核数-4) , 24 )max_parallel_workers =8# CPU核数*2max_wal_size = 8GB# min(shared_buffers*2 , 用户存储空间/10)min_wal_size =2GB# min(shared_buffers/2 , 用户存储空间/10)max_sync_workers_per_subscription = 2# min ( 32 , max(2, CPU核数-4) )effective_cache_size = 9GB# 规格内存*0.75autovacuum_max_workers = 5# max(min( 8 , CPU核数/2 ) , 5)tcp_keepalives_idle = 60# 每60秒探测一次tcp_keepalives_interval = 10# 每个探测包等待响应为10妙tcp_keepalives_count = 5# 每次探测发送10个探测包checkpoint_timeout=15min#延长checkpoint_timeout时间,放置WAL增长,上量之后考虑放到30-60分钟max_wal_senders=10max_replication_slots=10# 建议大于等于max_wal_senders,max_replication_slots 公式:max_replication_slots=max_wal_senders wal_receiver_status_interval = 3s#多久向主报告一次从的状态,当然从每次数据复制都会向主报告状态,这里只是设置最长的间隔时间。
如何在Linux上安装和配置PostgreSQL数据库PostgreSQL是一个强大的开源关系型数据库管理系统,广泛应用于各种大型企业和Web应用程序。
本文将介绍如何在Linux操作系统上安装和配置PostgreSQL数据库。
1. 安装PostgreSQL数据库首先,需要使用适当的包管理工具在Linux系统上安装PostgreSQL。
在大多数基于Debian的系统(如Ubuntu)中,可以使用以下命令安装:```sudo apt-get install postgresql```对于基于Red Hat的系统(如CentOS),可以使用以下命令安装:```sudo yum install postgresql-server```2. 初始化数据库集群安装完成后,需要初始化一个数据库集群。
在命令行中执行以下命令:```sudo postgresql-setup initdb```该命令将在系统中创建一个空的数据库集群。
3. 启动PostgreSQL服务启动数据库服务,可以使用以下命令:```sudo systemctl start postgresql```4. 配置访问权限为了保护数据库的安全性,需要配置适当的访问权限。
默认情况下,PostgreSQL只允许本地主机访问。
要允许远程访问,需要编辑主配置文件`postgresql.conf`。
```sudo nano /etc/postgresql/<version>/main/postgresql.conf```找到以下行:```#listen_addresses = 'localhost'```将其改为:```listen_addresses = '*'```保存更改并关闭文件。
然后,打开`pg_hba.conf`文件:```sudo nano /etc/postgresql/<version>/main/pg_hba.conf```在文件的底部添加以下行:```host all all 0.0.0.0/0 md5```保存更改并关闭文件。
Postgres在Windows下的安装,同时设定数据库的存放位置1. 下载Postgres安装程序2. 安装Postgres,过程如下这里给postgres帐号设置了密码,如果不设置安装程序会为新帐号生成一个随机密码。
后面初始化postgres数据库时需要用postgres帐号登录,所以在这里先设置了密码。
接下来安装程序询问是否要创建帐号,确定即可(如上图)安装程序继续,这里选择不初始化数据库群,后面手工初始化,这样就可以为数据库指定数据存放位置。
直接确定完成安装。
数据库安装完成后,数据库帐号”postgres”已经创建,但密码为空,可在pgAdmin III中设置。
3. 初始化数据库首先为系统设置环境变量:l PG_HOME=c:\Program Files\PostgreSQL\8.3l 在PATH环境变量中追加:%PG_HOME%\binl PGDATA=D:\database环境变量PGDATA设置了postgres数据文件的存放位置,这里为d:\database,这个目录需要用postgres帐号创建。
为了初始化postgres数据库,现在需要用postgres帐号进行登录。
登录之后,执行下列操作:l 创建目录d:\databasel 在命令行窗口(cmd)中执行命令initdb –E utf8初始化数据库,这里设置数据库的编码为utf84. 设置postgres服务数据库现在已经初始化好了,下面需要对postgres服务的配置进行一点修改以便顺利启动postgres服务。
首先注销postgres,重新正常登录windows,进入windows的服务管理控制台,找到PostgreSQL Database Server 8.3服务,右键菜单进入PostgreSQL Database Server 8.3的属性窗口,图中看到Postgres以参数-D “C:\program Files\PostgresSQL\8.3\data\”启动,这就指定了数据库文件存放在C:\program Files\PostgresSQL\8.3\data\目录下,但我们已经改变了这个设置,并记录在环境变量PGDATA中了。
第一节安装操作系统1 说明:本安装说明是在虚拟机中测试书写。
由于自己的水平比较低,在安装的时候遇到很多的麻烦,所以把文档写的比较详细,希望能对pg-xc感兴趣的朋友有所帮助。
如果哪个地方说明错误希望能得到反馈,共同提高。
本人看好pg-xc,希望能对自己的企业带来帮助邮箱:Ems110@1.1虚拟机版本:1.2操作系统安装配置:1.3开始安装操作系统(centos 6.2 64bit):敲:回车键选择:Skip 敲:回车键点击:Next点击:Next点击:Next点击:Next选择:Yes ,discard any data点击:Configure Network (你也可以再安装之后去配置网络)点击:点击Edit ,点击:IPv4 Settings ,在Method 下拉框中选择Manual . 点击:Add 在框内输入网络地址:如图10.0…………… DSN :10………等。
点击:Apply点击:Close点击:Next点击选择时区下拉框:选择亚洲/上海点击:Next输入:root 密码后,点击:Next由于密码设置过于简单会弹出弱密码提示。
点击Use Anyway(无论如何我都是用):选择:Create custom Layout点击:Next这个步骤主要是磁盘分区问题。
我这里主要分一下几个分区:/ 20000 MB/tmp 3000 MBSwap 3000 MB/opt 剩下的所有空间(这个主要是数据库是用)截图如下:/ 20000 MB:点击:Create点击:Create选择:Mount Point 修改:Size(MB):20000点击:ok。
/ 分区就建立好了。
/tmp 3000 MB 分区和/ 分区建立方法一样(这个分区其实可以不创建,鉴于安装oracle习惯顺便建立了,呵呵):点击:OK . /tmp 建立完毕。
建立Swap 3000 MB分区: 点击:Create点击:Create选择:File System Type :swap 并修改大小:3000(内存的1-2倍)点击ok。
安装环境准备一台Centos 6.5 GNOME 2.28.2安装配置如下图:IP 角色端口Nodename 安装目录192.168.199.151 GTM 6666 gtm /pgxc_data/gtm192.168.199.151 Coordinator 1921 coord1 /pgxc_data/coordinator/cd1192.168.199.151 Coordinator 1925 coord2 /pgxc_data/coordinator/cd2192.168.199.151 Datanode 15431 db1 /pgxc_data/datanode/dn1192.168.199.151 Datanode 15432 db2 /pgxc_data/datanode/dn2有条件的可以把这个角色分别安装在不同主机上。
安装配置1)创建用户#groupadd pgxc#useradd pgxc -g pgxc#passwd pgxc2)安装#tar -xzvf pgxc-v1.0.4.tar.gz#cd postgres-xc-1.0.4#./configure –prefix=/usr/local/pgsql_xc#make#make install3)创建存放路径#mkdir -p /pgxc_data/gtm#mkdir -p /pgxc_data/coordinator/cd1#mkdir -p /pgxc_data/coordinator/cd2#mkdir -p /pgxc_data/datanode/dn1#mkdir -p /pgxc_data/datanode/dn2#chown -R pgxc:pgxc /pgxc_data4)配置环境变量#su – pgxc#vi .bash_profileexport PGHOME=/usr/local/pgsql_xcexport LANG=en_US.utf8export LD_LIBRARY_PATH=$PGHOME/lib:/lib64:/usr/lib64:/usr/local/lib64:/lib:/usr/lib:/usr/local/lib export PATH=$PGHOME/bin:$PATH:.export MANPATH=$PGHOME/share/man:$MANPATH#source .bash_profile5)初始化节点#initgtm -Z gtm -D /pgxc_data/gtm#initdb -D /pgxc_data/coordinator/cd1 –nodename coord1 #initdb -D /pgxc_data/coordinator/cd2 –nodename coord2 #initdb -D /pgxc_data/datanode/dn1 –nodename db1#initdb -D /pgxc_data/datanode/dn2 –nodename db26)配置节点配置gtm节点vi /pgxc_data/gtm/gtm.confnodename = ‘gtm’listen_addresses = ‘*’port = 6666startup = ACT配置 coordinator 节点vi /pgxc_data/coordinator/cd1/postgresql.conf #————————————listen_addresses = ‘*’port = 1921max_connections = 100# DATA NODES AND CONNECTION POOLING #———————————————-pooler_port = 6667#min_pool_size = 1max_pool_size = 100# GTM CONNECTION#—————————–gtm_host = ‘192.168.199.151’gtm_port = 6666pgxc_node_name = ‘coord1’vi /pgxc_data/coordinator/cd1/pg_hba.conf# IPv4 local connections:host all all 127.0.0.1/32 trusthost all all 192.168.199.151/32 trusthost all all 0.0.0.0/0 md5vi /pgxc_data/coordinator/cd2/postgresql.conf #————————————listen_addresses = ‘*’port = 1925max_connections = 100# DATA NODES AND CONNECTION POOLING #———————————————-pooler_port = 6668#min_pool_size = 1max_pool_size = 100# GTM CONNECTION#—————————–gtm_host = ‘192.168.199.151’gtm_port = 6666pgxc_node_name = ‘coord2’vi /pgxc_data/coordinator/cd2/pg_hba.conf# IPv4 local connections:host all all 127.0.0.1/32 trusthost all all 192.168.199.151/32 trusthost all all 0.0.0.0/0 md5配置 datanode 节点vi /pgxc_data/datanode/dn1/postgresql.conf #————————————listen_addresses = ‘*’port = 15431max_connections = 100# GTM CONNECTION#—————————–gtm_host = ‘192.168.199.151’gtm_port = 6666pgxc_node_name = ‘db1’vi /pgxc_data/datanode/dn1/pg_hba.conf# IPv4 local connections:host all all 127.0.0.1/32 trusthost all all 192.168.199.151/32 trusthost all all 0.0.0.0/0 md5vi /pgxc_data/datanode/dn2/postgresql.conf #————————————listen_addresses = ‘*’port = 15432max_connections = 100# GTM CONNECTION#—————————–gtm_host = ‘192.168.199.151’gtm_port = 6666pgxc_node_name = ‘db2’vi /pgxc_data/datanode/dn2/pg_hba.conf# IPv4 local connections:host all all 127.0.0.1/32 trusthost all all 192.168.199.151/32 trusthost all all 0.0.0.0/0 md57)启动节点启动顺序gtm + (gtmstandby) + (gtmproxy) + datanode + coordinator 启动gtm#gtm -D /pgxc_data/gtm &#ps -ef|grep gtm#gtm_ctl status -z gtm -D /pgxc_data/gtm启动数据节点#postgres -X -D /pgxc_data/datanode/dn1 &#postgres -X -D /pgxc_data/datanode/dn2 &#ps -ef|grep pgxc启动coordinator节点#postgres -C -D /pgxc_data/coordinator/cd1 &#postgres -C -D /pgxc_data/coordinator/cd2 &8)注册节点在coord1上注册:#psql -p 1921 postgresselect * from pgxc_node;create node coord2 with(TYPE=coordinator,HOST=’192.168.199.151′,PORT=1925); create node db1 with(TYPE=datanode,HOST=’192.168.199.151′,PORT=15431,primary); create node db2 with(TYPE=datanode,HOST=’192.168.199.151′,PORT=15432);alter node coord1 with(TYPE=’coordinator’,HOST=’192.168.199.151′,PORT=1921); select pgxc_pool_reload();在coord2上注册:#psql -p 1925 postgresselect * from pgxc_node;create node coord1 with(TYPE=coordinator,HOST=’192.168.199.151′,PORT=1921); create node db1 with(TYPE=datanode,HOST=’192.168.199.151′,PORT=15431,primary); create node db2 with(TYPE=datanode,HOST=’192.168.199.151′,PORT=15432);alter node coord2 with(TYPE=’coordinator’,HOST=’192.168.199.151′,PORT=1925); select pgxc_pool_reload();9)停止节点停止顺序coordinator+datanode+(gtmproxy)+(gtmstandby)+gtm#pg_ctl stop -D /pgxc_data/datanode/dn1 -Z datanode -m fast#pg_ctl stop -D /pgxc_data/datanode/dn2 -Z datanode -m fast#pg_ctl stop -D /pgxc_data/coordinator/cd1 -Z coordinator -m fast#pg_ctl stop -D /pgxc_data/coordinator/cd2 -Z coordinator -m fast#gtm_ctl stop -D /pgxc_data/gtm -Z gtm -m fast验证测试在coord1上创建一个数据库,并建立一个新表#psql -p 1921 postgrescreate database pgxc_test;\c pgxc_test;create table test_xc (id integer,name varchar(32));insert into test_xc select generate_series(1,100),'pgxc_test';在coord2上查询,看是否能够查询到在coord1上新建的数据库和表在db1上查看在db2上查看这说明我们在coordinator上是以distribute切片方式建的表,数据分别放在datanode上。