MySQL 在做什么??启动时磁盘利用率为 100%

What is MySQL doing?? 100% disk utilization from boot

我在 Win10 机器上有一个大型数据库,mysqld.exe 处理大量磁盘 I/O,100%,持续数小时 100MB/秒 - 主要是写入 - 在多次重启后仍然存在.我怎样才能找出它到底在做什么,并阻止它?我知道数据库目前没有被使用,我想找出这个 I/O 的来源并阻止它。我在互联网上找到的唯一解决方案是一般配置建议,我不需要那个,我现在需要关闭这个东西!

show processlist 什么也没显示。

更新:问题是 table 上的巨大后台回滚操作。解决方案是:

1) kill mysqld.exe
2) add innodb_force_recovery=3 to my.ini
3) start mysqld.exe
4) export the table (96GB table resulted in about 40GB .sql file)
5) drop the table
6) kill mysqld.exe
7) set innodb_force_recovery=0 to my.ini
8) reboot and import the table back

尚不清楚数据完整性,但看起来不错。

感谢米尔尼。

如果您从任务管理器查看资源监视器的“磁盘”选项卡,您可以看到正在写入哪些文件,这将提示您它是哪个数据库;

然后您可以使用 SELECT * FROM information_schema.innodb_trx\G 之类的东西来查看打开的交易并查看是哪些语句导致了这个

如果默认的 8MB 增加到 512MB,只需增加 InnoDB 缓冲池大小

SET GLOBAL Innodb_buffer_pool_size = 5168709120