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

MySQL中Innodb表Data free怎么計算

137次閱讀
沒有評論

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

這篇文章給大家分享的是有關 MySQL 中 Innodb 表 Data free 怎么計算的內容。丸趣 TV 小編覺得挺實用的,因此分享給大家做個參考,一起跟隨丸趣 TV 小編過來看看吧。

大概是空閑 extent 的大小。

ST_FIELD_INFO tables_fields_info[]=
 { DATA_FREE , MY_INT64_NUM_DECIMAL_DIGITS, MYSQL_TYPE_LONGLONG, 0,
 (MY_I_S_MAYBE_NULL | MY_I_S_UNSIGNED),  Data_free , OPEN_FULL_TABLE},
tables_fields_info[12] 就是 Data_free
ST_SCHEMA_TABLE schema_tables[]=
 { TABLES , tables_fields_info, create_schema_table, 
 get_all_tables, make_old_format, get_schema_tables_record, 1, 2, 0,
 OPTIMIZE_I_S_TABLE},
填充方式 get_schema_tables_record 函數 
 其中有一句
table- field[12]- store((longlong) file- stats.delete_length, TRUE);
實際就是  file- stats.delete_length

其中 file- stats.delete_length 調用進行取值

ha_innobase::info_low
avail_space = fsp_get_available_space_in_free_extents(ib_table- space);
stats.delete_length = avail_space * 1024;
uintmax_tfsp_get_available_space_in_free_extents( const fil_space_t* space)
 ut_ad(space- n_pending_ops   0);
 ulint size_in_header = space- size_in_header;// 總的頁面大小
 if (size_in_header   FSP_EXTENT_SIZE) { // 碎片頁   直接返回 0
 return(0); /* TODO: count free frag pages and
 return a value based on that */
 } /* Below we play safe when counting free extents above the free limit:
 some of them will contain extent descriptor pages, and therefore
 will not be free extents */
 ut_ad(size_in_header  = space- free_limit);
 ulint n_free_up =
 (size_in_header - space- free_limit) / FSP_EXTENT_SIZE; //(總的頁面大小 - 已經初始化大小)/EXTENT SIZE
 page_size_t page_size(space- flags); if (n_free_up   0) {
 n_free_up--;
 n_free_up -= n_free_up / (page_size.physical()
 / FSP_EXTENT_SIZE); // 減去 extent 管理塊?
 } /* We reserve 1 extent + 0.5 % of the space size to undo logs
 and 1 extent + 0.5 % to cleaning operations; NOTE: this source
 code is duplicated in the function above! */
 ulint reserve = 2 + ((size_in_header / FSP_EXTENT_SIZE) * 2) / 200;
 ulint n_free = space- free_len + n_free_up; if (reserve   n_free) { return(0);
 } return(static_cast uintmax_t (n_free - reserve)
 * FSP_EXTENT_SIZE * (page_size.physical() / 1024));
}

感謝各位的閱讀!關于“MySQL 中 Innodb 表 Data free 怎么計算”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-27發表,共計2038字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 潼南县| 信丰县| 澄城县| 额济纳旗| 永康市| 普兰店市| 嵊州市| 镇巴县| 调兵山市| 正安县| 南川市| 梅河口市| 中西区| 泉州市| 元谋县| 南宁市| 富蕴县| 汉寿县| 临沧市| 盐边县| 房产| 洛浦县| 镇江市| 平塘县| 桑日县| 南和县| 独山县| 元朗区| 高尔夫| 襄垣县| 荆州市| 三原县| 南郑县| 柞水县| 紫阳县| 乡城县| 兰州市| 丹阳市| 庆安县| 潢川县| 五河县|