I have installed MySQL 8.0.18 Community with the same configuration (mysql-installer-community-8.0.18.0.msi installer, custom install with server + workbench, standalone server, legacy authentication, rest are the defaults ) on multiple Windows environments with surprisingly varying results.
3 out of 5 of these machines ran MySQL insanely slow when I was inserting a few million lines into the DB
- Task Manger said that the disk activity time is 100% but barely moved any data (50-500 KB/s for half an hour)
- I went into MySQL Workbench, noted that the data graphs on the Server Status window are not working,
- the InnoDB Disk Writes section on the Dashboard says that the writing speed is about 40 KB/s.
Then I went to check the my.ini file and found this nonsense:
innodb_buffer_pool_size=8M
which was the default setting for some odd reason.
The other two machines had this line commented out in the ini file so they were working properly, MySQL was behaving as expected.
The bad environments:
- Desktop machine, Windows 10, 16 GB RAM 7th gen i5 CPU with 4 cores. MySQL was never installed on it before.
- Physical machine, Windows Server 2016, 44 GB RAM, some beefy Xeon CPU (don't remember the exact model but it was not bad), MySQL was never installed before
- VM (on the laptop described in good #2) with 16 GB ram and 6 vCPUs. MySQL was never installed before.
The good environments:
- Desktop machine, Windows 10, 16 GB RAM, 4th gen I5 CPU with 4 cores. MySQL 8.0.17 was installed previously, it was working properly. I did a clean install to 8.0.18 and the buffer pool size value was commented out
- Laptop, Windows 10, 32 GB RAM, 8th gen I7 CPU with 4 cores. Same story with MySQL.
I could not find anything in the MySQL documentation or on the web describing this behavior. I mean innodb_buffer_pool_size=8M is laughable, I see NO reason why would this be the default value
Does anyone have any idea why this would happen?
my.ini
immediately after that. Currently I suspect you may have had older copies of MySQL on some machines, whose configuration files did not get replaced by the installation.