MySQL 优化

服务器环境:

Windows Server 2016

MySQL 8.0.18

有一个云服务器,一个云数据库,打算将云数据库上的数据转移到服务器中,刚刚安装完的MySQL,执行一百多万条数据的查询很慢:

优化前

查询时间很久,而付费购买的云数据库执行同样的查询只需要1.981s

MySQL 8.+ 应该是要比旧版本性能更高的,差距这么大应该是配置参数的问题

在网上搜索相关优化配置,做了如下更改:

max_connections=512
tmp_table_size=128M
thread_cache_size=128
myisam_sort_buffer_size=256M
key_buffer_size=1024M
read_buffer_size=32M
read_rnd_buffer_size=32M
innodb_log_buffer_size=32M
innodb_buffer_pool_size=1G
innodb_log_file_size=512M
back_log=200
join_buffer_size=32M
sort_buffer_size=32M

重启服务后,重新执行:

优化后

需要注意的是

配置文件路径:C:\ProgramData\MySQL\MySQL Server 8.0\my.ini

有些 MySQL 8.0 新版本弃用的配置需要注意一下,以官方文档为主