Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Greenplum6.8.1安装

Greenplum6.8.1安装

原创
作者头像
运维牛马
发布于 2025-02-24 09:21:59
发布于 2025-02-24 09:21:59
1270
举报

前言: 单位有套年代久远的Greenplum集群,接手后一直没怎么处理(也不知道怎么处理)。最近业务系统频繁出现访问卡顿,于是便想着搭建一套环境用于测试

Greenplum简介

Greenplum是一款基于分布式架构的开源数据库;采用无共享(no shareing)的MPP架构(每个数据节点拥有独立的CPU、IO和内存等资源);其具有良好的线性扩展能力,具有高效的并行运算、并行存储特性。拥有独特的高效的ORCA优化器。非常适合用于PB数据量级的存储、处理和实时分析能力。Greenplum是基于PostgreSQL数据库发展而来,本质上是多个PostgreSQL面向磁盘的数据库实例一起工作形成的一个紧密结合的数据库管理系统(DBMS),同时支持涵盖OLTP型业务混合负载,数据节点和主节点均可设计备份节点,进而提供数据库的高可用性。

Greenplum架构

Greenplum由Master节点<协调节点>和Segment节点<数据节点>以及高速网络层三部分组成

  • Master Host: 又称协调节点,是整个Greenplum数据库系统的入口。负责接受来自客户端连接请求,对SQL语句生成查询计划,并将查询计划分发至涉及的Segment实例上,收集Segment实例返回的结果并呈现给客户端。同时Master记录集群中的元数据信息,包括各种全局系统系统表,但Master上不存储任何用户数据,数据只存在于Segment之上。
  • Standby: Master的备库,在Master 发生故障不可提供服务时可promote Standby继续提供服务,保证集群的高可用,正常情况下Standby上进行只读操作,且时时同步Master的元数据。
  • Primary segment:数据节点,其功能是存放并管理数据库中的数据,接收Master分发下来的执行计划,执行返回结果给Master节点。
  • Mirror segment: Primary segment节点的备库以保障高可用性;通常跟对应的Primary segment节点不在同一台机器上。在segment节点出现故障,mirror segment自动接管进行工作。但是为了数据库平稳;尽快恢复出现故障的segment。
  • Interconnet: Interconect是Greenplum数据库架构中的网络层,是Segment之间的进程间通信以及这种通信所依赖的网络基础设施。 Greenplum的Interconnect使用带流控制的用户数据包协议(UDPIFC)在网络上发送消息,可靠性和可扩展性超于TCP。之所以采用UDP,是因为Interconnect改为TCP,当Segment实例超过1000个时其可扩展性会受到限制,而对于Interconnect的默认协议UDPIFC则不存在这种限制。

Greenplum集群部署

本次采用的是4台机器组成的集群,操作系统版本为Centos7.9

服务器IP地址

节点名称

192.168.124.175

minio1

192.168.124.176

minio2

192.168.124.177

minio3

192.168.124.178

minio4

其中175为master节点,176为standby节点,175-178共4台为segment节点

环境准备

关闭防火墙

代码语言:shell
AI代码解释
复制
systemctl stop firewalld

systemctl disable firewalld

关闭selinux

代码语言:shell
AI代码解释
复制
sed -ri '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config

setenforce 0    (临时关闭)

配置hosts解析文件

代码语言:shell
AI代码解释
复制
192.168.124.175 minio1

192.168.124.176 minio2

192.168.124.177 minio3

192.168.124.178 minio4

安装依赖包

直接生成需要安装的依赖包命令

代码语言:shell
AI代码解释
复制
rpm -q apr apr-util bash bzip2 curl krb5 libcurl libevent libxml2 libyaml zlib openldap openssh-client openssl openssl-libs perl readline rsync R sed tar zip krb5-devel | grep "is not installed" | awk '{print $2}' | xargs echo yum install -y

sysctl参数配置

共享内存

kernel.shmall = ( _PHYS_PAGES / 2)

kernel.shmmax = ( _PHYS_PAGES / 2) * PAGE_SIZE

通过以下命令计算

代码语言:shell
AI代码解释
复制
echo $(expr $(getconf \_PHYS\_PAGES) / 2) 

