日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

實例講解MySQL統計庫表大小

瀏覽:161日期:2023-10-14 10:48:28

統計每個庫每個表的大小是數據治理的其中最簡單的一個要求,本文將從抽樣統計結果及精確統計結果兩方面來統計MySQL的每個庫每個表的數據量情況。

1、統計預估數據量

mysql數據字典庫information_schema里記錄了統計的預估數據量(innodb引擎表不準確,MyISAM引擎表準確)及數據大小、索引大小及表碎片的大小等信息。

如果想了解每個庫及表的大概數據量級,可以直接查information_schema.tables進行統計即可。例如:

SELECT table_schema,table_name,table_rows,data_length+index_length+ data_free data_size FROM information_schema.`TABLES` WHERE table_schema IN (’db1’,’db2’);

其中data_size單位為B

實例講解MySQL統計庫表大小

如上文所述,統計信息里的數據條數及size是根據部分數據抽樣統計的值,與實際大小存在差異,且表越大,差異越明顯,如果想知道每張表的實際情況,需用后續的方法。

2、統計實際數據量

想要統計每張表的實際大小就得去遍歷每個表算出對的記錄數,通過查看表空間大?。總€表獨立表空間)查看每個表的size。通過以下步驟即可達到精確統計的目的。

創建路徑

創建一個工作路徑,保存腳本及臨時文件等

mkdir -p /usr/local/data_size

創建統計庫及表

在需要統計的數據庫實例上創建統計庫

SQL> create database bak_db;

創建統計的存儲過程

