常見資料庫最佳化記錄
指標
-
SQL平均響應時間變短
-
最佳化前: 資料庫平均響應時間500ms
-
最佳化目標: 資料庫平均響應時間200ms
-
資料庫伺服器CPU佔用率變少
-
最佳化前: 資料庫高峰期CPU使用率70%
-
最佳化目標: 資料庫高峰期CPU使用率50%
-
資料庫伺服器IO使用率變低
-
最佳化前: 資料庫IO WAIT為30%
-
最佳化目標: 資料庫IO WAIT低於10%
資料庫引數最佳化
主流資料庫架構都有如下的共同點:
-
資料快取
-
SQL解析區
-
排序記憶體
-
REDO及UNDO
-
鎖、LATCH、MUTEX
-
監聽及連線
-
檔案讀寫效能
接下來我們根據不同的資料庫調整引數以使資料庫達到最佳效能。
ORACLE
引數分類 | 引數名 | 引數值 | 備註 |
---|---|---|---|
資料快取 | SGA_TAGET、MEMORY_TARGET | 實體記憶體70-80% | 越大越好 |
資料快取 | DB_CACHE_SIZE | 實體記憶體70-80% | 越大越好 |
SQL解析 | SHARED_POOL_SIZE | 4-16G | 不建議設定過大 |
監聽及連線 | PROCESSES、SESSIONS、OPEN_CURSORS | 根據業務需求設定 | 一般為業務預估連線數的120% |
其他 | SESSION_CACHED_CURSORS | 大於200 | 軟軟解析 |
MYSQL(INNODB)
引數分類 | 引數名 | 引數值 | 備註 |
---|---|---|---|
資料快取 | INNODB_BUFFER_POOL_SIZE | 實體記憶體50-80% | 一般來說越大效能越好 |
日誌相關 | Innodb_log_buffer_size | 16-32M | 根據執行情況調整 |
日誌相關 | sync_binlog | 1、100、0 | 1安全性最好 |
監聽及連線 | max_connections | 根據業務情況調整 | 可以預留一部分值 |
檔案讀寫效能 | innodb_flush_log_at_trx_commit | 2 | 安全和效能的折中考慮 |
其他 | wait_timeout,interactive_timeout | 28800 | 避免應用連線定時中斷 |
POSTGRES
引數分類 | 引數名 | 引數值 | 備註 |
---|---|---|---|
資料快取 | SHARED_BUFFERS | 實體記憶體10-25% |
|
資料快取 | CACHE_BUFFER_SIZE | 實體記憶體50-60% |
|
日誌相關 | wal_buffer | 8-64M | 不建議設定過大過小 |
監聽及連線 | max_connections | 根據業務情況調整 | 一般為業務預估連線數的120% |
其他 | maintenance_work_mem | 512M或更大 |
|
其他 | work_mem | 8-16M | 原始配置1M過小 |
其他 | checkpoint_segments | 32或者更大 |
|
達夢資料庫
引數分類 | 引數名 | 引數值 | 備註 |
---|---|---|---|
資料快取 | MEMROY_TARGET、MEMROY_POOL | 實體記憶體90% |
|
資料快取 | BUFFER | 實體記憶體60% | 資料快取 |
資料快取 | MAX_BUFFER | 實體記憶體70% | 最大資料快取 |
監聽及連線 | max_sessions | 根據業務需求設定 | 一般為業務預估連線數的120%
|
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30327022/viewspace-2914891/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 常見資料庫資料庫
- 資料庫常見問題資料庫
- DNS常見資源記錄型別詳解DNS型別
- composer使用常見問題記錄
- 資料庫常見面試題總結資料庫面試題
- yii2 資料庫常見查詢資料庫
- 平時常見關係型資料庫資料庫
- 10個常見的資料庫安全問題資料庫
- oracle資料庫常見故障和解決難度Oracle資料庫
- SQL Server資料庫恢復常見問題SQLServer資料庫
- 常見資料集
- 資料庫mysql學習筆記記錄資料庫MySql筆記
- AndroidStudio中各種常見快捷鍵記錄Android
- DNS解析常見問題:如何新增A記錄?DNS
- 20個資料庫常見面試題講解資料庫面試題
- 【推薦】常見的Python資料視覺化庫Python視覺化
- 常見的6個Python資料視覺化庫!Python視覺化
- 記錄一個利用資料庫引擎格式化異常sql的思路資料庫SQL
- 為VNPY增加資料庫記錄交易資料功能資料庫
- MySQL 億級資料資料庫最佳化方案測試-銀行交易流水記錄的查詢MySql資料庫
- SQL Server 資料庫基本記錄(一)SQLServer資料庫
- 向量資料庫Chroma學習記錄資料庫
- cmdb 查詢資料庫操作記錄資料庫
- WindowsServer 2012資料庫遷移記錄WindowsServer資料庫
- SQL Server 資料庫基本記錄(二)SQLServer資料庫
- SQL Server 資料庫基本記錄(三)SQLServer資料庫
- Realm 升級資料庫,為表新增新的Field遇到的異常記錄資料庫
- 關於PaddleSharp GPU使用 常見問題記錄GPU
- 【資料庫資料恢復】ORACLE常見資料災難&資料恢復可能性資料庫資料恢復Oracle
- 資料庫面試時常見的26個問題資料庫面試
- 常見MongoDB資料庫操作產生的鎖總結MongoDB資料庫
- DNS解析常見問題:什麼是AAAA記錄?如何新增AAAA記錄?DNS
- 向量資料庫之Lancedb學習記錄資料庫
- thinkphp6多資料庫配置記錄PHP資料庫
- Python常見資料框操作①Python
- SQL 常見資料型別SQL資料型別
- 大資料常見問題大資料
- mysql常見資料型別MySql資料型別