服务器环境:
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 新版本弃用的配置需要注意一下,以官方文档为主