echo $(expr $(getconf \_PHYS\_PAGES) / 2 \\* $(getconf PAGE\_SIZE))

segment主机内存

代码语言:shell
AI代码解释
复制
vm.overcommit\_memory 系统使用该参数来确定可以为进程分配多少内存。对于GP数据库,此参数应设置为2。  

vm.overcommit\_ratio 以为进程分配内的百分比,其余部分留给操作系统。默认值为50。建议设置95(根据主机内存大小自行设置)

系统内存

对于内存超过 64GB 的主机系统,建议采用以下设置:

代码语言:shell
AI代码解释
复制
vm.dirty\_background\_ratio = 0

vm.dirty\_ratio = 0

vm.dirty\_background\_bytes = 1610612736 # 1.5GB

vm.dirty\_bytes = 4294967296 # 4GB

对于内存为 64GB 或更少的主机系统,删除vm.dirty\_background\_bytesvm.dirty\_bytes,并将两个ratio参数设置为以下值:

代码语言:shell
AI代码解释
复制
vm.dirty\_background\_ratio = 3

vm.dirty\_ratio = 10

增加vm.min_free_kbytes以确保PF_MEMALLOC轻松满足来自网络和存储驱动程序的请求。这对于具有大量系统内存的系统尤其重要。这些系统的默认值通常太低

代码语言:shell
AI代码解释
复制
awk 'BEGIN {OFMT = "%.0f";} /MemTotal/ {print "vm.min\_free\_kbytes =", $2 \* .03;}' /proc/meminfo >> /etc/sysctl.conf 

IP Fragmentation设置

代码语言:shell
AI代码解释
复制
net.ipv4.ipfrag\_high\_thresh = 41943040

net.ipv4.ipfrag\_low\_thresh = 31457280

net.ipv4.ipfrag\_time = 60

systectl.conf完整参数配置

代码语言:shell
AI代码解释
复制
#共享内存设置

kernel.shmall = 485033

kernel.shmmax = 1986695168 # 这里的俩个参数为该节点第一步分别计算出的数据

kernel.shmmni = 4096



# See Segment Host Memory           

vm.overcommit\_memory = 2

vm.overcommit\_ratio = 90



# 系统内存

vm.dirty\_background\_ratio = 3

vm.dirty\_ratio = 10

vm.dirty\_expire\_centisecs = 500

vm.dirty\_writeback\_centisecs = 100

vm.zone\_reclaim\_mode = 0

vm.min\_free\_kbytes = 116408



# See Port Settings 端口设定

net.ipv4.ip\_local\_port\_range = 10000 65535



kernel.sem = 500 2048000 200 4096

kernel.sysrq = 1

kernel.core\_uses\_pid = 1

kernel.msgmnb = 65536

kernel.msgmax = 65536

kernel.msgmni = 2048



net.ipv4.tcp\_syncookies = 1

net.ipv4.conf.default.accept\_source\_route = 0

net.ipv4.tcp\_max\_syn\_backlog = 4096

net.ipv4.conf.all.arp\_filter = 1

net.core.netdev\_max\_backlog = 10000

net.core.rmem\_max = 2097152

net.core.wmem\_max = 2097152

vm.swappiness = 10

sysctl -p使配置生效

资源限制

在文件中设置以下参数/etc/security/limits.conf:

代码语言:shell
AI代码解释
复制
\* soft nofile 524288

\* hard nofile 524288

\* soft nproc 131072

\* hard nproc 131072

在rhel系的系统中,/etc/security/limits.d/目录下的配置文件,会覆盖/etc/security/limits.conf文件中的配置。设置完可重新登陆系统,使用ulimit -a查看配置是否生效

内核转储

/etc/sysctl.conf添加以下内容并加载内核 sysctl -p

代码语言:shell
AI代码解释
复制
kernel.core\_pattern=/var/core/core.%h.%t

/etc/security/limits.conf添加以下内容:

代码语言:shell
AI代码解释
复制
\* soft  core unlimited

磁盘I/O设置

I/O预读

代码语言:shell
AI代码解释
复制
#获取预读值

/sbin/blockdev --getra <devname>

#设置预读值

/sbin/blockdev --setra 16384 /dev/sda



# 永久设置

