管理使用Greenplum集群
阿新 • • 發佈:2018-05-11
greenplum1. 管理使用Greenplum集群
1.1 啟動Greenplum數據庫
$ gpstart -a
1.2 對於要求重啟數據庫生效
$ gpstop -r
1.3 僅重新載入更改配置文件生效
$ gpstop -u
1.4 維護模式啟動Master
使用-m模式運行gpstart:
$ gpstart -m
以維護模式連接到Master進行目錄維護。例如:
$ PGOPTIONS=‘-c gp_session_role=utility‘ psql postgres
在完成管理任務後,停止處於維護模式的額Master。然後以生產模式重啟它。
$ gpstop -mr
1.5 停止Greenplum數據庫
### 停止Greenplum數據庫
$ gpstop
### 快速模式停止Greenplum數據庫
$ gpstop -M fast
激活備庫流程
$ gpactivatestandby -d $MASTER_DATA_DIRECTORY
用-f 選項運行gpstate來檢查狀態:
$ gpstate -f
在後備Master主機上,移動或者移除數據目錄gpseg-1。這個例子移動該目錄:
$ mv /data/master/gpseg-1 /data/master/backup_gpseg-1
在新主庫上,初始化一個後備Maste
$ gpinitstandby -s smdw
2. 訪問數據庫
表 1. 最常用的客戶端應用
名稱 | 用法 |
---|---|
createdb | 創建一個新數據庫 |
createlang | 定義一種新的過程語言 |
createuser | 定義一個新的數據庫角色 |
dropdb | 移除一個數據庫 |
droplang | 移除一種過程語言 |
dropuser | 移除一個角色 |
psql | PostgreSQL交互式終端 |
reindexdb | 對一個數據庫重建索引 |
vacuumdb | 對一個數據庫進行垃圾收集和分析 |
創建用戶
CREATE USER 用戶名 WITH PASSWORD ‘密碼‘ alter user gpadmin encrypted password ‘gpadmin‘;
創建模式
CREATE SCHEMA myschema;
刪除模式
DROP SCHEMA myschema;
查詢當前連接
psql -c "select * from pg_stat_activity;"
查看數據庫
psql -c "select pg_size_pretty(pg_database_size(‘test‘));"
表占用空間
psql -c "select pg_size_pretty(pg_relation_size(‘schema.test‘));"
表統計
select relname from pg_class t where t.relname like ‘ods%‘;
select relname from pg_class t where t.relname like ‘kn%‘;
統計資源
select gp_segment_id,count(*) from test group by 1 ;
查看實例配置和狀態
select * from gp_segment_configuration order by 1;
收集統計信息,回收空間
定期使用回收垃圾和收集統計信息,尤其在大數據量刪除,導入以後,非常重要
Vacuum analyze tablename
進程監控:
select * from pg_stat_activity where waiting =‘t‘ ORDER BY current_query; select * from pg_stat_activity where waiting =‘t‘ ORDER BY sess_id;
select * from pg_stat_activity where waiting =‘f‘ ORDER BY current_query; select * from pg_stat_activity where waiting =‘f‘ ORDER BY sess_id;
select from pg_tablespace;
select from pg_filespace;
查看數據分布
select * from pg_filespace_entry;
SELECT spcname, fsname,fsedbid,fselocation FROM pg_tablespace pgts, pg_filespace pgfs,pg_filespace_entry pgfse WHERE pgts.spcfsoid=pgfse.fsefsoid AND pgfse.fsefsoid=pgfs.oid ORDER BY 1,3;
查看日誌級別
控制寫到服務器日誌裏的信息的詳細程度。有效值是 DEBUG5, DEBUG4,DEBUG3,DEBUG2, DEBUG1,INFO,NOTICE, WARNING ,ERROR,LOG, FATAL,和 PANIC。 每個級別都包含它後面的級別。越靠後的數值發往服務器日誌的信息越少。 缺省是 NOTICE。請註意 LOG 和 client_min_messages 裏面的同名級別優先級不同。 只有超級用戶可以修改這個設置。
show log_min_messages;
這個選項控制那些信息發送到客戶端。 有效的數值是 DEBUG5,DEBUG4, DEBUG3,DEBUG2, DEBUG1,LOG,NOTICE, WARNING 和 ERROR。 每個級別包含所有它後面的級別,級別越靠後,發送的信息越少。 缺省是 NOTICE。這裏的 LOG 和 log_min_messages 裏面的有不同的級別。
show client_min_messages;
查看數據庫備份
select pg_start_backup(‘backup baseline‘);
select pg_stop_backup();
常看數據庫.conf配置
show all
查看當前日期屬於一年中第幾周
select EXTRACT(week from TIMESTAMP ‘2018-05-11‘);
管理使用Greenplum集群