12
A
回答
26
我有一些伟大的大疑问分享到:
运行此得到总的MySQL数据和索引的使用通过存储引擎
SELECT IFNULL(B.engine,'Total') "Storage Engine",
CONCAT(LPAD(REPLACE(FORMAT(B.DSize/POWER(1024,pw),3),',',''),17,' '),' ',
SUBSTR(' KMGTP',pw+1,1),'B') "Data Size", CONCAT(LPAD(REPLACE(
FORMAT(B.ISize/POWER(1024,pw),3),',',''),17,' '),' ',
SUBSTR(' KMGTP',pw+1,1),'B') "Index Size", CONCAT(LPAD(REPLACE(
FORMAT(B.TSize/POWER(1024,pw),3),',',''),17,' '),' ',
SUBSTR(' KMGTP',pw+1,1),'B') "Table Size" FROM
(SELECT engine,SUM(data_length) DSize,SUM(index_length) ISize,
SUM(data_length+index_length) TSize FROM
information_schema.tables WHERE table_schema NOT IN
('mysql','information_schema','performance_schema') AND
engine IS NOT NULL GROUP BY engine WITH ROLLUP) B,
(SELECT 3 pw) A ORDER BY TSize;
运行该工具来获取总MySQL的数据和索引使用情况数据库
SELECT DBName,CONCAT(LPAD(FORMAT(SDSize/POWER(1024,pw),3),17,' '),' ',
SUBSTR(' KMGTP',pw+1,1),'B') "Data Size",CONCAT(LPAD(
FORMAT(SXSize/POWER(1024,pw),3),17,' '),' ',SUBSTR(' KMGTP',pw+1,1),'B') "Index Size",
CONCAT(LPAD(FORMAT(STSize/POWER(1024,pw),3),17,' '),' ',
SUBSTR(' KMGTP',pw+1,1),'B') "Total Size" FROM
(SELECT IFNULL(DB,'All Databases') DBName,SUM(DSize) SDSize,SUM(XSize) SXSize,
SUM(TSize) STSize FROM (SELECT table_schema DB,data_length DSize,
index_length XSize,data_length+index_length TSize FROM information_schema.tables
WHERE table_schema NOT IN ('mysql','information_schema','performance_schema')) AAA
GROUP BY DB WITH ROLLUP) AA,(SELECT 3 pw) BB ORDER BY (SDSize+SXSize);
运行该工具来获取总MySQL的数据和索引使用情况数据库和存储引擎
SELECT Statistic,DataSize "Data Size",IndexSize "Index Size",TableSize "Table Size"
FROM (SELECT IF(ISNULL(table_schema)=1,10,0) schema_score,
IF(ISNULL(engine)=1,10,0) engine_score,
IF(ISNULL(table_schema)=1,'ZZZZZZZZZZZZZZZZ',table_schema) schemaname,
IF(ISNULL(B.table_schema)+ISNULL(B.engine)=2,"Storage for All Databases",
IF(ISNULL(B.table_schema)+ISNULL(B.engine)=1,
CONCAT("Storage for ",B.table_schema),
CONCAT(B.engine," Tables for ",B.table_schema))) Statistic,
CONCAT(LPAD(REPLACE(FORMAT(B.DSize/POWER(1024,pw),3),',',''),17,' '),' ',
SUBSTR(' KMGTP',pw+1,1),'B') DataSize,CONCAT(LPAD(REPLACE(
FORMAT(B.ISize/POWER(1024,pw),3),',',''),17,' '),' ',
SUBSTR(' KMGTP',pw+1,1),'B') IndexSize,
CONCAT(LPAD(REPLACE(FORMAT(B.TSize/POWER(1024,pw),3),',',''),17,' '),' ',
SUBSTR(' KMGTP',pw+1,1),'B') TableSize FROM (SELECT table_schema,engine,
SUM(data_length) DSize,SUM(index_length) ISize,
SUM(data_length+index_length) TSize FROM information_schema.tables
WHERE table_schema NOT IN ('mysql','information_schema','performance_schema')
AND engine IS NOT NULL GROUP BY table_schema,engine WITH ROLLUP) B,
(SELECT 3 pw) A) AA ORDER BY schemaname,schema_score,engine_score;
CAVEAT
在每个查询,你会看到(SELECT 3 pw)
。 pw代表1024的Power来显示结果。
(SELECT 0 pw)
将显示该报告以字节为(SELECT 1 pw)
将显示以KB为单位报告(SELECT 2 pw)
将显示该报告以兆字节为(SELECT 3 pw)
将显示该报告以GB为(SELECT 4 pw)
将显示TeraBytes中的报告(SELECT 5 pw)
将在PetaBytes中显示报告(请与我联系,如果您运行此一)
这里是一个报表查询与少格式:
SELECT IFNULL(db,'Total') "Database",
datsum/power(1024,pw) "Data Size",
ndxsum/power(1024,pw) "Index Size",
totsum/power(1024,pw) "Total"
FROM (SELECT db,SUM(dat) datsum,SUM(ndx) ndxsum,SUM(dat+ndx) totsum
FROM (SELECT table_schema db,data_length dat,index_length ndx
FROM information_schema.tables WHERE engine IS NOT NULL
AND table_schema NOT IN ('information_schema','mysql')) AA
GROUP BY db WITH ROLLUP) A,(SELECT 1 pw) B;
相信我,我做了这些查询超过4年前和今天仍然使用它们。
UPDATE 2013-06-24 15:53 EDT
我有新的东西。我已经改变了查询,让你不必为不同的单元显示pw
参数。每个单位显示都是为您计算的。
报告存储引擎
SELECT
IFNULL(ENGINE,'Total') "Storage Engine",
LPAD(CONCAT(FORMAT(DAT/POWER(1024,pw1),2),' ',
SUBSTR(units,pw1*2+1,2)),17,' ') "Data Size",
LPAD(CONCAT(FORMAT(NDX/POWER(1024,pw2),2),' ',
SUBSTR(units,pw2*2+1,2)),17,' ') "Index Size",
LPAD(CONCAT(FORMAT(TBL/POWER(1024,pw3),2),' ',
SUBSTR(units,pw3*2+1,2)),17,' ') "Total Size"
FROM
(
SELECT ENGINE,DAT,NDX,TBL,
IF(px>4,4,px) pw1,IF(py>4,4,py) pw2,IF(pz>4,4,pz) pw3
FROM
(SELECT *,
FLOOR(LOG(IF(DAT=0,1,DAT))/LOG(1024)) px,
FLOOR(LOG(IF(NDX=0,1,NDX))/LOG(1024)) py,
FLOOR(LOG(IF(TBL=0,1,TBL))/LOG(1024)) pz
FROM
(SELECT
ENGINE,
SUM(data_length) DAT,
SUM(index_length) NDX,
SUM(data_length+index_length) TBL
FROM
(
SELECT engine,data_length,index_length FROM
information_schema.tables WHERE table_schema NOT IN
('information_schema','performance_schema','mysql')
AND ENGINE IS NOT NULL
) AAA GROUP BY ENGINE WITH ROLLUP
) AAA) AA) A,(SELECT ' BKBMBGBTB' units) B;
报告数据库
SELECT
IFNULL(DB,'Total') "Database",
LPAD(CONCAT(FORMAT(DAT/POWER(1024,pw1),2),' ',
SUBSTR(units,pw1*2+1,2)),17,' ') "Data Size",
LPAD(CONCAT(FORMAT(NDX/POWER(1024,pw2),2),' ',
SUBSTR(units,pw2*2+1,2)),17,' ') "Index Size",
LPAD(CONCAT(FORMAT(TBL/POWER(1024,pw3),2),' ',
SUBSTR(units,pw3*2+1,2)),17,' ') "Total Size"
FROM
(
SELECT DB,DAT,NDX,TBL,
IF(px>4,4,px) pw1,IF(py>4,4,py) pw2,IF(pz>4,4,pz) pw3
FROM
(SELECT *,
FLOOR(LOG(IF(DAT=0,1,DAT))/LOG(1024)) px,
FLOOR(LOG(IF(NDX=0,1,NDX))/LOG(1024)) py,
FLOOR(LOG(IF(TBL=0,1,TBL))/LOG(1024)) pz
FROM
(SELECT
DB,
SUM(data_length) DAT,
SUM(index_length) NDX,
SUM(data_length+index_length) TBL
FROM
(
SELECT table_schema DB,data_length,index_length FROM
information_schema.tables WHERE table_schema NOT IN
('information_schema','performance_schema','mysql')
AND ENGINE IS NOT NULL
) AAA GROUP BY DB WITH ROLLUP
) AAA) AA) A,(SELECT ' BKBMBGBTB' units) B;
报告数据库/存储引擎
SELECT
IF(ISNULL(DB)+ISNULL(ENGINE)=2,'Database Total',
CONCAT(DB,' ',IFNULL(ENGINE,'Total'))) "Reported Statistic",
LPAD(CONCAT(FORMAT(DAT/POWER(1024,pw1),2),' ',
SUBSTR(units,pw1*2+1,2)),17,' ') "Data Size",
LPAD(CONCAT(FORMAT(NDX/POWER(1024,pw2),2),' ',
SUBSTR(units,pw2*2+1,2)),17,' ') "Index Size",
LPAD(CONCAT(FORMAT(TBL/POWER(1024,pw3),2),' ',
SUBSTR(units,pw3*2+1,2)),17,' ') "Total Size"
FROM
(
SELECT DB,ENGINE,DAT,NDX,TBL,
IF(px>4,4,px) pw1,IF(py>4,4,py) pw2,IF(pz>4,4,pz) pw3
FROM
(SELECT *,
FLOOR(LOG(IF(DAT=0,1,DAT))/LOG(1024)) px,
FLOOR(LOG(IF(NDX=0,1,NDX))/LOG(1024)) py,
FLOOR(LOG(IF(TBL=0,1,TBL))/LOG(1024)) pz
FROM
(SELECT
DB,ENGINE,
SUM(data_length) DAT,
SUM(index_length) NDX,
SUM(data_length+index_length) TBL
FROM
(
SELECT table_schema DB,ENGINE,data_length,index_length FROM
information_schema.tables WHERE table_schema NOT IN
('information_schema','performance_schema','mysql')
AND ENGINE IS NOT NULL
) AAA GROUP BY DB,ENGINE WITH ROLLUP
) AAA) AA) A,(SELECT ' BKBMBGBTB' units) B;
4
如果只有MySQL是可用,使用SHOW TABLE STATUS命令,并期待在DATA_LENGTH列每个表,这是以字节为单位。
如果您在机器上可用的其他语言,在其中任何一个脚本,定期(的cron)运行时,检查磁盘的可用空间或数据库目录的大小,和更新您通过电子邮件或其他方式。建议某种特定解决方案有太多选择 - 这取决于您的情况。
0
对于MyISAM表,我通常检查/ var/lib中/ MySQL的/ mydatabasename /目录的大小。 InnoDB表使用单片文件,所以你必须使用SHOW TABLE STATUS。
0
既然你有VM,你真的不关心如何使用的空间, 我觉得最简单的方法是检查MySQL数据的大小d IR。 默认情况下它是/var/lib/mysql
。 在检查数据目录大小之前,清理mysql二进制日志(如果可能)
0
你可以参考MONyog具有磁盘信息功能,它可以让你在服务器级,数据库级和表级发现磁盘空间分析
0
du -s /var/lib/mysql/* | sort -nr
结果
34128 /var/lib/mysql/db_name1
33720 /var/lib/mysql/db_name2
29744 /var/lib/mysql/db_name3
26624 /var/lib/mysql/db_name4
16516 /var/lib/mysql/db_name5
Thsi将显示为从大到小的顺序排列
相关问题
- 1. 在Weblogic群集上监视JMX,如何监视java.lang空间
- 2. 如何监视可用磁盘空间
- 3. Stakcdriver:监视可用磁盘空间
- 4. 监视用户空闲时间
- 5. 如何监视Linux UDP缓冲区可用空间?
- 6. 如何监视JBossAS 6.1.0中的Java堆空间。最终
- 7. 如何以编程方式监视android设备可用空间
- 8. 如何监视MySQL服务器状态
- 9. 如何监视Windows上的MySQL查询
- 10. 如何监视MySQL数据库
- 11. 如何监控使用的RDS空间?
- 12. 如何监视console.out?
- 13. Apache Mina空闲监视器
- 14. MySQL:监视器查询
- 15. MySql - 当mysql似乎“过载”时如何监视“活动”
- 16. 如何使用netlink监视用户空间deamon中的内核arp表?
- 17. 如何转换为监视窗口中未命名名称空间的类型?
- 18. 监视MSMQ到达时间
- 19. 监视Tomcat响应时间
- 20. 如何监控MySQL查询
- 21. 如何监视mesos框架
- 22. 如何监视ASP错误
- 23. 如何监视zookeeper群集
- 24. 如何监视套接字
- 25. 如何监视CakePHP程序
- 26. 如何监视mnesia负载?
- 27. 如何监视bash脚本?
- 28. 如何给列表视图的行之间的空白空间?
- 29. mysql:如何释放空间(innodb)
- 30. MySQL如何获得数据库空间?
您可能应该编辑您的问题,并在应显示为代码的每行前放置4个前导空格。 – 2010-12-18 17:34:38
是否有任何特别的原因LPAD到17? – Bee 2013-06-09 10:47:03