greenplum
参考文章:在linux系统上安装Greenplum数据库 https://blog.csdn.net/mingli_a/article/details/78779189
Greenplum安装步骤 https://blog.csdn.net/u013181216/article/details/72605362
Greenplum安装 https://www.cnblogs.com/renlipeng/p/5685432.html
1. 下载地址:https://network.pivotal.io/products/pivotal-gpdb#/releases/204067/file_groups/1160
greenplum 需要注意下载的版本所依赖的系统。
greenplum需要注册账号才可以下载,且用于非商业用途。
greenplum需要建立多个库,主从备 master ,segment ,standby。
1. Master:建立与客户端的连接和管理,执行计划向segment的分发收集执行结果。Master本身不负责数据存储,只存储数据字典。
2. Segment:业务数据的存取,用户SQL的执行。
3. Standby:当主库不能使用时,可替代变为主库。
linux 配置修改:
设置共享内存和最大网络连接数,因主副机之间会有数据交换。(master,segment都需要)
修改 /etc/sysctl.cof: # Controls IP packet forwarding net.ipv4.ip_forward = # Controls source route verification net.ipv4.conf.default.rp_filter = # Do not accept source routing net.ipv4.conf.default.accept_source_route = # Controls the System Request debuggingfunctionality of the kernel kernel.sysrq = # Controls whether core dumps will appendthe PID to the core filename. # Useful for debugging multi-threadedapplications. kernel.core_uses_pid = # Controls the use of TCP syncookies net.ipv4.tcp_syncookies = # Disable netfilter on bridges #net.bridge.bridge-nf-call-ip6tables = #net.bridge.bridge-nf-call-iptables = #net.bridge.bridge-nf-call-arptables = # Controls the default maxmimum size of amesage queue kernel.msgmnb = # Controls the maximum size of a message,in bytes kernel.msgmax = kernel.msgmni = kernel.sem = # Controls the maximum shared segment size,in bytes #kernel.shmmax = kernel.shmmax = --共享内存段最大值 kernel.shmmni = --共享内存段最大值 # Controls the maximum number of sharedmemory segments, in pages #kernel.shmall = kernel.shmall = --共享内存段最大值 net.ipv4.tcp_tw_recycle= net.ipv4.tcp_max_syn_backlog= net.ipv4.ip_local_port_range = net.core.netdev_max_backlog= vm.overcommit_memory= net.ipv4.conf.all.arp_filter = net.core.rmem_max = net.core.wmem_max =
同时修改最大连接数:
vi /etc/security/limits.conf(master,segment都需要)
#greenplum configs
* soft nofile
* hard nofile
* soft nproc
* hard nproc
如果存在/etc/security/limits.d/90-nproc.conf (master,segment都需要)
则添加以下代码,不然以上limits.conf会被覆盖
* soft nproc
I/O优化 (master,segment都需要)
vi /boot/grub/menu.lst 不做修改也没关系
#greenplum configs
elevator=deadline
修改扇区读写能力 (master,segment都需要)
vi /etc/rc.d/rc.local
blockdev --setra /dev/sda
修改主机host添加host地址: (master,segment都需要)
/etc/hosts
192.168.68.128 pgm pgm 192.168.68.129 pgs1 pgs1 192.168.68.130 pgs2 pgs2
#ip 主机名 hostlist列表名
修改host地址: (master,segment都需要)
vi /etc/sysconfig/network,要和主机名一致
NETWORKING=yes HOSTNAME=[pgm]
我们可以此时用主机名测试:
》ping pgm
设置selinux为false
vim /etc/selinux/config
SELINUX=disabled
创建用户:
useradd gpadmin
passwd gpadmin
或
groupadd -g 530 gpadmin
useradd -g 530 -u530 -m -d /home/gpadmin -s /bin/bash gpadmin
创建greenplum文件夹及设置访问权限。
mkdir /opt/greenplum
chown -R gpadmin:gpadmin /opt/greenplum
这时候开始安装。
安装greenplum:
下载地址:https://network.pivotal.io/products/pivotal-gpdb#/releases/204067/file_groups/1160
可通过securecrt的sftp命令实现下载包rpm上传(参见操作命令 securecrt)。
rpm -ivh greenplum-db-5.11.-rhel7-x86_64.rpm
安装后,文件会自动生成在 usr/local/文件夹下。
在此文件夹下的gp给gpadmin赋予权限。
chown -R gpadmin:gpadmin greenplum-db
此时主master上的db就算安装完毕。
接下来就是master的安装包节点分发操作:
创建配置文件:
[root@mdw ~]# su gpadmin
[gpadmin@mdw root]$ cd
[gpadmin@mdw ~]$ mkdir ./conf
[gpadmin@mdw ~]$ vi ./conf/hostlist
gpm
gps1
[gpadmin@mdw ~]$ vi ./conf/seg_hosts
gps1
安装节点转发到分节点:
[gpadmin@ ~]$ source /usr/local/greenplum-db/greenplum_path.sh
[gpadmin@ ~]$ gpssh-exkeys -f /home/gpadmin/conf/hostlist //打通节点
如果在step1就出错,则需要安装yum install openssh*。
安装过程在Step3时出现以下错误:
[ERROR gpm] [Errno None] Unable to connect to port on 220.250.64.225
[ERROR gpm] skipping key exchange for gpm
[ERROR gpm] unable to authorize current user
这是因为在通过ssh访问22端口,可通过免密方式。要不然就是配置的host名不正确,仔细检查下。
手动设置方式:
gpssh -f /opt/greenplum/greenplum-db/conf/hostlist
step3时输入的密码要为root账号对应的密码要不然有可能权限问题而无法发送。
此时节点链接就算成功了。
下来就是压缩发送安装包:
》tar -cf /home/gpadmin/gp.4.3.tar /usr/local/greenplum-db-4.3.8.1/
》gpscp -f /home/gpadmin/conf/seg_hosts /home/gpadmin/gp5.11.tar =:/opt/greenplum
注意=:表示目标文件夹
Error:scp: /opt/greenplum/gp5.11.tar: Permission denied
说明目标文件夹的写权限没有,请检查节点机gpadmin是否有对文件的操作权限(writer)。
看gpadmin用户是否可以删除 greenplum确定权限是否充足。
此时,在分节点上查看是否已经导入成功。
通过主服务的ssh进行分节点的安装。
》gpssh -f hostlist
=》cd /opt/greenplum
=>tar -xvf gp5.11.tar
=>ln -s ./greenplum-db-5.11.3 greenplum-db //建立软连接
=>ll //查看
到此,节点安装就算完毕。
greenplum的更多相关文章
- Greenplum 的分布式框架结构
Greenplum 的分布式框架结构 1.基本架构 Greenplum(以下简称 GPDB)是一款典型的 Shared-Nothing 分布式数据库系统.GPDB 拥有一个中控节点( Master ) ...
- 海量数据处理利器greenplum——初识
简介及适用场景 如果想在数据仓库中快速查询结果,可以使用greenplum. Greenplum数据库也简称GPDB.它拥有丰富的特性: 第一,完善的标准支持:GPDB完全支持ANSI SQL 200 ...
- GreenPlum高效去除表重复数据
1.针对PostgreSQL数据库表的去重复方法基本有三种,这是在网上查找的方法,在附录1给出.但是这些方法对GreenPlum来说都不管用. 2.数据表分布在不同的节点上,每个节点的ctid是唯一的 ...
- 实现从Oracle增量同步数据到GreenPlum
简介: GreenPlum是一个基于PostgreSQL数据库开发的MPP架构的数据库仓库,适用于OLAP系统,支持50PB(1PB=1000TB)级海量数据的存储和处理. 背景: 目前有一个业务是需 ...
- Greenplum 源码安装教程 —— 以 CentOS 平台为例
Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...
- 大数据系列-java用官方JDBC连接greenplum数据库
这个其实非常简单,之所以要写此文是因为当前网上搜索到的文章都是使用PostgreSQL的驱动,没有找到使用greenplum官方驱动的案例,两者有什么区别呢? 一开始我也使用的是PostgreSQL的 ...
- Greenplum安装
最近需要安装Greenplum测试一些东西,在安装过程中出现了许多问题,所以在这里将安装过程整理一下,主要参考<Greenplum企业应用实践>和http://jxzhfei.blog.5 ...
- Greenplum查询计划分析
这里对查询计划的学习主要是对TPC-H中Query2的分析. 1.Query的查询语句 select s_acctbal, s_name, n_name, p_partkey, p_mfgr, s_a ...
- Greenplum 数据库安装部署(生产环境)
Greenplum 数据库安装部署(生产环境) 硬件配置: 16 台 IBM X3650, 节点配置:CPU 2 * 8core,内存 128GB,硬盘 16 * 900GB,万兆网卡. 万兆交换机. ...
- Greenplum测试环境部署
1.准备3台主机 本实例是部署实验环境,采用的是Citrix的虚拟化环境,分配了3台RHEL6.4的主机. |------|------| |Master|创建模板后,额外添加20G一块磁盘/dev/ ...
随机推荐
- 用ADB打开MUMU模拟器的WLAN用于设置代理IP
adb connect 127.0.0.1:7555 adb shell am start -a android.intent.action.MAIN -n com.android.settings/ ...
- Mybatis 系列8-结合源码解析select、resultMap的用法
[Mybatis 系列10-结合源码解析mybatis 执行流程] [Mybatis 系列9-强大的动态sql 语句] [Mybatis 系列8-结合源码解析select.resultMap的用法] ...
- [SQL]SQL中EXISTS的用法
比如在Northwind数据库中有一个查询为SELECT c.CustomerId,CompanyName FROM Customers cWHERE EXISTS(SELECT OrderID FR ...
- 程序集生成失败 -- 引用的程序集“ThoughtWorks.QRCode”没有强名称,为没有源码的程序集强签名
如果你写的程序程序集是带签名的,应用了没有签名的程序集,编译就会报下面的错误 引用的程序集“**”没有强名称 进入sdk提示符界面,依次输入如下指令 sn -k ThoughtWorks.QRCode ...
- javascript-保留2位小数函数方法
function zero(num){ var str=num.toString(); if(str.indexOf(".")==-1){ return num+'.00'; }e ...
- Don't afraid point
int p; int *p; int p[3]; int *p[3];分析方式:首先从P开始分析,先与[]结合因为其优先级比*高,所以p是一个数组,然后再与*结合,说明数组里的元素是指针类型,然后再与 ...
- OpenGL模版小案例分析
下面的案例通过模版实现三角形截取的功能,代码如下: void draw(){ GLuint programObject; GLfloat vVerticessmall[] = { 0.0f, 0.25 ...
- Django实现瀑布流,组合搜索
Django中组合搜索功能 需求分析 很多电商网站中有组合搜索的功能,所谓组合搜索就是网页中组合多个条件,对数据库中进行查询,并且将结果显示在页面中,看个例子吧: 注意红框中的标识,我们可以根据URL ...
- requests模块报错:Use body.encode('utf-8') if you want to send it encoded in UTF-8.
在做 企业向微信用户个人付款 功能时,调用第三方sdk,在 进行 requests 的post请求时, 代码如下 req = requests.post(url, data=data,cert(ap ...
- 【Selenium-WebDriver自学】Selenium测试设计技术(十三)
Selenium页面对象模型 1.Selenium页面对象模型 优点 页面的对象模型是其中测试对象和功能被彼此分开,从而保持代码干净的实现. 对象保持独立的测试脚本.一个目的可以通过一个或多个测试脚本 ...