vim /etc/rc.d/rc.local

/sbin/blockdev --setra 16384 /dev/sda



chmod +x /etc/rc.d/rc.local

I/O调度

代码语言:shell
AI代码解释
复制
grubby --update-kernel=ALL --args="elevator=deadline"

列出所有内核参数: grubby --info=ALL

THP

  • 方法1
代码语言:shell
AI代码解释
复制
vim /etc/rc.local         //添加如下内容

if test -f /sys/kernel/mm/transparent\_hugepage/enabled; then

 echo never > /sys/kernel/mm/transparent\_hugepage/enabled

fi

if test -f /sys/kernel/mm/transparent\_hugepage/defrag; then

 echo never > /sys/kernel/mm/transparent\_hugepage/defrag

fi
  • 方法2
代码语言:shell
AI代码解释
复制
# 在GRUB\_CMDLINE\_LINUX加入选项 transparent\_hugepage=never

vim etc/default/grub      

GRUB\_TIMEOUT=5

GRUB\_DISTRIBUTOR="$(sed 's, release .\*$,,g' /etc/system-release)"

GRUB\_DEFAULT=saved

GRUB\_DISABLE\_SUBMENU=true

GRUB\_TERMINAL\_OUTPUT="console"

GRUB\_CMDLINE\_LINUX="rd.lvm.lv=fedora/swap rd.lvm.lv=fedora/root rhgb quiet transparent\_hugepage=never"

GRUB\_DISABLE\_RECOVERY="true"

# 根据启动方式,重新生成grub配置文件

grub2-mkconfig -o /boot/grub2/grub.cfg      //bios

grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg       //uefi

#重启

reboot

# 确认结果,显示为never

cat /sys/kernel/mm/transparent\_hugepage/enabled

cat /sys/kernel/mm/transparent\_hugepage/defrag

SSH连接阈值

调大ssh连接数

代码语言:shell
AI代码解释
复制
vim /etc/ssh/sshd\_config

MaxSessions 200

MaxStartups 100:30:1000

重启ssh:systemctl restart sshd

IPS设置

代码语言:shell
AI代码解释
复制
vim /etc/systemd/logind.conf

RemoveIPC=no



systemctl restart systemd-logind.service

service systemd-logind restart

修改字符集

代码语言:shell
AI代码解释
复制
echo $LANG

# 如果不是en\_US.UTF-8的,执行下面语句

localectl set-locale LANG=en\_US.UTF-8

安装Greenplum

除特殊指出的步骤,以下操作都在master节点上进行

创建用户

在每个节点上创建gpadmin用户,确保gpadmin用户在每个主机上具有相同的用户 ID (uid) 和组 ID (gid) 编号

代码语言:shell
AI代码解释
复制
groupadd -g 1530 gpadmin

useradd -u 1530 gpadmin -r -m -g gpadmin

passwd gpadmin

生成密钥

代码语言:shell
AI代码解释
复制
su - gpadmin

ssh-keygen -t rsa 

授权sudo权限

给gpadmin设置用户具有root权限,方便后期加sudo执行root权限的命令

代码语言:shell
AI代码解释
复制
visudo

gpadmin         ALL=(ALL)       NOPASSWD: ALL

安装软件

在所有节点安装数据软件,并更改数据库目录为gpadmin用户

代码语言:shell
AI代码解释
复制
sudo yum install ./greenplum-db-<version>-<platform>.rpm

sudo chown -R gpadmin:gpadmin /usr/local/greenplum\*

sudo chgrp -R gpadmin /usr/local/greenplum\*

ssh免密

gpadmin用户登陆mastter主机

代码语言:shell
AI代码解释
复制
source /usr/local/greenplum-db-<version>/greenplum\_path.sh



ssh-copy-id minio1

ssh-copy-id minio2

ssh-copy-id minio3

ssh-copy-id minio4

创建主机列表文件

代码语言:shell
AI代码解释
复制
vim hostfile\_exkeys

minio1

minio2

minio3

minio4

互免密登陆

代码语言:shell
AI代码解释
复制
gpssh-exkeys -f hostfile\_exkeys

确认安装环境

gpadmin用户登陆master节点,运行下面命令,能正常显示各节点的gp目录和权限

