绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
greenplum数据库单机部署
2023-03-28 10:43:09

系统环境:rhel-server-6.5-x86_64-dvd.iso
安装包:greenplum-db-4.3.14.0-rhel5-x86_64.zip


1.查询liunx虚拟机的ip地址
执行命令ifconfig -a



查询出虚拟机ip地位为:192.168.191.131

2.配置hosts解析

我所谓的单机模式是指将Master和segment安装在一台机器上,尝试了网上的各种配置发现并不成功,尤其是将mdw和sdw都解析成127.0.0.1的设置根本行不通。你可以尝试设置Master为127.0.0.1,而segment为正式的ip地址,或者按我这么做:

执行命令:vim /etc/hosts

后面添加以下内容:

192.168.191.131 mdw sdw

注:192.168.191.131是虚拟机的ip地址



修改主机名:

永-久生效:vi /etc/sysconfig/network



设置好了记得重新liunx;主机名就变成mdw。


3.关闭防火墙:

$ /sbin/chkconfig iptables off

$ /sbin/chkconfig --list iptables

如下输出,就ok了:

iptables 0:off 1:off 2:off 3:off 4:off 5:off 6:off


4.设置/etc/selinux/config

Vim /etc/selinux/config

设置SELINUX=disabled


5.设置/etc/sysctl.conf

在/etc/sysctl.conf文件中加入有关共享内存与网络参数配置

vim /etc/sysctl.conf

加入以下内容

net.ipv4.ip_forward = 0

net.ipv4.conf.default.rp_filter = 1

net.ipv4.conf.default.accept_source_route = 0

kernel.sysrq = 0

kernel.core_uses_pid = 1

net.ipv4.tcp_syncookies = 1

net.bridge.bridge-nf-call-ip6tables = 0

net.bridge.bridge-nf-call-iptables = 0

net.bridge.bridge-nf-call-arptables = 0

kernel.msgmnb = 65536

kernel.msgmax = 65536

kernel.shmmax = 68719476736

kernel.shmall = 4294967296

net.ipv4.tcp_tw_recycle=1

net.ipv4.tcp_max_syn_backlog=4096

net.core.netdev_max_backlog=10000

vm.overcommit_memory=2

net.ipv4.conf.all.arp_filter = 1


红色标注是我文件没有的

6.设置/etc/security/limits.conf

在/etc/security/limits.conf中加入限制参数

vim /etc/security/limits.conf

* soft nofile 65536

* hard nofile 65536

* soft nproc 131072

* hard nproc 131072


手动执行命令让参数生效,当然,你也可以重启系统

执行命令:sysctl -p


7.上传greenplum-db-4.3.14.0-rhel5-x86_64.zip

上传greenplum-db-4.3.14.0-rhel5-x86_64.zip文件到/usr/local目录下


执行命令:unzip greenplum-db-4.3.14.0-rhel5-x86_64.zip


8.创建gpadmin组合用户

[root@mdw ~]# groupadd gpadmin

[root@mdw ~]# useradd -g gpadmin gpadmin

[root@mdw ~]# passwd gpadmin


New password: <gpadmin_password>

Retype new password: <gpadmin_password>

可以先设置一个简单的,以后再改,比如gpadmin

9.安装greenlium

[root@mdw local]# chmod u+x ./greenplum-db-4.3.14.0-rhel5-x86_64.bin

[root@mdw local]# ./greenplum-db-4.3.14.0-rhel5-x86_64.bin









将greenplum-db-4.3.14.0目录重命名为greenplum-db(不重名也可以)


打开greenplum_path.sh

将GPHOME=/usr/local/greenplum-db-4.3.14.0 修改成GPHOME=/usr/local/greenplum-db;跟greenplum-db目录名称一致


修改成:


切换到gpadmin账户下,在home目录下建立master和segment的数据存放目录。你也可以自行设定数据存放目录,如果你不是以gpadmin建立的目录,还需要修改目录的用户和用户组,好是建在home目录下

su - gpadmin

