Como regra geral, o innodb_log_file_size é suposto ser de 25% de innodb_buffer_pool_size No seu caso, você deve adicionar essa variável da seguinte forma:
[mysqld]
query_cache_size=128M
innodb_buffer_pool_size=512M
innodb_log_file_size=128M
innodb_flush_method=O_DIRECT
Clique aqui para aprender a redimensionar innodb_log_file_size - > link
Aqui está uma maneira de configurar o tamanho correto de innodb_buffer_pool_size com base na quantidade de dados do InnoDB que você possui atualmente. Execute esta consulta:
SELECT CONCAT(ROUND(KBS/POWER(1024,
IF(PowerOf1024<0,0,IF(PowerOf1024>3,0,PowerOf1024)))+0.49999),
SUBSTR(' KMG',IF(PowerOf1024<0,0,
IF(PowerOf1024>3,0,PowerOf1024))+1,1)) recommended_innodb_buffer_pool_size
FROM (SELECT SUM(data_length+index_length) KBS FROM information_schema.tables
WHERE engine='InnoDB') A,
(SELECT 2 PowerOf1024) B;
Se recommended_innodb_buffer_pool_size
retornar mais de 75% da RAM instalada, use 75% da RAM instalada como o valor recomendado. Como mencionado anteriormente, configure o innodb_log_file_size de acordo.