暂无图片
mysql中如何查看当前的脏页比例和脏页总大小(多少mb),5.7版本
我来答
分享
暂无图片 匿名用户
mysql中如何查看当前的脏页比例和脏页总大小(多少mb),5.7版本

mysql中如何查看当前的脏页比例和脏页总大小(多少mb),5.7版本

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
lianR

在MySQL中,你可以使用以下SQL查询来查看当前的脏页比例和脏页总大小:

```sql
SELECT
     ROUND((Pages_dirty  /  Total_pages)  *  100,  2)  AS  'Dirty  Pages  Ratio',
     ROUND((Pages_dirty  *  16  /  1024),  2)  AS  'Dirty  Pages  Size  in  MB'
FROM
     performance_schema.global_status
WHERE
     Variable_name  IN  ('Innodb_buffer_pool_pages_dirty',  'Innodb_buffer_pool_pages_total');
```

这个查询会返回两个结果:

-  `Dirty  Pages  Ratio`:当前脏页的比例(以百分比表示)
-  `Dirty  Pages  Size  in  MB`:当前脏页的总大小(以MB表示)

请注意,这个查询仅适用于MySQL  5.7和更高版本,因为它使用了`performance_schema`数据库,这个数据库在MySQL  5.7中才被引入。

暂无图片 评论
暂无图片 有用 1
打赏 0
CHEN Y.F.

查看脏页比例

SELECT
ROUND((`innodb_buffer_pool_pages_dirty` / `innodb_buffer_pool_pages_total`) * 100, 2) AS dirty_pages_ratio
FROM
information_schema.innodb_buffer_pool_stats;

查看脏页总大小

SELECT
CONCAT(ROUND(SUM(`data_length` + `index_length`) / 1024 / 1024, 2), ' MB') AS dirty_pages_size
FROM
information_schema.tables
WHERE
`engine` = 'InnoDB';


这将返回所有InnoDB表的数据和索引的总大小,以MB为单位,这是脏页的总大小。

请注意,在MySQL中,脏页是指已经被修改但尚未写回磁盘的缓冲页。这些页包含了已经被更新但还未持久化到磁盘的数据。

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
MYSQL有类似ROWID虚拟列吗?
回答 1
MySQL有个rowid,但限制蛮多的,你看看这个https://segmentfault.com/a/1190000019067459
mgr 8.0.33自动切换的原因
回答 1
在MySQL8.0.33版本的集群中,如果发生自动切换,并且在改回来后仍然发生切换,你可以通过查看MySQL的错误日志和集群状态日志来了解切换发生的原因。以下是一些建议:1.错误日志:MySQL的错误
Windows下mysql版本升级报错
回答 4
已采纳
是老的mysql的环境变量没删除导致的,记录一下这个经验
如何查看mysql 表的隐藏的默认6字节的rowId?
回答 1
已采纳
实测,不支持呀。
电脑坏了,如何从mysql的安装目录拿出sql脚本?
回答 2
已采纳
电脑坏了是啥程度?开不了机器的话可以进安全模式或者pe系统拷贝mysql安装目录和data目录到其他机器上恢复一下
如果表上有写操作没有完成,这个时候加索引,会不会卡住?
回答 2
如果有正在进行的写操作,MySQL会等待这些操作完成。这意味着,直到所有之前的写事务提交或回滚,索引创建操作才会开始。在此期间,表对于其他写操作而言是不可用的,可能会导致这些操作等待或者超时
数据库技术论坛
回答 6
51CTO
在使用cpu多核功能上,mysql和pg哪个能用上多核的特性?
回答 3
MySQL和PostgreSQL都可以使用CPU的多核特性,但是在处理单个查询时,PostgreSQL可以更好地利用多核特性。MySQL在处理单个查询时,只能使用一个CPU核心。这意味着,即使你有一个
mysql中,如何手动切换主库,和备库,就是让主库和备库对调?
回答 1
一般来说不会把主备对调,而是主库故障,把备库切换为主库,假设是这种情况:1.备库stopslave.2.resetslave;3.如果备库有开只读,就关闭只读4.应用程序修改连接地址到新的主库,或则把
因为前后两个链接经过F5负载,无法发到一台MySQL代理,导致SQL没法控制超时。这个问题怎么解决?
回答 1
已采纳
原理:mysql每次建立一个socket连接(connect)时,这个socket都会占用一定内存。即使你关闭(close)连接时,并不是真正的关闭,而是处于睡眠(sleep)状态。当你下次再进行连接