mkdir -p /home/gpadmin/masterdata

mkdir -p /home/gpadmin/segmentdata

mkdir -p /home/gpadmin/segmentmirror


创建包含所有主机的文件all_hosts

vim /home/gpadmin/all_hosts

加入下面两行

mdw

sdw


创建包含segment主机名的文件

vim /home/gpadmin/seg_hosts

加入下面一行

sdw




修改gpadmin用户的.bashrc

切换到

cd /home/gpadmin执行vim .bashrc


执行命令vim .bashrc:

在后添加如下内容

source /usr/local/greenplum-db/greenplum_path.sh

export MASTER_DATA_DIRECTORY=/home/gpadmin/masterdata/gpseg-1

export PGPORT=5432

export PGUSER=gpadmin

export PGDATABASE=gpadmin



PS:greenplum_path的路径也是根据你的gp安装路径来的,如果和我不一样,自己改吧,若果路径不对,gp命令将无法执行,会提示没有这个命令

然后在执行

vi .bash_profile命令

在后添加如下内容

export MASTER_DATA_DIRECTORY=/home/gpadmin/masterdata/gpseg-1

export PGPORT=5432

export PGUSER=gpadmin

export PGDATABASE=gpadmin



编辑gp初始化配置文件,直接编辑一个新文件,不要复制官方目录里的再改了,除非你想知道这些东西都是什么意思

vim /home/gpadmin/gpinitsystem_config

添加以下内容

ARRAY_NAME="EMC Greenplum DW"

SEG_PREFIX=gpseg

PORT_BASE=33000

declare -a DATA_DIRECTORY=(/home/gpadmin/segmentdata)

MASTER_HOSTNAME=mdw

MASTER_DIRECTORY=/home/gpadmin/masterdata

MASTER_PORT=5432

MACHINE_LIST_FILE=/home/gpadmin/seg_hosts

TRUSTED_SHELL=ssh

CHECK_POINT_SEGMENTS=8

ENCODING=UNICODE

MIRROR_PORT_BASE=43000

REPLICATION_PORT_BASE=34000

MIRROR_REPLICATION_PORT_BASE=44000

declare -a MIRROR_DATA_DIRECTORY=(/home/gpadmin/segmentmirror)

PS:注意这里面的几个路径,如果你有多个segment,declare就多加几个路径,我这里只设了一个segment节点,所以只有一个路径


添加:


建立信任关系,主要为了免密码登录的麻烦,若果提示命令不存在,先source一下.bashrc,如果还不对,回到第8步检查一下你配的路径

切换到/home/gpadmin目录下:

gpssh-exkeys -f /home/gpadmin/all_hosts


初始化数据库,我曾经因为这一步执行不成功熬了一夜,各种报错,各种提示

gpinitsystem -c /home/gpadmin/gpinitsystem_config






1.进入shell:
$ psql postgres


2.创建一个新数据库:

# create database testDB;





3.创建一个角色:

# create role gpadmin with password 'gpadmin';

4.修改密码:

# alter role gpadmin with password 'gpadmin';

5.创建表:

# create table test01 (a int, b text) distributed by (a);

6.插入数据:

# insert into test01 values(1, 'hello');

# insert into test01 values(2, 'greenplum');


7.查询:

# select * from test01;

a | b

---+-----------

1 | hello

3 | pivotal

3 | haha

2 | greenplum

(4 rows)



8.查看数据分布:

testdb=# select gp_segment_id, count(*) from test01 group by 1;

gp_segment_id | count

---------------+---------

3 | 1

0 | 1

1 | 1

2 | 1

(4 rows)

9.退出:

# \q



10.停止数据库:

$ gpstop-







11.启动服务(以gpadmin的身份启动):

$ gpstart


本文来源:https://blog.csdn.net/a2226701325/article/details/107243561

分享好友

分享这个小栈给你的朋友们,一起进步吧。

Greenplum
创建时间:2022-04-08 15:36:19
Greenplum
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

技术专家

查看更多
  • itt0918
    专家
戳我,来吐槽~