代码语言:shell
AI代码解释
复制
gpssh -f hostfile\_exkeys -e 'ls -l /usr/local/greenplum-db-<version>'

配置环境变量

代码语言:shell
AI代码解释
复制
vim /home/gpadmin/.bashrc

source /usr/local/greenplum-db/greenplum\_path.sh

export PGPORT=5432

export MASTER\_DATA\_DIRECTORY=/gpdata/master/gpseg-1

export PGDATABASE=zndb



source /home/gpadmin/.bashrc

创建数据目录

master

代码语言:shell
AI代码解释
复制
mkdir -p /gpdata/master

chown gpadmin:gpadmin /gpdata/master

standby master

代码语言:shell
AI代码解释
复制
source /usr/local/greenplum-db/greenplum\_path.sh 

mkdir -p /gpdata/master

chown gpadmin:gpadmin /gpdata/master

segment节点

代码语言:shell
AI代码解释
复制
source /usr/local/greenplum-db/greenplum\_path.sh 

mkdir -p /gpdata/primary

mkdir -p /gpdata/mirror

chown -R gpadmin:gpadmin /gpdata/\*

初始化数据

以gpadmin用户登陆master,并设置环境变量

代码语言:shell
AI代码解释
复制
su - gpadmin

source /usr/local/greenplum-db/greenplum\_path.sh

创建初始化主机文件

代码语言:shell
AI代码解释
复制
vim hostfile\_gpinitsystem

minio1

minio2

minio3

minio4

创建初始化配置文件

复制示例文件

代码语言:shell
AI代码解释
复制
cp $GPHOME/docs/cli\_help/gpconfigs/gpinitsystem\_config  /home/gpadmin/gpconfigs/gpinitsystem\_config

编辑配置文件

代码语言:shell
AI代码解释
复制
vim gpinitsystem\_config



# FILE NAME: gpinitsystem\_config

# Configuration file needed by the gpinitsystem

################################################

#### REQUIRED PARAMETERS

################################################



#### Name of this Greenplum system enclosed in quotes.

ARRAY\_NAME="Greenplum Data Platform"



#### Naming convention for utility-generated data directories.

SEG\_PREFIX=gpseg



#### Base number by which primary segment port numbers

#### are calculated.

PORT\_BASE=16000



#### File system location(s) where primary segment data directories

#### will be created. The number of locations in the list dictate

#### the number of primary segments that will get created per

#### physical host (if multiple addresses for a host are listed in

#### the hostfile, the number of segments will be spread evenly across

#### the specified interface addresses).

declare -a DATA\_DIRECTORY=(/gpdata/primary /gpdata/primary)



#### OS-configured hostname or IP address of the master host.

MASTER\_HOSTNAME=minio1



#### File system location where the master data directory

#### will be created.

MASTER\_DIRECTORY=/gpdata/master



#### Port number for the master instance.

MASTER\_PORT=5432



#### Shell utility used to connect to remote hosts.

TRUSTED\_SHELL=ssh



#### Maximum log file segments between automatic WAL checkpoints.

CHECK\_POINT\_SEGMENTS=8



#### Default server-side character set encoding.

ENCODING=UNICODE



################################################

#### OPTIONAL MIRROR PARAMETERS

################################################



#### Base number by which mirror segment port numbers

#### are calculated.

MIRROR\_PORT\_BASE=17000



#### File system location(s) where mirror segment data directories

#### will be created. The number of mirror locations must equal the

#### number of primary locations as specified in the

#### DATA\_DIRECTORY parameter.

declare -a MIRROR\_DATA\_DIRECTORY=(/gpdata/mirror /gpdata/mirror)



################################################

#### OTHER OPTIONAL PARAMETERS

################################################



#### Create a database of this name after initialization.

DATABASE\_NAME=zndb



#### Specify the location of the host address file here instead of

#### with the -h option of gpinitsystem.

#MACHINE\_LIST\_FILE=/home/gpadmin/gpconfigs/hostfile\_gpinitsystem

初始化

代码语言:shell
AI代码解释
复制
gpinitsystem -c gpinitsystem\_config -h hostfile\_gpinitsystem -s minio2 --mirror-mode=spread