SQL> use bak_db;SQL>CREATE PROCEDURE `p_db_size`()BEGINDECLARE v_id INT;DECLARE v_maxid INT;DECLARE v_tbname VARCHAR(50);DECLARE v_dbname VARCHAR(50);DECLARE v_sql_upd VARCHAR(200);SET v_id =(SELECT MIN(id) FROM bak_db.tb_size);SET v_maxid =(SELECT MAX(id) FROM bak_db.tb_size);WHILE v_id <=v_maxidDOSET v_tbname = (SELECT tbname FROM bak_db.tb_size WHERE id=v_id);SET v_dbname = (SELECT dbname FROM bak_db.tb_size WHERE id=v_id);SET v_sql_upd = CONCAT(’update bak_db.tb_size set tb_rows=(select count(*) from ’,v_dbname,'.',v_tbname,') where id=',v_id); SET @v_sql_upd := v_sql_upd; PREPARE stmt FROM @v_sql_upd; EXECUTE stmt ; DEALLOCATE PREPARE stmt; SET v_id = v_id +1;END WHILE; END;

創建腳本

vim data.sh/* 插入如下內容*/#! /bin/bashcd /usr/local/data_sizedu -s /data/mysql/mysql3306/data/db1/* |grep -v '.frm' |grep -v '.opt' >/usr/local/data_size/data_size du -s /data/mysql/mysql3306/data/db2/* |grep -v '.frm' |grep -v '.opt'>>/usr/local/data_size/data_size# 后面4步是拼接成sql awk ’{print 'insert into bak_db.tb_size(size,tb_route)values('''$0}’ /usr/local/data_size/data_size >/usr/local/data_size/data_size1 awk ’{print $0';'}’ /usr/local/data_size/data_size1 >/usr/local/data_size/data_size.sqlsed -i 's#t#,’#g' /usr/local/data_size/data_size.sqlsed -i 's#;#’);#g' /usr/local/data_size/data_size.sql# 創建統計表 /usr/local/mysql5.7/bin/mysql -uroot -p’Test#123456’ -h 192.168.28.132 -e 'drop table if exists bak_db.tb_size;CREATE TABLE IF NOT EXISTS bak_db.tb_size ( id INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT ,size INT,tb_route VARCHAR(200),tbname VARCHAR(50),dbname VARCHAR(50),tb_rows INT(11));' # 導入數據 /usr/local/mysql5.7/bin/mysql -uroot -p’Test#123456’ -h 192.168.28.132 -e 'use bak_db;truncate table bak_db.tb_size;source /usr/local/data_size/data_size.sql;'# 生成庫名及表名,當然該步驟也可以從數據字段中獲取 /usr/local/mysql5.7/bin/mysql -uroot -p’Test#123456’ -h 192.168.28.132 -e 'use bak_db;UPDATE bak_db.tb_size SET tbname=REPLACE(SUBSTRING_INDEX(tb_route,’/’,-1),’.ibd’,’’);' /usr/local/mysql5.7/bin/mysql -uroot -p’Test#123456’ -h 192.168.28.132 -e 'UPDATE bak_db.tb_size SET dbname=LEFT (SUBSTRING_INDEX(tb_route,’/’,-2),INSTR(SUBSTRING_INDEX(tb_route,’/’,-2),’/’)-1);'sleep 10 # 如果之前的步驟在主庫金學習學習,則建議暫停一段時間 以免后面統計的時候無法獲得表及內容,如果前面的步驟都在從庫,則可以省略該步驟echo ’start call procedure’ # 調用存儲過程 統計每個表的記錄條數/usr/local/mysql5.7/bin/mysql -uroot -p’Test#123456’ -h 192.168.28.132 -e 'use bak_db;call bak_db.p_db_size();'# 把表及數據導出/usr/local/mysql5.7/bin/mysqldump -uroot -p’Test#123456’ -h 192.168.28.132 --single-transaction bak_db tb_size >/usr/local/data_size/tb_size.sql# 將表及結果導入主庫(從庫相當于刪除在重建了一次)/usr/local/mysql5.7/bin/mysql -uroot -p’Test#123456’ -h 192.168.28.128 -e 'use bak_db;source /usr/local/data_size/tb_size.sql;'

結果如下:

實例講解MySQL統計庫表大小

可以看出精確值與統計信息里的值差異還是很大的,且表越大 差異越明顯。

TIPS: 本文精確統計的腳本還有許多優化空間,寫的比較倉促,大家可以按需自行調整,水平有限,歡迎斧正。如有問題,歡迎與我溝通。

以上就是實例講解MySQL統計庫表大小的詳細內容,更多關于MySQL統計庫表大小的資料請關注好吧啦網其它相關文章!

標簽: MySQL 數據庫
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久久久久婷| 快she精品国产999| 亚洲3区在线| 蜜桃av一区二区在线观看| 亚洲大全视频| 国产精品88久久久久久| 黄色成人精品网站| 亚州国产精品| 久久av偷拍| 成人精品动漫一区二区三区| 群体交乱之放荡娇妻一区二区| 亚洲精品网址| 日韩毛片网站| 欧美日韩 国产精品| 高清精品久久| 亚洲视频播放| 国产精品777777在线播放| 日本国产精品| 免费欧美在线视频| 欧美亚洲专区| 高清日韩欧美| 午夜欧美视频| 99精品美女| 国产精品嫩草99av在线| 国产精品社区| 亚洲欧洲av| 成人国产精选| 亚洲一级特黄| 美女少妇全过程你懂的久久| 亚洲精品123区| 综合一区二区三区| 亚洲精品一级| 日本亚州欧洲精品不卡| 欧美一级二区| 国产精品主播在线观看| 丝袜美腿诱惑一区二区三区| 亚洲欧美日韩高清在线| 亚洲欧美久久| 日韩有吗在线观看| 青青在线精品| 精品一区电影| 欧美日韩色图| 人人精品人人爱| 日韩中文字幕不卡| 日本综合精品一区| 卡一卡二国产精品| 色网在线免费观看| 99国产精品久久久久久久| 日韩精品一区二区三区中文字幕| 国产乱人伦精品一区| 伊人精品一区| 日精品一区二区三区| 国产suv精品一区二区四区视频| 99久久九九| 免费国产亚洲视频| 久久不见久久见中文字幕免费| 岛国av在线播放| 影院欧美亚洲| 国产欧美综合一区二区三区| 精品在线网站观看| 亚洲欧美久久| 精品一区二区三区四区五区| 91九色精品国产一区二区| 日韩不卡在线观看日韩不卡视频 | 国产精品igao视频网网址不卡日韩| 水蜜桃精品av一区二区| 国产午夜精品一区二区三区欧美 | 国产精品亚洲片在线播放| 日本午夜大片a在线观看| 国户精品久久久久久久久久久不卡| 亚洲一区二区日韩| 精品国产亚洲一区二区三区在线 | 亚洲精品大全| 国产a亚洲精品| 免费在线欧美视频| 国产一区二区三区四区五区| 日韩一区欧美二区| 福利一区二区三区视频在线观看| 久久高清一区| 欧美国产另类| 蜜臀精品久久久久久蜜臀| 红杏一区二区三区| 免费成人在线影院| 国产成人精品三级高清久久91| 天堂va蜜桃一区二区三区| www.51av欧美视频 | 国产亚洲一区二区手机在线观看 | 欧美日韩1区2区3区| 国内精品麻豆美女在线播放视频| 午夜一级在线看亚洲| 动漫av一区| 国产欧美日韩影院| 免费成人在线视频观看| 另类专区亚洲| 国产精品视频一区二区三区综合| 日韩视频久久| 9999国产精品| 久久影视三级福利片| 日韩成人午夜精品| 国产一区成人| 久久免费大视频| 精品久久亚洲| 国产精品自在| 免费久久精品视频| 伊人久久大香线蕉av不卡| 97精品国产一区二区三区| 国产欧美日韩精品一区二区免费 | 视频在线观看91| 久久裸体视频| 国产成人精品亚洲线观看| 国产亚洲精品美女久久 | 久久亚洲精品中文字幕| 日韩精品第一| 美女国产精品| 亚洲主播在线| 在线亚洲成人| 国产在线不卡| 欧美日韩国产观看视频| 久久精品国产免费| 麻豆精品新av中文字幕| 国产日产一区| 日韩中文字幕无砖| 亚洲精品系列| 亚洲精选91| 五月综合激情| re久久精品视频| 在线精品小视频| 伊人精品视频| 亚洲二区在线| 婷婷激情久久| 欧美91福利在线观看| 欧美sm一区| 亚洲性色av| 日韩中文字幕91| 日韩精品a在线观看91| 日本国产一区| 国产精品久久久久久妇女| 国产精品mv在线观看| 免费看久久久| 国产欧美日韩精品一区二区免费| 国产探花一区| 精品久久久久中文字幕小说| 国产精品99一区二区三区| 中文字幕在线免费观看视频| 日韩电影在线视频| 免费观看久久av| 日韩在线观看一区二区| 中文字幕亚洲精品乱码| 7777精品| 国产aⅴ精品一区二区三区久久| 97在线精品| 不卡在线一区| 在线视频精品| 日韩高清不卡一区二区| 国产毛片久久久| 日韩免费视频| 亚洲一区久久| 国产欧美二区| 国产aⅴ精品一区二区四区| 久久九九国产| 美日韩精品视频| 国产精品美女在线观看直播| 国产va免费精品观看精品视频| 日韩欧美一区二区三区免费看| 国产综合视频| 三级一区在线视频先锋| 欧美天堂一区| 日韩在线第七页| 在线亚洲一区| 四虎国产精品免费久久| 久久这里只有精品一区二区| 夜鲁夜鲁夜鲁视频在线播放| 视频一区二区国产| 精品国产精品国产偷麻豆| 久久亚洲专区| 日本精品久久| 久久久噜噜噜| 日韩精品免费一区二区夜夜嗨| 国产在线一区不卡| 亚洲制服少妇| 久久香蕉网站| 丝袜美腿亚洲一区二区图片| 精品久久视频| 亚洲麻豆一区| 国际精品欧美精品| 蜜桃伊人久久| 97国产精品| 日韩高清欧美激情| 亚洲日本网址| 欧美日韩1区| 在线精品小视频| 精品一区二区三区四区五区| 爽好久久久欧美精品| 国产一区二区精品久| 免费看日韩精品| 欧美成a人国产精品高清乱码在线观看片在线观看久 | 国产剧情一区| 亚洲免费高清| 91综合网人人| 久久国产乱子精品免费女|