遵循SQL标准一致性, 基本兼容SQL语法(psql) 具体请看Greenplum特点概要
psql示例
切到系统用户postgres 使用psql命令登录PostgreSQL控制台。
这时相当于系统用户postgres以同名数据库用户的身份,登录数据库,这是不用输入密码的。如果一切正常,系统提示符会变为"postgres=#",表示这时已经进入了数据库控制台。
psql -d postgres
以下的命令都在控制台内完成。
第一件事是使用\password命令,为postgres用户设置一个密码。
\password postgres
第二件事是创建数据库用户dbuser(刚才创建的是Linux系统用户),并设置密码。
CREATE USER dbuser WITH PASSWORD 'password';
第三件事是创建用户数据库,这里为exampledb,并指定所有者为dbuser。
CREATE DATABASE exampledb OWNER dbuser;
第四件事是将exampledb数据库的所有权限都赋予dbuser,否则dbuser只能登录控制台,没有任何数据库操作权限。
GRANT ALL PRIVILEGES ON DATABASE exampledb to dbuser;
使用\q命令退出控制台(也可以直接按ctrl+D)。
\q
连接gp命令:
psql -d 库名 -h ip地址 -p 端口号 -U 用户名;
gp 添加分区:
alter table 表名 add partition d20190611 values('20190611') ;
gp 新建表:
alter table 表名 rename column old_column_name to new_column_name;
gp 添加字段:
alter table 表名 add column update_flag varchar(255);
gp 删除字段:
ALTER TABLE 表名 DROP COLUMN rt_gather_price_remark;
gp 修改字段的类型:
alter table 表名 alter column rt_gather_price_remark varchar(200) text;
gp 删除表:
drop table if exists 表名;
gp 删除分区:
alter table 表名 DROP partition d20190729;
gp 清空分区数据:
alter table 表名 truncate partition d20191010;
gp 删除进程:
select pg_cancel_backend(407367);
gp 查看表结构:
SELECT a.attnum,a.attname AS field,t.typname AS type,a.attlen AS length,a
.atttypmod AS lengthvar,a.attnotnull AS notnull from pg_class c,pg_attribute a,pg_type t where
c.relname='表名' and a.attnum>0 and a.attrelid=c.oid and a.atttypid=t.oid order by attnum ;
命令 参数 作用
gpstate -b => 显示简要状态
gpstate -c => 显示主镜像映射
gpstart -d => 指定数据目录(默认值: M A S T E R D A T A D I R E C T O R Y ) g p s t a t e − e = > 显示具有镜像状态问题的片段 g p s t a t e − f = > 显示备用主机详细信息 g p s t a t e − i = > 显示 G R I P L U M 数据库版本 g p s t a t e − m = > 显示镜像实例同步状态 g p s t a t e − p = > 显示使用端口 g p s t a t e − Q = > 快速检查主机状态 g p s t a t e − s = > 显示集群详细信息 g p s t a t e − v = > 显示详细信息 g p c o n f i g 命令参数作用 g p c o n f i g − c = > − − c h a n g e p a r a m n a m e 通过在 p o s t g r e s q l . c o n f 文件的底部添加新的设置来改变配置参数的设置。 g p c o n f i g − v = > − − v a l u e v a l u e 用于由 − c 选项指定的配置参数的值。默认情况下,此值将应用于所有 S e g m e n t 及其镜像、 M a s t e r 和后备 M a s t e r 。 g p c o n f i g − m = > − − m a s t e r v a l u e m a s t e r v a l u e 用于由 − c 选项指定的配置参数的 M a s t e r 值。如果指定,则该值仅适用于 M a s t e r 和后备 M a s t e r 。该选项只能与 − v 一起使用。 g p c o n f i g − m a s t e r o n l y = > 当被指定时, g p c o n f i g 将仅编辑 M a s t e r 的 p o s t g r e s q l . c o n f 文件。 g p c o n f i g − r = > − − r e m o v e p a r a m n a m e 通过注释掉 p o s t g r e s q l . c o n f 文件中的项删除配置参数。 g p c o n f i g − l = > − − l i s t 列出所有被 g p c o n f i g 工具支持的配置参数。 g p c o n f i g − s = > − − s h o w p a r a m n a m e 显示在 G r e e n p l u m 数据库系统中所有实例( M a s t e r 和 S e g m e n t )上使用的配置参数的值。如果实例中参数值存在差异,则工具将显示错误消息。使用 − s = > 选项运行 g p c o n f i g 将直接从数据库中读取参数值,而不是从 p o s t g r e s q l . c o n f 文件中读取。如果用户使用 g p c o n f i g 在所有 S e g m e n t 中设置配置参数,然后运行 g p c o n f i g − s 来验证更改,用户仍可能会看到以前的(旧)值。用户必须重新加载配置文件( g p s t o p − u )或重新启动系统( g p s t o p − r )以使更改生效。 g p c o n f i g − − f i l e = > 对于配置参数,显示在 G r e e n p l u m 数据库系统中的所有 S e g m e n t ( M a s t e r 和 S e g m e n t )上的 p o s t g r e s q l . c o n f 文件中的值。如果实例中的参数值存在差异,则工具会显示一个消息。必须与 − s 选项一起指定。 g p c o n f i g − − f i l e − c o m p a r e 对于配置参数,将当前 G r e e n p l u m 数据库值与主机( M a s t e r 和 S e g m e n t )上 p o s t g r e s q l . c o n f 文件中的值进行比较。 g p c o n f i g − − s k i p v a l i d a t i o n 覆盖 g p c o n f i g 的系统验证检查,并允许用户对任何服务器配置参数进行操作,包括隐藏参数和 g p c o n f i g 无法更改的受限参数。当与 − l 选项(列表)一起使用时,它显示受限参数的列表。警告:使用此选项设置配置参数时要格外小心。 g p c o n f i g − − v e r b o s e 在 g p c o n f i g 命令执行期间显示额外的日志信息。 g p c o n f i g − − d e b u g 设置日志输出级别为调试级别。 g p c o n f i g − ? ∣ − h ∣ − − h e l p 显示在线帮助。 g p s t a r t 命令参数作用 g p s t a r t − a = > 快速启动 ∣ g p s t a r t − d = > 指定数据目录(默认值: MASTER_DATA_DIRECTORY) gpstate -e => 显示具有镜像状态问题的片段 gpstate -f => 显示备用主机详细信息 gpstate -i => 显示GRIPLUM数据库版本 gpstate -m => 显示镜像实例同步状态 gpstate -p => 显示使用端口 gpstate -Q => 快速检查主机状态 gpstate -s => 显示集群详细信息 gpstate -v => 显示详细信息 gpconfig 命令 参数 作用 gpconfig -c => --change param_name 通过在postgresql.conf 文件的底部添加新的设置来改变配置参数的设置。 gpconfig -v => --value value 用于由-c选项指定的配置参数的值。默认情况下,此值将应用于所有Segment及其镜像、Master和后备Master。 gpconfig -m => --mastervalue master_value 用于由-c 选项指定的配置参数的Master值。如果指定,则该值仅适用于Master和后备Master。该选项只能与-v一起使用。 gpconfig -masteronly =>当被指定时,gpconfig 将仅编辑Master的postgresql.conf文件。 gpconfig -r => --remove param_name 通过注释掉postgresql.conf文件中的项删除配置参数。 gpconfig -l => --list 列出所有被gpconfig工具支持的配置参数。 gpconfig -s => --show param_name 显示在Greenplum数据库系统中所有实例(Master和Segment)上使用的配置参数的值。如果实例中参数值存在差异,则工具将显示错误消息。使用-s=>选项运行gpconfig将直接从数据库中读取参数值,而不是从postgresql.conf文件中读取。如果用户使用gpconfig 在所有Segment中设置配置参数,然后运行gpconfig -s来验证更改,用户仍可能会看到以前的(旧)值。用户必须重新加载配置文件(gpstop -u)或重新启动系统(gpstop -r)以使更改生效。 gpconfig --file => 对于配置参数,显示在Greenplum数据库系统中的所有Segment(Master和Segment)上的postgresql.conf文件中的值。如果实例中的参数值存在差异,则工具会显示一个消息。必须与-s选项一起指定。 gpconfig --file-compare 对于配置参数,将当前Greenplum数据库值与主机(Master和Segment)上postgresql.conf文件中的值进行比较。 gpconfig --skipvalidation 覆盖gpconfig的系统验证检查,并允许用户对任何服务器配置参数进行操作,包括隐藏参数和gpconfig无法更改的受限参数。当与-l选项(列表)一起使用时,它显示受限参数的列表。 警告: 使用此选项设置配置参数时要格外小心。 gpconfig --verbose 在gpconfig命令执行期间显示额外的日志信息。 gpconfig --debug 设置日志输出级别为调试级别。 gpconfig -? | -h | --help 显示在线帮助。 gpstart 命令 参数 作用 gpstart -a => 快速启动| gpstart -d => 指定数据目录(默认值: MASTERDATADIRECTORY)gpstate−e=>显示具有镜像状态问题的片段gpstate−f=>显示备用主机详细信息gpstate−i=>显示GRIPLUM数据库版本gpstate−m=>显示镜像实例同步状态gpstate−p=>显示使用端口gpstate−Q=>快速检查主机状态gpstate−s=>显示集群详细信息gpstate−v=>显示详细信息gpconfig命令参数作用gpconfig−c=>−−changeparamname通过在postgresql.conf文件的底部添加新的设置来改变配置参数的设置。gpconfig−v=>−−valuevalue用于由−c选项指定的配置参数的值。默认情况下,此值将应用于所有Segment及其镜像、Master和后备Master。gpconfig−m=>−−mastervaluemastervalue用于由−c选项指定的配置参数的Master值。如果指定,则该值仅适用于Master和后备Master。该选项只能与−v一起使用。gpconfig−masteronly=>当被指定时,gpconfig将仅编辑Master的postgresql.conf文件。gpconfig−r=>−−removeparamname通过注释掉postgresql.conf文件中的项删除配置参数。gpconfig−l=>−−list列出所有被gpconfig工具支持的配置参数。gpconfig−s=>−−showparamname显示在Greenplum数据库系统中所有实例(Master和Segment)上使用的配置参数的值。如果实例中参数值存在差异,则工具将显示错误消息。使用−s=>选项运行gpconfig将直接从数据库中读取参数值,而不是从postgresql.conf文件中读取。如果用户使用gpconfig在所有Segment中设置配置参数,然后运行gpconfig−s来验证更改,用户仍可能会看到以前的(旧)值。用户必须重新加载配置文件(gpstop−u)或重新启动系统(gpstop−r)以使更改生效。gpconfig−−file=>对于配置参数,显示在Greenplum数据库系统中的所有Segment(Master和Segment)上的postgresql.conf文件中的值。如果实例中的参数值存在差异,则工具会显示一个消息。必须与−s选项一起指定。gpconfig−−file−compare对于配置参数,将当前Greenplum数据库值与主机(Master和Segment)上postgresql.conf文件中的值进行比较。gpconfig−−skipvalidation覆盖gpconfig的系统验证检查,并允许用户对任何服务器配置参数进行操作,包括隐藏参数和gpconfig无法更改的受限参数。当与−l选项(列表)一起使用时,它显示受限参数的列表。警告:使用此选项设置配置参数时要格外小心。gpconfig−−verbose在gpconfig命令执行期间显示额外的日志信息。gpconfig−−debug设置日志输出级别为调试级别。gpconfig−?∣−h∣−−help显示在线帮助。gpstart命令参数作用gpstart−a=>快速启动∣gpstart−d=>指定数据目录(默认值:MASTER_DATA_DIRECTORY)
gpstart -q => 在安静模式下运行。命令输出不显示在屏幕,但仍然写入日志文件。
gpstart -m => 以维护模式连接到Master进行目录维护。例如:$ PGOPTIONS=‘-c gp_session_role=utility’ psql postgres
gpstart -R => 管理员连接
gpstart -v => 显示详细启动信息
gpstop
命令 参数 作用
gpstop -a => 快速停止
gpstop -d => 指定数据目录(默认值: M A S T E R D A T A D I R E C T O R Y ) g p s t o p − m = > 维护模式 g p s t o p − q = > 在安静模式下运行。命令输出不显示在屏幕,但仍然写入日志文件。 g p s t o p − r = > 停止所有实例,然后重启系统 g p s t o p − u = > 重新加载配置文件 p o s t g r e s q l . c o n f 和 p g h b a . c o n f g p s t o p − v = > 显示详细启动信息 g p s t o p − M f a s t = > 快速关闭。正在进行的任何事务都被中断。然后滚回去。 g p s t o p − M i m m e d i a t e = > 立即关闭。正在进行的任何事务都被中止。不推荐这种关闭模式,并且在某些情况下可能导致数据库损坏需要手动恢复。 g p s t o p − M s m a r t = > 智能关闭。如果存在活动连接,则此命令在警告时失败。这是默认的关机模式。 g p s t o p − − h o s t h o s t n a m e = > 停用 s e g m e n t s 数据节点,不能与 − m 、 − r 、 − u 、 − y 同时使用集群恢复命令参数作用 g p r e c o v e r s e g − a = > 快速恢复 g p r e c o v e r s e g − i = > 指定恢复文件 g p r e c o v e r s e g − d = > 指定数据目录 g p r e c o v e r s e g − l = > 指定日志文件 g p r e c o v e r s e g − r = > 平衡数据 g p r e c o v e r s e g − s = > 指定配置空间文件 g p r e c o v e r s e g − o = > 指定恢复配置文件 g p r e c o v e r s e g − p = > 指定额外的备用机 g p r e c o v e r s e g − S = > 指定输出配置空间文件激活备库流程命令参数作用 g p a c t i v a t e s t a n d b y − d 路径 ∣ 使用数据目录绝对路径,默认: MASTER_DATA_DIRECTORY) gpstop -m => 维护模式 gpstop -q => 在安静模式下运行。命令输出不显示在屏幕,但仍然写入日志文件。 gpstop -r => 停止所有实例,然后重启系统 gpstop -u => 重新加载配置文件 postgresql.conf 和 pg_hba.conf gpstop -v => 显示详细启动信息 gpstop -M fast => 快速关闭。正在进行的任何事务都被中断。然后滚回去。 gpstop -M immediate => 立即关闭。正在进行的任何事务都被中止。不推荐这种关闭模式,并且在某些情况下可能导致数据库损坏需要手动恢复。 gpstop -M smart => 智能关闭。如果存在活动连接,则此命令在警告时失败。这是默认的关机模式。 gpstop --host hostname => 停用segments数据节点,不能与-m、-r、-u、-y同时使用 集群恢复 命令 参数 作用 gprecoverseg -a => 快速恢复 gprecoverseg -i => 指定恢复文件 gprecoverseg -d => 指定数据目录 gprecoverseg -l => 指定日志文件 gprecoverseg -r => 平衡数据 gprecoverseg -s => 指定配置空间文件 gprecoverseg -o => 指定恢复配置文件 gprecoverseg -p => 指定额外的备用机 gprecoverseg -S => 指定输出配置空间文件 激活备库流程 命令 参数 作用 gpactivatestandby -d 路径 | 使用数据目录绝对路径,默认: MASTERDATADIRECTORY)gpstop−m=>维护模式gpstop−q=>在安静模式下运行。命令输出不显示在屏幕,但仍然写入日志文件。gpstop−r=>停止所有实例,然后重启系统gpstop−u=>重新加载配置文件postgresql.conf和pghba.confgpstop−v=>显示详细启动信息gpstop−Mfast=>快速关闭。正在进行的任何事务都被中断。然后滚回去。gpstop−Mimmediate=>立即关闭。正在进行的任何事务都被中止。不推荐这种关闭模式,并且在某些情况下可能导致数据库损坏需要手动恢复。gpstop−Msmart=>智能关闭。如果存在活动连接,则此命令在警告时失败。这是默认的关机模式。gpstop−−hosthostname=>停用segments数据节点,不能与−m、−r、−u、−y同时使用集群恢复命令参数作用gprecoverseg−a=>快速恢复gprecoverseg−i=>指定恢复文件gprecoverseg−d=>指定数据目录gprecoverseg−l=>指定日志文件gprecoverseg−r=>平衡数据gprecoverseg−s=>指定配置空间文件gprecoverseg−o=>指定恢复配置文件gprecoverseg−p=>指定额外的备用机gprecoverseg−S=>指定输出配置空间文件激活备库流程命令参数作用gpactivatestandby−d路径∣使用数据目录绝对路径,默认:MASTER_DATA_DIRECTORY
gpactivatestandby -f | 强制激活备份主机
gpactivatestandby -v | 显示此版本信息
始化备Master
命令 参数 作用
gpinitstandby -s 备库名称 => 指定新备库
gpinitstandby -D => debug 模式
gpinitstandby -r => 移除备用机
参考文档
https://gp-docs-cn.github.io/docs/utility_guide/admin_utilities/gprecoverseg.html
https://gpcc.docs.pivotal.io/430/topics/overview.html