如果初始化发生错误,建议查看日志,路径:~/gpAdminLogs/gpinitsystem\_202XXXX.log

如果存在需要清理后再重新安装的,请检查是否存在回退脚本~/gpAdminLogs/backout\_gpinitsystem\_<user>\_<timestamp>,执行后再重新运行初始化脚本;不存在该脚本,可以删除创建的数据目录后重新初始化

设置时区

代码语言:shell
AI代码解释
复制
gpconfig -s TimeZone

gpconfig -c TimeZone -v 'Asia/Shanghai'

允许客户端连接

修改master节点pg_hba.conf文件,添加允许远程登陆权限

代码语言:shell
AI代码解释
复制
vim /gpdata/master/gpseg-1/pg\_hba.conf

...



host all    all  192.168.124.0/24 md5





# 重新加载配置文件

gpstop -u 

至此,Greenplum的安装已经完成。以上过程有不足之处,请参考官方文档

验证集群

登陆数据库并查看复制状态

操作系统成查看集群状态

远程登陆数据库

修改密码

代码语言:shell
AI代码解释
复制
psql -d postgres



alter user gpadmin with password 'gpadmin';

dbeaver登陆数据库

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
RH7.9安装部署GreenPlum 6
1、系统版本:redhat7.9 2、硬件:3台虚拟机,2核,16G内存,50G硬盘 3、实验节点规划一个master, 4个segment,4个mirror,无standby
Lucifer三思而后行
2021/08/17
7980
Greenplum 实时数据仓库实践(4)——Greenplum安装部署
Greenplum是一个MPP分布式数据库软件,本质上是并行利用硬件使其充分发挥能力以达到最佳性能。Greenplum可以运行在多种环境中,如物理机、虚拟机、云服务器等等,但无论哪种环境,要保证高可用、高性能和稳定性,必须以选择适当的硬件、操作系统、文件系统为基础。对底层系统和数据库的合理配置,也是获得一个强力Greenplum集群的重要前提条件。本篇详细论述Greenplum 6安装部署所涉及的各方面问题。
用户1148526
2021/12/07
2.5K0
Greenplum集群部署小结
Greenplum属于一种看起来“较重”的数据库MPP架构,不像基于MySQL基于中间件的架构那么轻量,但是要说一些具体的场景,比如Greenplum支持存储过程,支持列式存储,加上分区表和内置的数据分片等多种模式,都是典型的OLAP场景,术业有专攻还是有一定道理的。
jeanron100
2021/07/15
1.5K0
centos7系统greenplum5.7集群详细安装配置文档-亲试通过
OS:Red Hat Centos  Linux Server release 7.3
zhangdd
2020/01/02
9050
Greenplum 6 安装配置详解
114.112.77.199 master、segment 210.73.209.103 standby master、segment 140.210.73.67 segment
用户1148526
2021/12/07
2.3K0
Greenplum集群部署小记
Greenplum的分布式架构方案MPP对于海量数据处理还是很给力的,今天专门抽时间搭建了一下测试环境。
jeanron100
2018/07/26
1.8K0
Greenplum集群部署小记
GreenPlum 6.23.0 安装部署高配版(启用standby master和segment mirror)
可以从 Greenplum 的 GitHub 页面(https://github.com/greenplum-db/gpdb/releases)下载RPM 包,或注册并登录到 Pivotal 公司官网(https://network.pivotal.io/products/vmware-tanzu-greenplum)进行下载。
AiDBA宝典
2023/04/27
2.6K0
GreenPlum 6.23.0 安装部署高配版(启用standby master和segment mirror)
在CentOS 8.4中安装GreenPlum 6
https://network.pivotal.io/products/vmware-tanzu-greenplum#/releases/1163282/file_groups/9837
AiDBA宝典
2023/11/22
1.3K0
在CentOS 8.4中安装GreenPlum 6
Greenplum 5.21.1 集群安装部署详述
简单来说GPDB是一个分布式数据库软件,其可以管理和处理分布在多个不同主机上的海量数据。对于GPDB来说,一个DB实例实际上是由多个独立的PostgreSQL实例组成的,它们分布在不同的物理主机上,协同工作,呈现给用户的是一个DB的效果。Master是GPDB系统的访问入口,其负责处理客户端的连接及SQL 命令、协调系统中的其他Instance(Segment)工作,Segment负责管理和处理用户数据。
星哥玩云
2022/08/18
1.2K0
Greenplum 5.21.1 集群安装部署详述
Greenplum测试环境部署
本实例是部署实验环境,采用的是Citrix的虚拟化环境,分配了3台RHEL6.4的主机。
Alfred Zhao
2019/05/24
1.8K0
Greenplum6使用ansible简化安装
ansible-playbook gp_src_install.yml -e package_path=pathto/6.0.0.tar.gz
mingjie
2022/05/12
3880
Snova基础篇(二):原生环境greenplum集群编译安装
本节主要从snova原生环境-greenplum编译安装入手,熟悉原生环境操作及使用。
snova-最佳实践
2019/12/20
9190
Snova基础篇(二):原生环境greenplum集群编译安装
GreenPlum4+版本安装部署
编辑网卡信息 vi /etc/sysconfig/network-scripts/ifcfg-eno1677984
永远的SSS
2020/07/04
8290
GreenPlum4+版本安装部署
OushuDB 如何安装与升级
如果您用的是Oushu Lava公有云,或者私有云2.0+,您可以通过Lava UI自动部署OushuDB,详情请见: http://oushu.io/docs/ch/lava-...。
用户7454708
2023/05/08
3540
OushuDB 如何安装与升级
CentOS 7 安装 Greenplum6 (附 dotNET Core 示例)
Mysql 在面对大数据量的时候,还是表现有些吃力,所以产品中需要扩展能支持海量数据的数据库,这里选择的数据库为 Greenplum6 ,Greenplum 底层使用的是开源数据库 PostgreSQL 。本文会介绍怎样在 CentOS 7 中安装 Greenplum6,并使用 dotNET Core 程序进行连接访问。
oec2003
2021/04/19
1.5K1
CentOS 7 安装 Greenplum6 (附 dotNET Core 示例)
GreenPlum 6.19.3 安装部署基础版
Greenplum是一个面向数据仓库应用的关系型数据库,因为有良好的体系结构,所以在数据存储、高并发、高可用、线性扩展、反应速度、易用性和性价比等方面有非常明显的优势。Greenplum是一种基于PostgreSQL的分布式数据库,其采用sharednothing架构,主机、操作系统、内存、存储都是自我控制的,不存在共享。 本质上讲Greenplum是一个关系型数据库集群,它实际上是由数个独立的数据库服务组合成的逻辑数据库。与RAC不同,这种数据库集群采取的是MPP(Massively Parallel Processing)架构。跟MySQL、Oracle 等关系型数据不同,Greenplum可以理解为分布式关系型数据库。 关于Greenplum的更多信息请访问https://greenplum.org/
AiDBA宝典
2023/04/27
1.8K0
GreenPlum 6.19.3 安装部署基础版
Greenplum 5.16.0初探
个人觉得GP目前比较尴尬。性能比Presto稍差点,唯品会已经把GP改用Presto替换看了。另外数仓/数据集市方面还有性能强悍的HAWQ ,支持更大数据规模Hadoop。
保持热爱奔赴山海
2019/09/18
1.3K1
Greenplum 5.16.0初探
Greenplum快速上手
1、Greenplum公司成立于2003年,产品基于开源的PostgreSQL数据库开发,2006年推出了首款产品。
小徐
2020/08/26
1.5K0
Greenplum快速上手
故障分析 | Greenplum Segment 故障处理
我们知道Greenplum集群由Master Severs和Segment Severs组成。其中故障存在三种类别:Master故障、Segment故障、数据异常。之前我们已经聊过“Master故障”和“数据异常”的处理方式,今天将介绍Segment故障的处理方式。
爱可生开源社区
2023/02/02
2.2K0
snova运维篇(四):GP集群扩容
扩容开始后,降低大规模操作的进程,重新分布表,移除扩展方案,运行健康检查,查看统计信息。
snova-最佳实践
2019/12/26
1.7K0
snova运维篇(四):GP集群扩容
相关推荐
RH7.9安装部署GreenPlum 6
更多 >
LV.0
这个人很懒,什么都没有留下~
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档