1、第1章 系统管理1.1 GP服务启停su - gpadmingpstart #正常启动gpstop #正常关闭gpstop -M fast #快速关闭gpstop r #重启gpstop u #重新加载配置文件1.2 登陆psql gpdbpsql -d gpdb -h gphostm -p 5432 -U gpadmin1.3 查看segment配置select * from gp_segment_configuration;1.4 文件系统select * from pg_filespace_entry;1.5 列出所有数据库psql l1.6 行表库最大尺寸一个数据库最大尺寸?无限制(已
2、存在有 32TB 的数据库)一个表的最大尺寸?32 TB一行记录的最大尺寸?1.6 TB一个字段的最大尺寸?1 GB一个表里最大行数?无限制一个表里最大列数?250-1600 (与列类型有关)一个表里的最大索引数量?无限制当然,实际上没有真正的无限制,还是要受可用磁盘空间、可用内存/交换区的制约。 事实上,当这些数值变得异常地大时,系统性能也会受很大影响。表的最大尺寸 32 TB 不需要操作系统对大文件的支持。大表用多个 1 GB 的文件存储,因此文件系统尺寸的限制是不重要的。如果缺省的块大小增长到 32K ,最大的表尺寸和最大列数还可以增加到四倍1.7 存储空间一个 Postgres 数据库
3、(存储一个文本文件)所占用的空间最多可能需要相当于这个文本文件自身大小5倍的磁盘空间。第2章 Psql操作2.1 创建/删除用户创建用户:createuser -a -A -d -D -e -P -h 主机名 -p port 用户名参数说明: -a:允许创建其他用户,相当于创建一个超级用户; -A:不允许此用户创建其他用户; -d:允许此用户创建数据库; -D:不允许此用户创建数据库; -e:将执行过程显示到Shell上; -P:创建用户时,同时设置密码; -h 主机名:为某个主机上的Postgres创建用户; -p port:与-h参数一同使用,指定主机的端口。createuser -h 1
4、72.28.18.51 -p 5000 -D -A -e testuser创建超级用户:createuser -P -d -a -e testuser删除用户:命令:dropuser -i -h -p -e 用户名 参数说明: -i:删除用户前,要求确认; -h 主机名:删除某个主机上的Postgres用户; -p port:与-h参数一同使用,指定主机的端口; -e:将执行过程显示到Shell上。2.2 创建数据库createdb -p 5432 -e -U gpadmin mydb2.3 运行建库脚本psql -p 5432 -U gpadmin -d mydb -f ./mysql.sq
5、l2.4 表描述/d+ 2.5 执行sql文件psql gpdbname f yoursqlfile.sql或者psql登陆后执行 i yoursqlfile.sq2.6 返回查询头几行/随机几行SELECT colsFROM tabORDER BY random()LIMIT 1 ;2.7 更改字段类型ALTER TABLE ALTER COLUMN TYPE第3章 数据导入导出3.1 GPload工具编写load.ymlverSION: 1.0.0.1USER: gpadminPORT: 5432GPLOAD: INPUT: - SOURCE: FILE: - /opt/gpadmin/z
6、honghong/testload.txt - COLUMNS: - msisdn: text - blank1: text - blank2: text - uaText: text - FORMAT: text - DELIMITER: | OUTPUT: - TABLE: ua_in - MODE: INSERT SQL:执行命令:gpload -f load.yml -U gpadmin -d uainfo3.2 外部表CREATE EXTERNAL TABLE ext_expenses ( name text, date date, amount float4, category t
7、ext, desc text ) LOCATION (gpfdist:/etlhost:8081/*, gpfdist:/etlhost1:8081/*) FORMAT TEXT (DELIMITER ,); 装载数据:1-insert方式 INSERT INTO expenses_travel SELECT * from ext_expenses where category=travel; 2-create tableas 方式 CREATE TABLE expenses AS SELECT * from ext_expenses;3.3 Copy命令Copy命令装载数据并不是并行装载,而
8、且所装载的数据文件必须放在master服务器上,例如: COPY country FROM /data/gpdb/country_data WITH DELIMITER | LOG ERRORS INTO err_country SEGMENT REJECT LIMIT 10 ROWS;第4章 附录命令大全输入: /copyright 获取发布信息 /h 获取 SQL 命令的帮助 /? 获取 psql 命令的帮助 /g 或者以分号作为执行查询的结尾 /q 退出4.1 一般选项/connect 数据库名|- 用户名称 联接到新的数据库 (当前为 test)/cd 目录名 改变当前的工作目录/co
9、pyright 显示 PostgreSQL 用法和发布信息/encoding 编码 显示或设置客户端编码/h 名字 SQL 命令的语法帮助, 用 * 可以看所有命令的帮助/q 退出 psql/set 名字 值 设置内部变量, 如果没有参数就列出所有/timing 查询计时开关切换 (目前是 关闭)/unset 名字 取消(删除)内部变量/! 命令 在 shell 里执行命令或者开始一个交互的 shell4.2 查询缓冲区选项/e 文件名 用一个外部编辑器编辑当前查询缓冲区或者文件/g 文件名 向服务器发送 SQL 命令 (并且把结果写到文件或者 |管道)/p 显示当前查询缓冲区的内容/r 重置
10、 (清理) 查询缓冲区/s 文件名 打印历史或者将其保存到文件/w 文件名 将查询缓冲区写出到文件4.3 输入/输出选项/echo 字串 向标准输出写出文本/i 文件名 执行来自文件的命令/o 文件名 向文件或者 |管道 发送所有查询结果/qecho 字串 向查询输出流写出文本 (见 /o)4.4 信息选项/d 名字 描述表, 索引, 序列, 或者视图/dt|i|s|v|S 模式 (加 + 获取更多信息) 列出表/索引/序列/视图/系统表/da 模式 列出聚集函数/db 模式 列出表空间 (加 + 获取更多的信息)/dc 模式 列出编码转换/dC 列出类型转换/dd 模式 显示目标的注释/dD
11、 模式 列出域/df 模式 列出函数 (加 + 获取更多的信息)/dg 模式 列出组/dn 模式 列出模式 (加 + 获取更多的信息)/do 名字 列出操作符/dl 列出大对象, 和 /lo_list 一样/dp 模式 列出表, 视图, 序列的访问权限/dT 模式 列出数据类型 (加 + 获取更多的信息)/du 模式 列出用户/l 列出所有数据库 (加 + 获取更多的信息)/z 模式 列出表, 视图, 序列的访问权限 (和 /dp 一样)4.5 格式选项/a 在非对齐和对齐的输出模式之间切换/C 字串 设置表标题, 如果参数空则取消标题/f 字串 为非对齐查询输出显示或设置域分隔符/H 在 H
12、TML 输出模式之间切换 (当前是 关闭)/pset 变量 值 设置表的输出选项 (变量 := foramt|border|expanded|fieldsep|null| recordsep|tuples_only|title|tableattr|pager)/t 只显示行 (当前是 关闭)/T 字串 设置 HTML 标记属性, 如果没有参数就取消设置/x 在扩展输出之间切换 (目前是 关闭)4.6 拷贝, 大对象选项/copy . 执行 SQL COPY, 数据流指向客户端主机/lo_export LOBOID FILE/lo_import FILE COMMENT/lo_list/lo_u
13、nlink LOBOID 大对象操作4.7 SQL帮助ABORT CREATE INDEX DROP TYPEALTER AGGREGATE CREATE LANGUAGE DROP USERALTER CONVERSION CREATE OPERATOR CLASS DROP VIEWALTER DATABASE CREATE OPERATOR ENDALTER DOMAIN CREATE RULE EXECUTEALTER FUNCTION CREATE SCHEMA EXPLAINALTER GROUP CREATE SEQUENCE FETCHALTER INDEX CREATE TA
14、BLE GRANTALTER LANGUAGE CREATE TABLE AS INSERTALTER OPERATOR CLASS CREATE TABLESPACE LISTENALTER OPERATOR CREATE TRIGGER LOADALTER SCHEMA CREATE TYPE LOCKALTER SEQUENCE CREATE USER MOVEALTER TABLE CREATE VIEW NOTIFYALTER TABLESPACE DEALLOCATE PREPAREALTER TRIGGER DECLARE REINDEXALTER TYPE DELETE REL
15、EASE SAVEPOINTALTER USER DROP AGGREGATE RESETANALYZE DROP CAST REVOKEBEGIN DROP CONVERSION ROLLBACKCHECKPOINT DROP DATABASE ROLLBACK TO SAVEPOINTCLOSE DROP DOMAIN SAVEPOINTCLUSTER DROP FUNCTION SELECTCOMMENT DROP GROUP SELECT INTOCOMMIT DROP INDEX SETCOPY DROP LANGUAGE SET CONSTRAINTSCREATE AGGREGAT
16、E DROP OPERATOR CLASS SET SESSION AUTHORIZATIONCREATE CAST DROP OPERATOR SET TRANSACTIONCREATE CONSTRAINT TRIGGER DROP RULE SHOWCREATE CONVERSION DROP SCHEMA START TRANSACTIONCREATE DATABASE DROP SEQUENCE TRUNCATECREATE DOMAIN DROP TABLE UNLISTENCREATE FUNCTION DROP TABLESPACE UPDATECREATE GROUP DRO
17、P TRIGGER VACUUM命令: ABORT描述: 终止当前事务语法:ABORT WORK | TRANSACTION 命令: ALTER AGGREGATE描述: 改变一个聚集函数的定义语法:ALTER AGGREGATE 名字 ( 类型 ) RENAME TO 新名字ALTER AGGREGATE 名字 ( 类型 ) OWNER TO 新属主命令: ALTER CONVERSION描述: 改变一个转换的定义语法:ALTER CONVERSION 名字 RENAME TO 新名字ALTER CONVERSION 名字 OWNER TO 新属主命令: ALTER DATABASE描述:
18、改变一个数据库语法:ALTER DATABASE 名字 SET 参数 TO | = 值 | DEFAULT ALTER DATABASE 名字 RESET 参数ALTER DATABASE 名字 RENAME TO 新名字ALTER DATABASE 名字 OWNER TO 新属主命令: ALTER DOMAIN描述: 改变一个域的定义语法:ALTER DOMAIN 名字 SET DEFAULT 说明 | DROP DEFAULT ALTER DOMAIN 名字 SET | DROP NOT NULLALTER DOMAIN 名字 ADD 域约束ALTER DOMAIN 名字 DROP CON
19、STRAINT 约束名字 RESTRICT | CASCADE ALTER DOMAIN 名字 OWNER TO 新宿主命令: ALTER DOMAIN描述: 改变一个域的定义语法:ALTER DOMAIN 名字 SET DEFAULT 说明 | DROP DEFAULT ALTER DOMAIN 名字 SET | DROP NOT NULLALTER DOMAIN 名字 ADD 域约束ALTER DOMAIN 名字 DROP CONSTRAINT 约束名字 RESTRICT | CASCADE ALTER DOMAIN 名字 OWNER TO 新宿主命令: ALTER FUNCTION描述:
20、 改变一个函数的定义语法:ALTER FUNCTION 名字 ( 类型 , . ) RENAME TO 新名字ALTER FUNCTION 名字 ( 类型 , . ) OWNER TO 新属主命令: ALTER GROUP描述: 改变一个用户组语法:ALTER GROUP 组名称 ADD USER 用户名称 , . ALTER GROUP 组名称 DROP USER 用户名称 , . ALTER GROUP 组名称 RENAME TO 新名称命令: ALTER INDEX描述: 改变一个索引的定义语法:ALTER INDEX 索引名称 动作 , . ALTER INDEX 索引旧名称 RENA
21、ME TO 索引新名称动作为以下之一: OWNER TO 新属主 SET TABLESPACE indexspace_name命令: ALTER LANGUAGE描述: 改变一个过程语言的定义语法:ALTER LANGUAGE 名字 RENAME TO 新名字命令: ALTER OPERATOR CLASS描述: 改变一个操作符表的定义语法:ALTER OPERATOR CLASS 名字 USING 索引方法 RENAME TO 新名字ALTER OPERATOR CLASS 名字 USING 索引方法 OWNER TO 新属主命令: ALTER OPERATOR CLASS描述: 改变一个操
22、作符表的定义语法:ALTER OPERATOR CLASS 名字 USING 索引方法 RENAME TO 新名字ALTER OPERATOR CLASS 名字 USING 索引方法 OWNER TO 新属主命令: ALTER OPERATOR描述: 改变一个操作符的定义语法:ALTER OPERATOR 名字 ( 左边类型 | NONE , 右边类型 | NONE ) OWNER TO 新属主命令: ALTER SCHEMA描述: 改变一个模式的定义语法:ALTER SCHEMA 名字 RENAME TO 新名字ALTER SCHEMA 名字 OWNER TO 新属主命令: ALTER SE
23、QUENCE描述: 改变一个序列生成器的定义语法:ALTER SEQUENCE 名字 INCREMENT BY 递增 MINVALUE 最小值 | NO MINVALUE MAXVALUE 最大值 | NO MAXVALUE RESTART WITH 开始 CACHE 缓存 NO CYCLE 命令: ALTER TABLE描述: 改变一个表的定义语法:ALTER TABLE ONLY 表名 * action , . ALTER TABLE ONLY 表名 * RENAME COLUMN 字段名 TO 新字段名ALTER TABLE 表名 RENAME TO 新表名action 为下面的一种:
24、ADD COLUMN 字段名 类型 字段约束 . DROP COLUMN 字段名 RESTRICT | CASCADE ALTER COLUMN 字段名 TYPE 类型 USING 表达式 ALTER COLUMN 字段名 SET DEFAULT 表达式 ALTER COLUMN 字段名 DROP DEFAULT ALTER COLUMN 字段名 SET | DROP NOT NULL ALTER COLUMN 字段名 SET STATISTICS integer ALTER COLUMN 字段名 SET STORAGE PLAIN | EXTERNAL | EXTENDED | MAIN A
25、DD 表约束 DROP CONSTRAINT 约束名字 RESTRICT | CASCADE CLUSTER ON 索引名称 SET WITHOUT CLUSTER SET WITHOUT OIDS OWNER TO 新属主 SET TABLESPACE 表空间名字命令: ALTER TABLESPACE描述: 改变一个表空间的定义语法:ALTER TABLESPACE 名字 RENAME TO 新名字ALTER TABLESPACE 名字 OWNER TO 新属主命令: ALTER TABLESPACE描述: 改变一个表空间的定义语法:ALTER TABLESPACE 名字 RENAME T
26、O 新名字ALTER TABLESPACE 名字 OWNER TO 新属主命令: ALTER TRIGGER描述: 改变一个触发器的定义语法:ALTER TRIGGER 名字 ON 表 RENAME TO 新名字命令: ALTER TYPE描述: 改变一个类型的定义语法:ALTER TYPE 名字 OWNER TO 新属主命令: ALTER USER描述: 改变一个数据库用户语法:ALTER USER name WITH option . where option can be: CREATEDB | NOCREATEDB | CREATEUSER | NOCREATEUSER | ENCRY
27、PTED | UNENCRYPTED PASSWORD password | VALID UNTIL abstimeALTER USER name RENAME TO newnameALTER USER name SET parameter TO | = value | DEFAULT ALTER USER name RESET parameter命令: ANALYZE描述: 收集关于数据库的统计数字语法:ANALYZE VERBOSE 表 (字段 , . ) 命令: BEGIN描述: 开始一个事务块语法:BEGIN WORK | TRANSACTION 事物模式 , . 事物模式为下面之一:
28、 ISOLATION LEVEL SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED READ WRITE | READ ONLY命令: CHECKPOINT描述: 强行交易日志检查语法:CHECKPOINT命令: CLOSE描述: 关闭一个游标语法:CLOSE 名字命令: CLUSTER描述: 根据一个索引建表簇语法:CLUSTER 索引名字 ON 表名CLUSTER 表名CLUSTER命令: COMMENT描述: 定义或改变一个对象的评注语法:COMMENT ONTABLE object_name |COLUMN table_name.column_name |AGGREGATE agg_name (agg_type) |CAST (sourcetype AS targettype) |CONSTRAINT constraint_name ON table_name |C
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2