最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL如何統(tǒng)計(jì)一個(gè)數(shù)據(jù)庫所有表的數(shù)據(jù)量

 更新時(shí)間:2022年04月15日 14:46:41   作者:smileNicky  
最近在做統(tǒng)計(jì)想查找一個(gè)數(shù)據(jù)庫里基本所有的表數(shù)據(jù)量,下面這篇文章主要給大家介紹了關(guān)于MySQL如何統(tǒng)計(jì)一個(gè)數(shù)據(jù)庫所有表的數(shù)據(jù)量的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下

場景:

mysql統(tǒng)計(jì)一個(gè)數(shù)據(jù)庫里所有表的數(shù)據(jù)量,最近在做統(tǒng)計(jì)想查找一個(gè)數(shù)據(jù)庫里基本所有的表數(shù)據(jù)量,數(shù)據(jù)量少的通過select count再加起來也是可以的,不過表的數(shù)據(jù)有點(diǎn)多,不可能一個(gè)一個(gè)地查

記得在Navicat里,選擇一個(gè)數(shù)據(jù)量,點(diǎn)擊表,如圖:

是可以看到所有表具體的數(shù)據(jù)行的

然后可以通過sql實(shí)現(xiàn)?在mysql里是可以查詢information_schema.tables這張表的

SELECT table_rows,table_name FROM information_schema.tables  
 WHERE TABLE_SCHEMA = '數(shù)據(jù)庫名稱' 
 and table_name not in ('不查詢的表名稱') 
 ORDER BY table_rows DESC;

要統(tǒng)計(jì)的,加上sum函數(shù)就可以

SELECT sum(table_rows) FROM information_schema.tables  
 WHERE TABLE_SCHEMA = '數(shù)據(jù)庫名稱' 
 and table_name not in ('不查詢的表名稱') 
 ORDER BY table_rows DESC;

OK,本來還以為已經(jīng)沒問題了,然后還是被反饋統(tǒng)計(jì)不對,后來去找了資料

https://dev.mysql.com/doc/refman/8.0/en/information-schema-tables-table.html

官網(wǎng)的解釋:

TABLE_ROWS
The number of rows. Some storage engines, such as MyISAM, store the exact count. For other storage engines, such as InnoDB, this value is an approximation, and may vary from the actual value by as much as 40% to 50%. In such cases, use SELECT COUNT(*) to obtain an accurate count.
TABLE_ROWS is NULL for INFORMATION_SCHEMA tables.
For InnoDB tables, the row count is only a rough estimate used in SQL optimization. (This is also true if the InnoDB table is partitioned.)

大概意思是對于MyISAM才是正確的統(tǒng)計(jì)數(shù)據(jù),但是對于InnoDB引擎的,可能與實(shí)際值相差 40% 到 50%,所以只是一個(gè)大概的統(tǒng)計(jì)

所以針對這種情況,要更改存儲(chǔ)引擎,肯定是不太合適,因?yàn)镮nnoDB是默認(rèn)的存儲(chǔ)引擎,能支持事務(wù)外健,并發(fā)情況性能也比較好

所以,根據(jù)網(wǎng)上的做法,重新analyze 對應(yīng)表,在mysql8.0版本是不管用的,發(fā)現(xiàn)查詢數(shù)據(jù)還是不對,估計(jì)是mysql版本太高,mysql5版本沒驗(yàn)證過

analyze table [table_name]

繼續(xù)找資料,在Navicat工具->命令行頁面,設(shè)置全局或者回話的information_schema_stats_expiry為0,表示自動(dòng)更新,設(shè)置全局的不知道會(huì)不會(huì)影響性能,所以不知道還是設(shè)置會(huì)話的就可以

SET SESSION information_schema_stats_expiry=0;
SET @@SESSION.information_schema_stats_expiry=0;

查詢設(shè)置的information_schema_stats_expiry值

show variables like '%information_schema_stats%';

MySQL 8.0為了提高information_schema的查詢效率,會(huì)將視圖tables和statistics里面的統(tǒng)計(jì)信息緩存起來,緩存過期時(shí)間由參數(shù)information_schema_stats_expiry決定

補(bǔ)充:查詢表大小

我需要查詢的庫名為:kite

因此sql語句為:

select
table_schema as '數(shù)據(jù)庫',
table_name as '表名',
table_rows as '記錄數(shù)',
truncate(data_length/1024/1024, 2) as '數(shù)據(jù)容量(MB)',
truncate(index_length/1024/1024, 2) as '索引容量(MB)'
from information_schema.tables
where table_schema='kite'
order by table_rows desc, index_length desc;

結(jié)果如下:

總結(jié) 

