Victor,
Vou compartilhar aqui uma configuração de servidor.
Cenário
Servidor usado para rodar Moodle e sistema GMoodle, o antigo sistema de relatório, atualmente substituído pelo MRport.
Capacidade
32 GB RAM
500 GB SSD
8 CPU
Configuração PHP
date.timezone = America/Sao_Paulo upload_max_filesize=1200M post_max_size=1200M max_execution_time=30 memory_limit=300M
Configuração do MySQL
innodb_buffer_pool_size = 4G innodb_buffer_pool_instances = 6 innodb_additional_mem_pool_size = 512M innodb_log_buffer_size = 256M innodb_flush_log_at_trx_commit = 1 innodb_lock_wait_timeout = 50 innodb_file_per_table = 1 innodb_flush_method=O_DIRECT key_buffer= 4G max_allowed_packet= 500M max_connections= 300 query_cache_size= 160M query_cache_limit= 10M
Essa configuração pode não valer para o seu caso. Foi uma configuração ajustada em contexto específico de um servidor que rodava outros serviços além do Moodle.