我在MySQL 5.6升级中遇到了性能问题。
操作系统版本:Solaris 10
语言:Perl脚本
MySQL版本:MySQL从5.1升级(逻辑升级 - 在同一服务器上安装5.6并在5.6中恢复)
内存:64 GB
我已经在solaris 10中将MYSQL表单5.1升级到5.6并将所有mysql表从MYISAM转换为INNODB,因为mysql 5.6具有默认存储引擎作为INNODB。我的数据库大小为4.5 GB,并添加了innodb的参数。
innodb_file_per_table
innodb_flush_method=O_DIRECT
innodb_log_file_size=512 M
innodb_buffer_pool_size=5 G
我的应用程序在执行事务时创建了一些临时表,因此我创建了tmp_table_size
和max_heap_table_size
到512 M。
在应用程序中有3个模块,2个工作正常,在第三个模块中,与MySQL 5.1相比,它非常慢。它包含近20多个更新语句,并与临时表和主表进行一些连接,在一些表中包含200万条记录。
我有解释计划,并对查询进行了分析。在分析中,我发现发送数据需要花费大量时间,因为这种性能会降低。
任何人都可以建议改善表现。
答案 0 :(得分:0)
我也有类似的问题,solaris10和mysql从5.1升级到5.6。 我做了逻辑升级,恢复时花了很长时间来恢复1Gb数据库。我尝试使用inplace upgrde并发现类似的性能问题。
我拥有从过去3.5年开始运行的solaris 10服务器。所以我重新启动了我的服务器,以便清除所有缓存,重启后我启动了所有数据库服务。
注意:在重新启动之前,请停止所有服务,最好创建另一个5.1数据库版本并进行备份并启动就地升级活动。最好是在内部而不是进行逻辑升级。两者都相同,但恢复时需要更多时间。