greenplum基本操作及管理命令.docx
- 文档编号:23649214
- 上传时间:2023-05-19
- 格式:DOCX
- 页数:42
- 大小:27.46KB
greenplum基本操作及管理命令.docx
《greenplum基本操作及管理命令.docx》由会员分享,可在线阅读,更多相关《greenplum基本操作及管理命令.docx(42页珍藏版)》请在冰豆网上搜索。
greenplum基本操作及管理命令
greenplum基本操作及管理命令
第1章系统管理
1.1GP服务启停
su-gpadmin
gpstart#正常启动
gpstop#正常关闭
gpstop-Mfast#快速关闭
gpstop–r#重启
gpstop–u#重新加载配置文件
1.2登陆
psqlgpdb
psql-dgpdb-hgphostm-p5432-Ugpadmin
1.3查看segment配置
select*fromgp_segment_configuration;
1.4文件系统
select*frompg_filespace_entry;
1.5列出所有数据库
psql–l
1.6行表库最大尺寸
一个数据库最大尺寸?
无限制(已存在有32TB的数据库)
一个表的最大尺寸?
32TB
一行记录的最大尺寸?
1.6TB
一个字段的最大尺寸?
1GB
一个表里最大行数?
无限制
一个表里最大列数?
250-1600(与列类型有关)
一个表里的最大索引数量?
无限制
当然,实际上没有真正的无限制,还是要受可用磁盘空间、可用内存/交换区的制约。
事实上,当这些数值变得异常地大时,系统性能也会受很大影响。
表的最大尺寸32TB不需要操作系统对大文件的支持。
大表用多个1GB的文件存储,因此文件系统尺寸的限制是不重要的。
如果缺省的块大小增长到32K,最大的表尺寸和最大列数还可以增加到四倍
1.7存储空间
一个Postgres数据库(存储一个文本文件)所占用的空间最多可能需要相当于这个文本文件自身大小5倍的磁盘空间。
第2章Psql操作
2.1创建/删除用户
创建用户:
createuser[-a][-A][-d][-D][-e][-P][-h主机名][-pport]用户名
参数说明:
[-a]:
允许创建其他用户,相当于创建一个超级用户;
[-A]:
不允许此用户创建其他用户;
[-d]:
允许此用户创建数据库;
[-D]:
不允许此用户创建数据库;
[-e]:
将执行过程显示到Shell上;
[-P]:
创建用户时,同时设置密码;
[-h主机名]:
为某个主机上的Postgres创建用户;
[-pport]:
与-h参数一同使用,指定主机的端口。
createuser-h172.28.18.51-p5000-D-A-etestuser
创建超级用户:
createuser-P-d-a-etestuser
删除用户:
命令:
dropuser[-i][-h][-p][-e]用户名
参数说明:
[-i]:
删除用户前,要求确认;
[-h主机名]:
删除某个主机上的Postgres用户;
[-pport]:
与-h参数一同使用,指定主机的端口;
[-e]:
将执行过程显示到Shell上。
2.2创建数据库
createdb-p5432-e-Ugpadminmydb
2.3运行建库脚本
psql-p5432-Ugpadmin-dmydb-f./mysql.sql
2.4表描述
/d+
2.5执行sql文件
psqlgpdbname–fyoursqlfile.sql
或者psql登陆后执行\iyoursqlfile.sq
2.6返回查询头几行/随机几行
SELECTcols
FROMtab
ORDERBYrandom()
LIMIT1;
2.7更改字段类型
ALTERTABLEALTERCOLUMNTYPE
第3章数据导入导出
3.1GPload工具
编写load.yml
verSION:
1.0.0.1
USER:
gpadmin
PORT:
5432
GPLOAD:
INPUT:
-SOURCE:
FILE:
-/opt/gpadmin/zhonghong/testload.txt
-COLUMNS:
-msisdn:
text
-blank1:
text
-blank2:
text
-uaText:
text
-FORMAT:
text
-DELIMITER:
'|'
OUTPUT:
-TABLE:
ua_in
-MODE:
INSERT
SQL:
执行命令:
gpload-fload.yml-Ugpadmin-duainfo
3.2外部表
CREATEEXTERNALTABLEext_expenses(nametext,
datedate,amountfloat4,categorytext,desctext)
LOCATION(‘gpfdist:
//etlhost:
8081/*’,
‘gpfdist:
//etlhost1:
8081/*’)
FORMAT‘TEXT’(DELIMITER‘,’);
装载数据:
1-insert方式
INSERTINTOexpenses_travel
SELECT*fromext_expenseswherecategory=’travel’;
2-createtable…as…方式
CREATETABLEexpensesASSELECT*fromext_expenses;
3.3Copy命令
Copy命令装载数据并不是并行装载,而且所装载的数据文件必须放在master服务器上,例如:
COPYcountryFROM‘/data/gpdb/country_data’
WITHDELIMITER‘|’LOGERRORSINTOerr_country
SEGMENTREJECTLIMIT10ROWS;
第4章附录——命令大全
输入:
/copyright获取发布信息
/h获取SQL命令的帮助
/?
获取psql命令的帮助
/g或者以分号作为执行查询的结尾
/q退出
4.1一般选项
/c[onnect][数据库名|-[用户名称]]
联接到新的数据库(当前为"test")
/cd[目录名]改变当前的工作目录
/copyright显示PostgreSQL用法和发布信息
/encoding[编码]
显示或设置客户端编码
/h[名字]SQL命令的语法帮助,用*可以看所有命令的帮助
/q退出psql
/set[名字[值]]
设置内部变量,如果没有参数就列出所有
/timing查询计时开关切换(目前是关闭)
/unset名字取消(删除)内部变量
/!
[命令]在shell里执行命令或者开始一个交互的shell
4.2查询缓冲区选项
/e[文件名]用一个外部编辑器编辑当前查询缓冲区或者文件
/g[文件名]向服务器发送SQL命令(并且把结果写到文件或者|管道)
/p显示当前查询缓冲区的内容
/r重置(清理)查询缓冲区
/s[文件名]打印历史或者将其保存到文件
/w[文件名]将查询缓冲区写出到文件
4.3输入/输出选项
/echo[字串]向标准输出写出文本
/i文件名执行来自文件的命令
/o[文件名]向文件或者|管道发送所有查询结果
/qecho[字串]
向查询输出流写出文本(见/o)
4.4信息选项
/d[名字]描述表,索引,序列,或者视图
/d{t|i|s|v|S}[模式](加"+"获取更多信息)
列出表/索引/序列/视图/系统表
/da[模式]列出聚集函数
/db[模式]列出表空间(加"+"获取更多的信息)
/dc[模式]列出编码转换
/dC列出类型转换
/dd[模式]显示目标的注释
/dD[模式]列出域
/df[模式]列出函数(加"+"获取更多的信息)
/dg[模式]列出组
/dn[模式]列出模式(加"+"获取更多的信息)
/do[名字]列出操作符
/dl列出大对象,和/lo_list一样
/dp[模式]列出表,视图,序列的访问权限
/dT[模式]列出数据类型(加"+"获取更多的信息)
/du[模式]列出用户
/l列出所有数据库(加"+"获取更多的信息)
/z[模式]列出表,视图,序列的访问权限(和/dp一样)
4.5格式选项
/a在非对齐和对齐的输出模式之间切换
/C[字串]设置表标题,如果参数空则取消标题
/f[字串]为非对齐查询输出显示或设置域分隔符
/H在HTML输出模式之间切换(当前是关闭)
/pset变量[值]
设置表的输出选项
(变量:
={foramt|border|expanded|fieldsep|null|
recordsep|tuples_only|title|tableattr|pager})
/t只显示行(当前是关闭)
/T[字串]设置HTML<表>标记属性,如果没有参数就取消设置
/x在扩展输出之间切换(目前是关闭)
4.6拷贝,大对象选项
/copy...执行SQLCOPY,数据流指向客户端主机
/lo_exportLOBOIDFILE
/lo_importFILE[COMMENT]
/lo_list
/lo_unlinkLOBOID大对象操作
4.7SQL帮助
ABORTCREATEINDEXDROPTYPE
ALTERAGGREGATECREATELANGUAGEDROPUSER
ALTERCONVERSIONCREATEOPERATORCLASSDROPVIEW
ALTERDATABASECREATEOPERATOREND
ALTERDOMAINCREATERULEEXECUTE
ALTERFUNCTIONCREATESCHEMAEXPLAIN
ALTERGROUPCREATESEQUENCEFETCH
ALTERINDEXCREATETABLEGRANT
ALTERLANGUAGECREATETABLEASINSERT
ALTEROPERATORCLASSCREATETABLESPACELISTEN
ALTEROPERATORCREATETRIGGERLOAD
ALTERSCHEMACREATETYPELOCK
ALTERSEQUENCECREATEUSERMOVE
ALTERTABLECREATEVIEWNOTIFY
ALTERTABLESPACEDEALLOCATEPREPARE
ALTERTRIGGERDECLAREREINDEX
ALTERTYPEDELETERELEASESAVEPOINT
ALTERUSERDROPAGGREGATERESET
ANALYZEDROPCASTREVOKE
BEGINDROPCONVERSIONROLLBACK
CHECKPOINTDROPDATABASEROLLBACKTOSAVEPOINT
CLOSEDROPDOMAINSAVEPOINT
CLUSTERDROPFUNCTIONSELECT
COMMENTDROPGROUPSELECTINTO
COMMITDROPINDEXSET
COPYDROPLANGUAGESETCONSTRAINTS
CREATEAGGREGATEDROPOPERATORCLASSSETSESSIONAUTHORIZATION
CREATECASTDROPOPERATORSETTRANSACTION
CREATECONSTRAINTTRIGGERDROPRULESHOW
CREATECONVERSIONDROPSCHEMASTARTTRANSACTION
CREATEDATABASEDROPSEQUENCETRUNCATE
CREATEDOMAINDROPTABLEUNLISTEN
CREATEFUNCTIONDROPTABLESPACEUPDATE
CREATEGROUPDROPTRIGGERVACUUM
命令:
ABORT
描述:
终止当前事务
语法:
ABORT[WORK|TRANSACTION]
命令:
ALTERAGGREGATE
描述:
改变一个聚集函数的定义
语法:
ALTERAGGREGATE名字(类型)RENAMETO新名字
ALTERAGGREGATE名字(类型)OWNERTO新属主
命令:
ALTERCONVERSION
描述:
改变一个转换的定义
语法:
ALTERCONVERSION名字RENAMETO新名字
ALTERCONVERSION名字OWNERTO新属主
命令:
ALTERDATABASE
描述:
改变一个数据库
语法:
ALTERDATABASE名字SET参数{TO|=}{值|DEFAULT}
ALTERDATABASE名字RESET参数
ALTERDATABASE名字RENAMETO新名字
ALTERDATABASE名字OWNERTO新属主
命令:
ALTERDOMAIN
描述:
改变一个域的定义
语法:
ALTERDOMAIN名字
{SETDEFAULT说明|DROPDEFAULT}
ALTERDOMAIN名字
{SET|DROP}NOTNULL
ALTERDOMAIN名字
ADD域约束
ALTERDOMAIN名字
DROPCONSTRAINT约束名字[RESTRICT|CASCADE]
ALTERDOMAIN名字
OWNERTO新宿主
命令:
ALTERDOMAIN
描述:
改变一个域的定义
语法:
ALTERDOMAIN名字
{SETDEFAULT说明|DROPDEFAULT}
ALTERDOMAIN名字
{SET|DROP}NOTNULL
ALTERDOMAIN名字
ADD域约束
ALTERDOMAIN名字
DROPCONSTRAINT约束名字[RESTRICT|CASCADE]
ALTERDOMAIN名字
OWNERTO新宿主
命令:
ALTERFUNCTION
描述:
改变一个函数的定义
语法:
ALTERFUNCTION名字([类型[,...]])RENAMETO新名字
ALTERFUNCTION名字([类型[,...]])OWNERTO新属主
命令:
ALTERGROUP
描述:
改变一个用户组
语法:
ALTERGROUP组名称ADDUSER用户名称[,...]
ALTERGROUP组名称DROPUSER用户名称[,...]
ALTERGROUP组名称RENAMETO新名称
命令:
ALTERINDEX
描述:
改变一个索引的定义
语法:
ALTERINDEX索引名称
动作[,...]
ALTERINDEX索引旧名称
RENAMETO索引新名称
动作为以下之一:
OWNERTO新属主
SETTABLESPACEindexspace_name
命令:
ALTERLANGUAGE
描述:
改变一个过程语言的定义
语法:
ALTERLANGUAGE名字RENAMETO新名字
命令:
ALTEROPERATORCLASS
描述:
改变一个操作符表的定义
语法:
ALTEROPERATORCLASS名字USING索引方法RENAMETO新名字
ALTEROPERATORCLASS名字USING索引方法OWNERTO新属主
命令:
ALTEROPERATORCLASS
描述:
改变一个操作符表的定义
语法:
ALTEROPERATORCLASS名字USING索引方法RENAMETO新名字
ALTEROPERATORCLASS名字USING索引方法OWNERTO新属主
命令:
ALTEROPERATOR
描述:
改变一个操作符的定义
语法:
ALTEROPERATOR名字({左边类型|NONE},{右边类型|NONE})OWNERTO新属主
命令:
ALTERSCHEMA
描述:
改变一个模式的定义
语法:
ALTERSCHEMA名字RENAMETO新名字
ALTERSCHEMA名字OWNERTO新属主
命令:
ALTERSEQUENCE
描述:
改变一个序列生成器的定义
语法:
ALTERSEQUENCE名字[INCREMENT[BY]递增]
[MINVALUE最小值|NOMINVALUE][MAXVALUE最大值|NOMAXVALUE]
[RESTART[WITH]开始][CACHE缓存][[NO]CYCLE]
命令:
ALTERTABLE
描述:
改变一个表的定义
语法:
ALTERTABLE[ONLY]表名[*]
action[,...]
ALTERTABLE[ONLY]表名[*]
RENAME[COLUMN]字段名TO新字段名
ALTERTABLE表名
RENAMETO新表名
action为下面的一种:
ADD[COLUMN]字段名类型[字段约束[...]]
DROP[COLUMN]字段名[RESTRICT|CASCADE]
ALTER[COLUMN]字段名TYPE类型[USING表达式]
ALTER[COLUMN]字段名SETDEFAULT表达式
ALTER[COLUMN]字段名DROPDEFAULT
ALTER[COLUMN]字段名{SET|DROP}NOTNULL
ALTER[COLUMN]字段名SETSTATISTICSinteger
ALTER[COLUMN]字段名SETSTORAGE{PLAIN|EXTERNAL|EXTENDED|MAIN}
ADD表约束
DROPCONSTRAINT约束名字[RESTRICT|CASCADE]
CLUSTERON索引名称
SETWITHOUTCLUSTER
SETWITHOUTOIDS
OWNERTO新属主
SETTABLESPACE表空间名字
命令:
ALTERTABLESPACE
描述:
改变一个表空间的定义
语法:
ALTERTABLESPACE名字RENAMETO新名字
ALTERTABLESPACE名字OWNERTO新属主
命令:
ALTERTABLESPACE
描述:
改变一个表空间的定义
语法:
ALTERTABLESPACE名字RENAMETO新名字
ALTERTABLESPACE名字OWNERTO新属主
命令:
ALTERTRIGGER
描述:
改变一个触发器的定义
语法:
ALTERTRIGGER名字ON表RENAMETO新名字
命令:
ALTERTYPE
描述:
改变一个类型的定义
语法:
ALTERTYPE名字OWNERTO新属主
命令:
ALTERUSER
描述:
改变一个数据库用户
语法:
ALTERUSERname[[WITH]option[...]]
whereoptioncanbe:
CREATEDB|NOCREATEDB
|CREATEUSER|NOCREATEUSER
|[ENCRYPTED|UNENCRYPTED]PASSWORD'password'
|VALIDUNTIL'abstime'
ALTERUSERnameRENAMETOnewname
ALTERUSERnameSETparameter{TO|=}{value|DEFAULT}
ALTERUSERnameRESETparameter
命令:
ANALYZE
描述:
收集关于数据库的统计数字
语法:
ANALYZE[VERBOSE][表[(字段[,...])]]
命令:
BEGIN
描述:
开始一个事务块
语法:
BEGIN[WORK|TRANSACTION][事物模式[,...]]
事物模式为下面之一:
ISOLATIONLEVEL{SERIALIZABLE|REPEATABLEREAD|READCOMMITTED|READUNCOMMITTED}
READWRITE|READONLY
命令:
CHECKPOINT
描述:
强行交易日志检查
语法:
CHECKPOINT
命令:
CLOSE
描述:
关闭一个游标
语法:
CLOSE名字
命令:
CLUSTER
描述:
根据一个索引建表簇
语法:
CLUSTER索引名字ON表名
CLUSTER表名
CLUSTER
命令:
COMMENT
描述:
定义或改变一个对象的评注
语法:
COMMENTON
{
TABLEobject_name|
COLUMNtable_name.column_name|
AGGREGATEagg_name(agg_type)|
CAST(sourcetypeAStargettype)|
CONSTRAINTconstraint_nameONtable_name|
CONVERSIONobject_name|
DATABASEobject_name|
DOMAINobject_name|
FUNCTIONfunc_name(arg1_type,arg2_type,...)|
INDEXobject_name|
LARGEOBJECTlarge
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- greenplum 基本 操作 管理 命令