Greenplum集群 初始化配置 常用语句

一、控制台登录

psql -d postgres  登录postgres数据库

二、常用语句

0、版本信息

select version(); 查询当前Greenplum的版本信息

PostgreSQL 9.4.24 (Greenplum Database 6.2.1 build commit:d90ac1a1b983b913b3950430d4d9e47ee8827fd4) on x86_64-unknown-linux-gnu, compiled by gcc (GCC) 6.4.0, 64-bit compiled on Dec 16 2019 03:07:22

1、用户/角色

官网说 创建用户是创建角色的别名
两者唯一的区别就是,创建用户默认有login权限,而创建角色默认是nologin权限。

创建具有登录权限、密码是pwd的角色-temp_role
create role temp_role with login password 'pwd';  

更改角色的密码
alter role temp_role password 'password';  

查询所有的角色信息
select * from pg_roles;  

查询所有的用户信息
select * from pg_user;  

2、表空间

创建表空间,目录须提前创建
create tablespace temp_data location '/opt/greenplum/location/temp/temp_data' ;  

设置表空间temp_data的拥有者是temp_role
alter tablespace temp_data owner to temp_role;  

设置角色temp_role的默认表空间是temp_data
alter role temp_role set default_tablespace='temp_data';  

查询所有表空间的信息
select oid,spcname,spcowner from pg_tablespace;  

查询表空间的location信息
select * from gp_tablespace_location(oid);  

3、资源队列

创建资源队列
分配到队列角色所能够执行的查询的数量最高为20
所有从该资源队列中提交的语句的总内存配额最高为1024mb
和资源队列相关查询的优先级为high
create resource queue temp_queue with (active_statements=20,memory_limit='1024mb',priority=high);  

设置角色temp_role的资源队列为temp_queue
alter role temp_role resource queue temp_queue;  

查询资源队列与角色的关联信息
select * from gp_toolkit.gp_resq_role;  

查询资源队列的属性信息
select * from pg_resqueue_attributes;  

查询资源队列的当前状态
select * from gp_toolkit.gp_resqueue_status;  

4、模式

创建模式
create schema temp_schema;   

把temp_schema的所有权限赋予temp_role 
grant all on schema temp_schema to temp_role;  

如何将temp_schema模式下所有表的权限都赋予temp_role呢?
一条一条来吧,先生成所有的语句,然后复制黏贴一次性执行,或者写个函数循环执行
select 'grant all on table ' || schemaname || '.' || tablename || ' to ${role_name};' from pg_tables where schemaname = '${schema_name}'

5、表

创建表
create table temp_schema.temp_table(id int, gender char(1) ) distributed by (id);  

把表的查询权限赋予temp_role
grant select on temp_schema.temp_table to temp_role;  

把表的所有权限赋予temp_role
grant all on temp_schema.temp_table to temp_role;  

三、Navicat等工具连接GP数据库之前的权限管理

1、find / -name pg_hba.conf    在主节点Master上找到这个文件

2、vi pg_hba.conf     编辑

3、添加 host all all IP/32 md5   加入这一行,记得把IP替换为navicat所在机器的IP

4、重启Greenplum


最后,附上Greenplum的官方文档地址,上面有更详尽的说明,官网永远是最权威的指导!

http://docs.greenplum.org/6-2/ref_guide/sql_commands/sql_ref.html





你可能感兴趣的:(Greenplum集群 初始化配置 常用语句)