GP常用命令整理_第1頁
GP常用命令整理_第2頁
GP常用命令整理_第3頁
GP常用命令整理_第4頁
GP常用命令整理_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、Greenplum 日常簡明維護手冊1. 數(shù)據(jù)庫啟動:gpstart 常用參數(shù): -a : 直接啟動,不提示終端用戶輸入確認 -m:只啟動master 實例,主要在故障處理時使用訪問單個數(shù)據(jù)實例: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

2、. 數(shù)據(jù)庫停止:gpstop:常用可選參數(shù):-a:直接停止,不提示終端用戶輸入確認 -m:只停止master 實例,與gpstart m 對應(yīng)使用 -f:停止數(shù)據(jù)庫,中斷所有數(shù)據(jù)庫連接,回滾正在運 行的事務(wù)-u:不停止數(shù)據(jù)庫,只加載pg_hba.conf 和postgresql.conf中運行時參數(shù),當(dāng)改動參數(shù)配置時候使用。連接數(shù),重啟3. 查看實例配置和狀態(tài)select * from gp_segment_configuration order by content ; select * from pg_filespace_entry ;主要字段說明:Content:該字段相等的兩個實例,是

3、一對(primary instance)和(mirror Instance) Isprimary:實例是否作為primary instance 運行 Valid:實例是否有效,如處于false 狀態(tài),則說明該實例已經(jīng)down 掉。 Port:實例運行的端口 Datadir:實例對應(yīng)的數(shù)據(jù)目錄1. gpstate :顯示Greenplum數(shù)據(jù)庫運行狀態(tài),詳細配置等信息常用可選參數(shù):-c:primary instance 和 mirror instance 的對應(yīng)關(guān)系 -m:只列出mirror 實例的狀態(tài)和配置信息 -f:顯示standby master 的詳細信息該命令默認列出數(shù)據(jù)庫運行狀態(tài)匯總

4、信息,常用于日常巡檢。4. 查看用戶會話和提交的查詢等信息select * from pg_stat_activity 該表能查看到當(dāng)前數(shù)據(jù)庫連接的IP 地址,用戶名,提交的查詢等。另外也可以在master 主機上查看進程,對每個客戶端連接,master 都會創(chuàng)建一個進程。ps -ef |grep -i postgres |grep -i con 殺進程:Linux: kill -11 PID Sql : pg_cancel_backend(pid)ps ef |grep i postgre |grep i con5. 查看數(shù)據(jù)庫、表占用空間select pg_size_pretty(pg_r

5、elation_size('schema.tablename');select pg_size_pretty(pg_database_size('databasename);分區(qū)表: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 必須在數(shù)據(jù)庫所對應(yīng)的

6、存儲系統(tǒng)里,至少保留30%的自由空間,日常巡檢,要檢查存儲空間的剩余容量。6. 收集統(tǒng)計信息,回收空間定期使用Vacuum analyze tablename 回收垃圾和收集統(tǒng)計信息,尤其在大數(shù)據(jù)量刪除,導(dǎo)入以后,非常重要將delete 或 update 的“舊”數(shù)據(jù)放到 Rollback Segment,與表分開存放。并發(fā)事務(wù)為了保證數(shù)據(jù)一致性,需要從Rollback Segment 上恢復(fù)數(shù)據(jù)。Greenplum:“舊數(shù)據(jù)”與表存放在一起,對舊的數(shù)據(jù)做了標志。并發(fā)事務(wù)通過transaction ID(XID)判斷數(shù)據(jù)是否可用系統(tǒng)表也是需要進行vaccum:#!/bin/bashDBNAME

7、="databasename"VCOMMAND="VACUUM ANALYZE"#VCOMMAND="VACUUM FULL ANALYZE"psql -tc "select '$VCOMMAND' | ' pg_catalog.' | relname | '' from pg_classa,pg_namespace b where a.relnamespace=b.oid and b.nspname= 'pg_catalog' anda.relkind=

8、9;r'" $DBNAME | psql -a $DBNAME長期沒有vaccum 的大表,使用重建表/drop 表的方式,消除垃圾空間。Alter table xxx rename to yyyy.7. 查看數(shù)據(jù)分布情況兩種方式:l Select gp_segment_id,count(*) from tablename group by 1 ; 如數(shù)據(jù)分布不均勻,將發(fā)揮不了并行計算的優(yōu)勢,嚴重影響性能。8. 實例恢復(fù):gprecoverseg通過gpstate 或gp_segment_configuration 發(fā)現(xiàn)有實例down 掉以后,使用該命令進行回復(fù),恢復(fù)時候不需

9、要停機,不影響應(yīng)用9. 查看鎖信息:SELECT locktype, database, c.relname, l.relation, l.transactionid, l.transaction, l.pid, l.mode, l.granted, a.current_queryFROM pg_locks l, pg_class c, pg_stat_activity aWHERE l.relation=c.oid AND l.pid=cpidORDER BY c.relname;主要字段說明:relname: 表名locktype、mode 標識了鎖的類型 MVCC: 讀寫相互不

10、影響 select / insert update delete 避免死鎖: delete 和 update 是 表級排他EXCLUSIVE鎖。 10. 數(shù)據(jù)庫備份 gp_dump, pg_dump常用參數(shù):-s: 只導(dǎo)出對象定義(表結(jié)構(gòu),函數(shù)等) -n: 只導(dǎo)出某個schemagp_dump 默認在master 的data 目錄上產(chǎn)生這些文件:gp_catalog_1_<dbid>_<timestamp> :關(guān)于數(shù)據(jù)庫系統(tǒng)配置的備份文件gp_cdatabase_1_<dbid>_<timestamp>:數(shù)據(jù)庫創(chuàng)建語句的備份文件gp_dump_1

11、_<dbid>_<timestamp>:數(shù)據(jù)庫對象ddl語句gp_dump_status_1_<dbid>_<timestamp>:備份操作的日志在每個segment instance 上的data目錄上產(chǎn)生的文件:gp_dump_0_<dbid>_<timestamp>:用戶數(shù)據(jù)備份文件gp_dump_status_0_<dbid>_<timestamp>:備份日志11. 數(shù)據(jù)庫恢復(fù) gp_restore pg_restore必選參數(shù):-gp-k=key :key 為gp_dump 導(dǎo)出來的文件的

12、后綴時間戳 -d dbname :將備份文件恢復(fù)到dbname 12. Master主機硬件故障時,如何切換至Stand by Master,切換成功后是否需要進行數(shù)據(jù)檢查或恢復(fù)等 HA答:在stand by master 主機上,運行 gpactivatestandby -d /gpdata 進行切換。由于Master 只存儲系統(tǒng)元數(shù)據(jù)信息,切換成功后,一般不需要進行數(shù)據(jù)檢查和恢復(fù)。日常巡檢中要檢查Stand by master 是否同步,可以通過表gp_master_mirroring 確認,如果發(fā)現(xiàn)不同步,可以通過命令:gpinitstandby -s standby_master_ho

13、stname n 使得master和standby 重新同步。13. 當(dāng)Master主機硬件故障排除時,如何由Stand by切換至原Master主機。答:1,在standby master運行: gpinitstandby s original_master_hostname 2,在standby master 上運行:gpstop m, 注意這里只停止master 實例3,在原來的maste上運行:gpactivatestandby -d /gpdata。4,在原來的master上運行:gpinitstandby -s original_standby_master_hostname14.

14、 日志: master 和 segment 上分別有日志:$DATADIR/pg_log/*.csv$DATADIR:select * from pg_filespace_entry ; 使用外部表將日志導(dǎo)入數(shù)據(jù)庫,進行分析。使用xfs 文件系統(tǒng)。后臺存儲目錄結(jié)構(gòu):base 下每個目錄,對應(yīng) select oid ,* from pg_database ;select relfilenode from pg_class : ;15. gpconfig : 4.0 新增加管理工具,參數(shù)配置工具;-c | -change <param_name>-v | -value value-m

15、| -mastervalue master_value-s | -show <param_name>gpconfig -c max_connections -v 100 -m 1016. gpcheckperf :網(wǎng)絡(luò):gpcheckperf -f hostfile_gpchecknet_ic1 -r N netperf -d /tmp磁盤IOgpcheckperf -f hostfile_gpcheckperf -d /data1 -d /data2 -r dlinux DD 命令:dd if=/dev/zero of=/vol2/a.test bs=256k count=161000 dd if=/vol2/b.test of=/dev/null bs=256k count=16000017. gpssh : 同時登陸到多個機器上,進行操作Gpssh -h sdw1 h sdw2 -h sdw3 18. gp_toolkit: 管理工具包:u gp_bloat_diag u gp_stats_missing更多詳細信息參見GpadminGuide appendix I ;pg_sta

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論