久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Postgresql性能相關操作系統及數據庫說明

146次閱讀
沒有評論

共計 3224 個字符,預計需要花費 9 分鐘才能閱讀完成。

本篇內容主要講解“Postgresql 性能相關操作系統及數據庫說明”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓丸趣 TV 小編來帶大家學習“Postgresql 性能相關操作系統及數據庫說明”吧!

--pg  性能調整相關
buffer cache  直接對磁盤進行操作的數據會緩存到 buffer cache
page cache  文件系統中的數據則交給 page cache 進行緩存
--cache 不自動回收,數據庫需要內存時,cache 可以很快被回收,如果沒用到交換分區,可說明內存夠用
- 釋放緩存
echo 1   /proc/sys/vm/drop_caches
--vmstat  虛擬內存、進程、cpu 等整體情況
-r  當前隊列中有幾個進程在等待
-b  當前有多少個進程進入不可中斷式睡眠狀態
-swpd  已使用的交換分區的大小
-free  空閑內存大小
-buff  已使用的 buffer 大小
--cache  已使用的 page cache 大小
-si/so  從磁盤交換到 swap 分區和從 swap 分區交換的磁盤大小
-bi/bo  從磁盤讀取和寫入到磁盤的大小,單位 blocks/s
-in  每秒被中斷的進程數
-cs  每秒多少個 cpu 進程在進進出出
--iostat  監控磁盤輸入輸出
--mpstat cpu 詳細性能信息
--sar  默認保存 28 天,目錄  /var/log/sa  修改  /etc/sysconfig/sysstat
-- 查看某一時間段
sar -q -f /var/log/sa/sa15 -s 22:00:00 -e 23:00:00
sar -q # 匯總 cpu 狀況
sar -b # 匯總 io 狀況
--linux I/O  調度
## 查看當前支持的調度算法
dmesg | grep -i scheduler
--cfg  絕對公平調度算法  ,默認
--noop  電梯調度算法   適合 ssd
--deadline  絕對保障算法  
-- 查看當前磁盤 sda 的 io 調度算法
cat /sys/block/sda/queue/scheduler
-- 臨時修改
echo noop   /sys/block/sda/queue/scheduler
## 磁盤預讀扇區
/sbin/blockdev --getra /dev/sda # 默認 256,可設置 16384 或更大
/sbin/blockdev --setra 16384 /dev/sda
echo 16384 /sys/block/sda/queue/read_ahead_kb
## 禁用 swap
swapoff -a 
swapon -a
-- 透明大頁,要關閉
cat /sys/kernel/mm/transparent_hugepage/enabled
echo never   /sys/kernel/mm/transparent_hugepage/enabled
##numa guanbi 
numactl -hardware
numastat
#可編輯  /etc/grub.conf  行末加 numa=off 禁用
## 數據庫方面
-- 統計信息
pg_stat_database
-- 緩存命中率,如果低于 1,可嘗試調整 shared_buffers
select blks_hit::float/(blks_read + blks_hit) as cache_hit_ratio from pg_stat_database where datname=current_database();
-- 事務提交率, 低于 1,檢查是否死鎖或其他超時太多
select xact_commit::float/(xact_commit +xact_rollback) as successful_xact_ratio from pg_stat_database where datname=current_database();
-- 優化后建議執行以下語句,方面對比優化前后數據
pg_stat_reset()
-- 表級統計信息
pg_stat_user_tables
-- 索引使用率
select sum(idx_scan)/(sum(idx_scan) + sum(seq_scan)) as idx_scan_ratio from pg_stat_all_tables where schemaname= your_schema 
select relname,idx_scan::float/(idx_scan+seq_scan+1) as idx_scan_ratio from stat_all_tables where schemaname= your schema  order by idx_scan_ratio asc;
-- 語句級統計信息   通過 pg_stat_statements ,postgres  日志、auto_explain  來獲取
pg_stat_statements
shared_preload_libraries= pg_stat_statements 
pg_stat_statements.track=all 
create extension pg_stat_statements;
-- 查詢平均執行時間最長的 3 條查詢
select calls,total_time/calls as avg_time,left(query,80) from pg_stat_statements order by 2 desc limit 3;
-- 查看執行計劃  analyze 可以得到真正執行計劃
explain analyze select * from tb1;
-- 除了 analyze 選項,可以使用其他
explain (analyze on ,timing on,verbose on,buffers on) select * from tb1;
--session  級別  log_xxx_stat 判斷問題, 使用的系統資源等,set client_min_messages=log;
set log_parser_stats=on;
set log_planner_stats=on;
set client_min_messages=log;
set log_parser_stats=off;
set log_planner_stats=off;
set log_statement_stats=on;
-- 重建索引
create unique index concurrently on mytb1 using btree(id);
--id  字段有兩索引
select schemaname,relname,indexrelanme,pg_relation_size(indexrelid) as index_size,idx_scan,idx_tup_read,idx_tup_fetch from pg_stat_user_indexes where indexrelname in (select indexname from pg_indexes where schemaname= public  and tablename= mytb1 
-- 開啟事務刪除主機索引,同時將第二索引更新為主鍵約束
begin;
alter table mytb1 drop constraint mytb1_pkey;
alter table mytb1 add constraint mytb1_id_idx primary key using index mytb1_id_idx;
-- 對于大規模,可通過 pg_repack 工具進行定時索引重建 

到此,相信大家對“Postgresql 性能相關操作系統及數據庫說明”有了更深的了解,不妨來實際操作一番吧!這里是丸趣 TV 網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-24發表,共計3224字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 明溪县| 平和县| 五指山市| 塔城市| 玉溪市| 屏山县| 菏泽市| 揭东县| 讷河市| 岚皋县| 旬邑县| 高唐县| 巴青县| 巧家县| 长春市| 丹寨县| 高平市| 渑池县| 宁强县| 台北市| 河西区| 永城市| 新泰市| 门头沟区| 吴江市| 公安县| 垫江县| 赤水市| 英吉沙县| 新建县| 莆田市| 大洼县| 怀远县| 无锡市| 镶黄旗| 商洛市| 莱州市| 玉田县| 兴业县| 溧阳市| 罗山县|