如何获取 m3u8 文件的真实大小
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何获取 m3u8 文件的真实大小相关的知识,希望对你有一定的参考价值。
参考技术A MPMoviePlayerViewController,你可以试试看可以不。 参考技术B m3u8是直播地址,有大小么?那就好比新闻联播到底多少集一样,多大的时长。根本不是固定的如何获取 MySQL 数据库的真实大小?
【中文标题】如何获取 MySQL 数据库的真实大小?【英文标题】:How to Get True Size of MySQL Database? 【发布时间】:2013-01-20 19:20:33 【问题描述】:我想知道我的 MySQL 数据库使用了多少空间,以便选择一个网络主机。
我找到了命令SHOW TABLE STATUS LIKE 'table_name'
,所以当我进行查询时,我会得到这样的结果:
Name | Rows | Avg. Row Length | Data_Length | Index Length
---------- ---- --------------- ----------- ------------
table_name 400 55 362000 66560
数字四舍五入。
那么我有 362000 或 400*362000 = 144800000 字节的数据用于此表吗? 索引长度是什么意思? 谢谢!
【问题讨论】:
你有 362000 + 66560。Data_Length + 索引长度 How to get size of mysql database?的可能重复 这个页面会给你准确的答案rathishkumar.in/2017/12/… 【参考方案1】:来自 S. Prakash,地址为 MySQL forum:
SELECT table_schema "database name",
sum( data_length + index_length ) / 1024 / 1024 "database size in MB",
sum( data_free )/ 1024 / 1024 "free space in MB"
FROM information_schema.TABLES
GROUP BY table_schema;
或者在一行中更容易复制粘贴:
SELECT table_schema "database name", sum( data_length + index_length ) / 1024 / 1024 "database size in MB", sum( data_free )/ 1024 / 1024 "free space in MB" FROM information_schema.TABLES GROUP BY table_schema;
【讨论】:
以 MB 为单位的可用空间是什么意思?我有 100 GB 的可用空间,但它报告的可用空间不到 1 GB。 @Barth 根据documentation 表示“InnoDB 表的可用空间(以字节为单位)”。不幸的是,没有解释 that 是什么意思:-\ 可用空间(以字节为单位)的确切含义 - 这意味着如果您优化表或从头开始重建表,则可以回收空间量。当数据库将信息存储在磁盘上时,它们以块的形式分配信息;删除记录通常会释放已使用块之间的块,并且移动所有其他块以使用该空间非常昂贵,因此将其标记为“空闲”。该空间可以稍后由数据库引擎本身使用,或者可以使用OPTIMIZE TABLE foo
(MyISAM) 回收,或者为 InnoDB 表重新创建 + 分析。【参考方案2】:
您可以通过在Mysql客户端运行以下命令来获取您的Mysql数据库的大小
SELECT sum(round(((data_length + index_length) / 1024 / 1024 / 1024), 2)) as "Size in GB"
FROM information_schema.TABLES
WHERE table_schema = "<database_name>"
【讨论】:
【参考方案3】:如果你使用 phpMyAdmin,它可以告诉你这些信息。
只需转到“数据库”(顶部菜单)并点击“启用统计信息”。
你会看到这样的:
随着尺寸的增加,这可能会失去一些准确性,但它应该足以满足您的目的。
【讨论】:
我目前正在使用 000webhost。它有 phpMyAdmin,但我找不到“启用统计信息”复选框。是否有(可能)对此的查询? @marvin 好吧,网络主机可能安装了旧版本的 phpMyAdmin。不知道这个功能是在哪个版本引入的。 在您的侧边栏中,单击顶部的主页图标,将您带到主页。在右侧窗口中,单击“数据库”。它显示一个单列的数据库表,下面是一个名为“启用统计”的链接【参考方案4】:如果你想在 MB 中找到它,请这样做
SELECT table_schema "DB Name",
Round(Sum(data_length + index_length) / 1024 / 1024, 1) "DB Size in MB"
FROM information_schema.tables
GROUP BY table_schema;
【讨论】:
这个答案的 SQL sn-p 似乎是***.com/a/1733523/1200542的副本【参考方案5】:基本上有两种方式: 查询数据库(数据长度+索引长度)或检查文件大小。索引长度与索引中存储的数据有关。
这里描述了一切:
http://www.mkyong.com/mysql/how-to-calculate-the-mysql-database-size/
【讨论】:
嗯,这个页面是我的问题的来源。但是根据这个查询,我有 0.5 MB,这让我很安全。我希望这是真的:) 谢谢!【参考方案6】:没有一个答案包括开销大小和表的元数据大小。
这是对数据库分配的“磁盘空间”的更准确估计。
SELECT ROUND((SUM(data_length+index_length+data_free) + (COUNT(*) * 300 * 1024))/1048576+150, 2) AS MegaBytes FROM information_schema.TABLES WHERE table_schema = 'DATABASE-NAME'
【讨论】:
您能详细说明一下吗?尤其是你的常量300
和 150
?
拜托,你能详细说明一下吗?【参考方案7】:
如果要查找所有 MySQL 数据库的大小,使用这个命令,它将以兆字节显示它们各自的大小;
SELECT table_schema "database", sum(data_length + index_length)/1024/1024 "size in MB" FROM information_schema.TABLES GROUP BY table_schema;
如果您有大型数据库,可以使用以下命令以千兆字节为单位显示结果;
SELECT table_schema "database", sum(data_length + index_length)/1024/1024/1024 "size in GB" FROM information_schema.TABLES GROUP BY table_schema;
如果您只想显示特定数据库的大小,例如YOUR_DATABASE_NAME
,您可以使用以下查询;
SELECT table_schema "database", sum(data_length + index_length)/1024/1024/1024 "size in GB" FROM information_schema.TABLES WHERE table_schema='YOUR_DATABASE_NAME' GROUP BY table_schema;
【讨论】:
【参考方案8】:SUM(Data_free)
可能有效也可能无效。这取决于innodb_file_per_table
的历史。更多讨论见here。
【讨论】:
【参考方案9】:Oracle 的 MySQL Utilities 有一个名为 mysqldiskusage 的命令,可以显示每个数据库的磁盘使用情况:https://dev.mysql.com/doc/mysql-utilities/1.6/en/mysqldiskusage.html
【讨论】:
【参考方案10】:如果您使用的是 MySql Workbench,很容易获得数据库大小、每个表大小、索引大小等的所有详细信息。
-
右键单击架构
选择Schema Inspector选项
它显示了 Schema 大小的所有细节
选择表格标签查看每个表格的大小。
数据长度列中显示的表大小
【讨论】:
以上是关于如何获取 m3u8 文件的真实大小的主要内容,如果未能解决你的问题,请参考以下文章