到此這篇關(guān)于MySQL如何統(tǒng)計(jì)一個(gè)數(shù)據(jù)庫所有表數(shù)據(jù)量的文章就介紹到這了,更多相關(guān)MySQL統(tǒng)計(jì)所有表數(shù)據(jù)量內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Mysql之如何修改字段名和字段類型

    Mysql之如何修改字段名和字段類型

    這篇文章主要介紹了Mysql之如何修改字段名和字段類型問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • mysql主從及遇到的問題解決

    mysql主從及遇到的問題解決

    本文詳細(xì)介紹了如何使用Docker配置MySQL主從復(fù)制,首先創(chuàng)建了兩個(gè)文件夾并分別配置了`my.cnf`文件,通過執(zhí)行腳本啟動(dòng)容器并配置好主從關(guān)系,文中還提到了一些常見問題的解決方法,如配置路徑錯(cuò)誤導(dǎo)致的沖突和slave的change連接錯(cuò)誤
    2025-01-01
  • MySQL自動(dòng)安裝批處理腳本實(shí)例代碼

    MySQL自動(dòng)安裝批處理腳本實(shí)例代碼

    為了日后安裝數(shù)據(jù)庫方便,下面這篇文章主要給大家介紹了關(guān)于MySQL自動(dòng)安裝批處理腳本的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • mysql臟頁是什么

    mysql臟頁是什么

    本文主要介紹了什么是mysql臟頁,為什么會(huì)出現(xiàn)臟頁,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-07-07
  • SQL如何獲取目標(biāo)時(shí)間點(diǎn)或日期的方法實(shí)例

    SQL如何獲取目標(biāo)時(shí)間點(diǎn)或日期的方法實(shí)例

    日期獲取在我們?nèi)粘i_發(fā)中經(jīng)常會(huì)遇到,這篇文章主要給大家介紹了關(guān)于SQL如何獲取目標(biāo)時(shí)間點(diǎn)或日期的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-10-10
  • MySQL外鍵類型及應(yīng)用場景總結(jié)

    MySQL外鍵類型及應(yīng)用場景總結(jié)

    這篇文章主要介紹了?MySQL?外鍵的類型(RESTRICT、CASCADE、SET?NULL、NO?ACTION)及其應(yīng)用場景、優(yōu)缺點(diǎn)和使用注意事項(xiàng),通過創(chuàng)建和測試外鍵,闡述了不同類型外鍵在主表刪除或更新數(shù)據(jù)時(shí)子表的變化,需要的朋友可以參考下
    2024-12-12
  • iOS開發(fā)runloop運(yùn)行循環(huán)機(jī)制學(xué)習(xí)

    iOS開發(fā)runloop運(yùn)行循環(huán)機(jī)制學(xué)習(xí)

    這篇文章主要為大家介紹了iOS開發(fā)runloop運(yùn)行循環(huán)的機(jī)制學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • Mysql 行級(jí)鎖的使用及死鎖的預(yù)防方案

    Mysql 行級(jí)鎖的使用及死鎖的預(yù)防方案

    mysql的InnoDB,支持事務(wù)和行級(jí)鎖,可以使用行鎖來處理用戶提現(xiàn)等業(yè)務(wù)。使用mysql鎖的時(shí)候有時(shí)候會(huì)出現(xiàn)死鎖,要做好死鎖的預(yù)防。這篇文章通過實(shí)例應(yīng)用給大家講解
    2016-12-12
  • MySQL如何查詢數(shù)據(jù)庫中所有表名及注釋等信息

    MySQL如何查詢數(shù)據(jù)庫中所有表名及注釋等信息

    這篇文章主要介紹了MySQL如何查詢數(shù)據(jù)庫中所有表名及注釋等信息問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • MySQL單表查詢操作實(shí)例詳解【語法、約束、分組、聚合、過濾、排序等】

    MySQL單表查詢操作實(shí)例詳解【語法、約束、分組、聚合、過濾、排序等】

    這篇文章主要介紹了MySQL單表查詢操作,結(jié)合實(shí)例形式詳細(xì)分析了mysql單表查詢的語法、約束、分組、聚合、過濾、排序等相關(guān)原理、操作技巧與注意事項(xiàng),需要的朋友可以參考下
    2019-12-12

最新評論

阿鲁科尔沁旗| 屏南县| 鲁甸县| 宣威市| 葫芦岛市| 唐海县| 潞城市| 平阴县| 新郑市| 九江县| 增城市| 沧源| 龙里县| 龙岩市| 宽城| 和硕县| 博客| 湛江市| 南皮县| 汕尾市| 张掖市| 界首市| 建始县| 延川县| 和田县| 永安市| 星子县| 北安市| 尤溪县| 汽车| 上栗县| 盐山县| 上饶县| 上杭县| 贵南县| 上高县| 景东| 安岳县| 正阳县| 鄂托克旗| 庆阳市|