中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

redis里顯示key大小的shell腳本

發布時間:2020-08-09 21:27:09 來源:ITPUB博客 閱讀:319 作者:chenfeng 欄目:關系型數據庫

redis里可以顯示key大小的shell腳本,很方便的定位redis里有哪些大key。

腳本內容如下:

# cat redis-print-keysize.sh

#!/usr/bin/env bash


human_size() {

        awk -v sum="$1" ' BEGIN {hum[1024^3]="Gb"; hum[1024^2]="Mb"; hum[1024]="Kb"; for (x=1024^3; x>=1024; x/=1024) { if (sum>=x) { printf "%.2f %s\n",sum/x,hum[x]; break; } } if (sum<1024) print "1kb"; } '

}


#redis_cmd='redis-cli'


redis_cmd='redis-cli -n 10'



# get keys and sizes

for k in `$redis_cmd keys "*"`; do key_size_bytes=`$redis_cmd debug object $k | perl -wpe 's/^.+serializedlength:([\d]+).+$/$1/g'`; size_key_list="$size_key_list$key_size_bytes $k\n"; done


# sort the list

sorted_key_list=`echo -e "$size_key_list" | sort -n`


# print out the list with human readable sizes

echo -e "$sorted_key_list" | while read l; do

    if [[ -n "$l" ]]; then

        size=`echo $l | perl -wpe 's/^(\d+).+/$1/g'`; hsize=`human_size "$size"`; key=`echo $l | perl -wpe 's/^\d+(.+)/$1/g'`; printf "%-10s%s\n" "$hsize" "$key";

    fi

done



腳本說明:

掃描哪個db,修改腳本里對應redis_cmd的位置,加入 -n選項,例如:


# redis-cli info  keyspace | grep db10

db10:keys=6,expires=0,avg_ttl=0


顯示db10的里的6個key的大小:

將redis_cmd='redis-cli'改為redis_cmd='redis-cli -n 10'

運行:

# ./redis_key_sizes.sh

1kb        prod_domain_error

1kb        prod_solr_error

200.86 Kb  test_buffer_error

241.55 Kb  prod_comment_error

19.20 Mb   prod_ref_15_error

70.55 Mb   prod_ref_151_error


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

小金县| 博兴县| 祥云县| 资中县| 喀什市| SHOW| 福州市| 阿合奇县| 永安市| 喀喇沁旗| 平原县| 乐都县| 胶州市| 遂川县| 五指山市| 祁东县| 南通市| 潼关县| 紫阳县| 睢宁县| 抚顺县| 石家庄市| 双柏县| 青浦区| 旌德县| 玛沁县| 贵阳市| 黔江区| 河间市| 武安市| 雷州市| 龙游县| 来宾市| 天峨县| 神农架林区| 青州市| 新津县| 资溪县| 乌鲁木齐市| 布尔津县| 丰台区|