GreenPlum - 常用数据库命令

2019-05-24 20:14

Greenplum 日常简明维护手册

1. 数据库启动:gpstart

常用参数: -a : 直接启动,不提示终端用户输入确认

-m:只启动master 实例,主要在故障处理时使用

访问单个数据实例:

PGOPTIONS='-c gp_session_role=utility' psql template1 -p 5432 启动某个segment instance : pg_ctl stop/start -D /datadir/

取端口号:

select * from gp_segment_configuration

启动以后会在/tmp/ 下生成一个.lock 隐藏文件,记录主进程号。

2.

数据库停止:gpstop:

常用可选参数:-a:直接停止,不提示终端用户输入确认

-m:只停止master 实例,与gpstart –m 对应使用 -f:停止数据库,中断所有数据库连接,回滚正在运

行的事务

-u:不停止数据库,只加载pg_hba.conf 和postgresql.conf中

运行时参数,当改动参数配置时候使用。

连接数,重启

3.

查看实例配置和状态

select * from gp_segment_configuration order by content ;

select * from pg_filespace_entry ;

主要字段说明:

Content:该字段相等的两个实例,是一对P(primary instance)和M(mirror Instance)

Isprimary:实例是否作为primary instance 运行

Valid:实例是否有效,如处于false 状态,则说明该实例已经down 掉。 Port:实例运行的端口

Datadir:实例对应的数据目录

4.

gpstate :显示Greenplum数据库运行状态,详细配置等信息 常用可选参数:-c:primary instance 和 mirror instance 的对应关系

-m:只列出mirror 实例的状态和配置信息

-f:显示standby master 的详细信息 该命令默认列出数据库运行状态汇总信息,常用于日常巡检。

5.

查看用户会话和提交的查询等信息

select * from pg_stat_activity 该表能查看到当前数据库连接的IP 地址,用户名,提交的查询等。另外也可以在master 主机上查看进程,对每个客户端连接,master 都会创建一个进程。ps -ef |grep -i postgres |grep -i con

杀进程:Linux: kill -11 PID

Sql : pg_cancel_backend(pid)

ps –ef |grep – i postgre |grep –i con

6.

查看数据库、表占用空间 查询表大小:

select pg_size_pretty(pg_relation_size('schema.tablename')); 例: select pg_size_pretty(pg_relation_size('iidp_code.cf_load_state')); 表和索引

select pg_size_pretty(pg_total_relation_size('iidp_code.cf_load_state '));

查询数据库大小

select pg_size_pretty(pg_database_size('databasename')); 例:select pg_size_pretty(pg_database_size('BDDJ_S_T'));--单个库

select datname,pg_size_pretty(pg_database_size(datname)) from pg_database; --所

有库

分区表:

Select * from pg_partitions where …

查某个schema 占用的空间:

select pg_size_pretty(pg_relation_size(tablename)) from pg_tables t inner join pg_namespace d on t.schemaname=d.nspname group by d.nspname

必须在数据库所对应的存储系统里,至少保留30%的自由空间,日常巡检,要检查

存储空间的剩余容量。

7.

收集统计信息,回收空间

定期使用Vacuum analyze tablename 回收垃圾和收集统计信息,尤其在大数据量删除,导入以后,非常重要

将delete 或 update 的“旧”数据放到 Rollback Segment,与表分开存放。并发事务为了保证数据一致性,需要从Rollback Segment 上恢复数据。

Greenplum:“旧数据”与表存放在一起,对旧的数据做了标志。并发事务通过

transaction ID(XID)判断数据是否可用

系统表也是需要进行vacuum: #!/bin/bash


GreenPlum - 常用数据库命令.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:床头灯系列3000词、5000词和6500词书目

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: