GBase 8s效能調優流程

2021-10-23 13:47:53 字數 1959 閱讀 7400

在實際的生產執行環境中,很多客戶現場都看到開發人員和系統管理人員遇到很多有關於gbase 8s 資料庫引起的效能問題,進而被多次問起如何進行gbase 8s 資料庫效能調優,

包括:首先執行下面的初始檢查:

– 獲取直接使用者的使用反饋,確定效能目標和範圍。

– 獲取效能表現好與壞時的作業系統、資料庫、應用統計資訊。

– 對資料庫做一次全面健康檢查。

根據收集的資訊,以及對應用特性的了解,構建效能概念模型,明確效能瓶頸所在,以及導致效能的根本原因。

– 首先應該排除作業系統、硬體資源造成的瓶頸。

– 然後針對資料庫系統效能進行分析

– 必要時,還需要檢查應用日誌,因為系統效能問題也可能由於應用非 sql 部分造成瓶頸。

提出一系列針對的優化措施,並根據它們對效能改善的重要程度排序,然後逐一加以實施。不要一次執行所有的優化措施,必須逐條嘗試,逐步對比。

通過獲取直接使用者的反饋驗證調節是否已經產生預期的效果,否則,需要重新提煉效能概念模型,直到對應用特性了解進一步準確。

重複上述,直到效能達到目標或由於客觀約束無法進一步優化。

找到 cpu 占用最高的 sql

在 sysmaster 庫中執行

select sqx_estcost, sqx_sqlstatement 

from syssqexplain

order

by sqx_estcost desc

注意:此時看到的僅僅是當前正在執行的 sql

需要多看幾次

onstat 命令

onstat -g act 得到當前正在執行的 sql

根據 rstcb 列

onstat -u |

grep 57c68220

從第三列 sessid 得到 session

onstat -g ses session 即可得到當時正在執行的 sql

一般多找幾個 threads 後,就基本可以確定問題 sql

得到 sql 後,利用 set explain on 分析其查詢路徑,看是否未利用索引,在對大表進行全表掃瞄,根據需要建立相應索引。

得到全表掃瞄較多的表

-- 系統順序掃瞄較多時,被多次順序掃瞄的大表,如果有,應該考慮增加索引

select

first

5 substr(t.tabname,0,

20) tabname,

substr(dbsname,0,

10) dbname,

nrows*rowsize*p.seqscans costs,

substr(p.seqscans,0,

8) seqscans,

substr(nrows,0,

8) nrows

from sysmaster:sysptprof p , systables t,sysmaster:sysprofile s

where p.tabname = t.tabname

and p.seqscans > s.

value/50

and s.name =

'seqscans'

--and s.value > 2000000 and nrows > 2000

orderby3

desc

利用 onstat –g ses 0 –r 5/ onstat –g stm 的輸出資訊,根據表名,找到可能的 sql 語句。由於以上獲取 sql 的辦法是有侷限的,如果無法獲取,建議通過檢視應用日誌或聯絡開發人員檢視源**的方式來找到。

利用 set explain on 分析其查詢路徑,確認是在對錶進行全表掃瞄,根據需要建立相應索引。

GBase8g向GBase8s資料庫進行遷移

gbase8g向gbase8s資料庫進行遷移背景 因業務需求,需要將以往專案使用的gbase8g資料庫中的資料,遷移到gbase8s資料庫中。在此記錄遷移遇到的一些問題和解決方法。目標將gbase8g的資料成功遷移到gbase8t後,原有程式功能可以正常執行 問題列表 自定義排序 1 問題描述 由於...

linux安裝GBase8s資料庫

環境需求 記憶體2g 硬碟80g 處理器2,centos6.6映象 初始化指令碼 一 資料庫軟體安裝 1 新建informix組和使用者,並為informix使用者設定密碼 2 上傳8s安裝包並完成解壓 3 使用root使用者執行.ids install進行軟體安裝。4 一路回車,到license確...

GBase8s 檢視邏輯日誌使用情況

使用資料庫管理員使用者執行onstat l命令用於監控物理日誌及邏輯日誌的使用情況,需關注已使用的邏輯日誌是否及時備份。gbasedbt node13 onstat l your evaluation license will expire on 2021 08 27 00 00 00 gbase ...