Olá, pessoal! Nos últimos dias estamos enfrentando um problema no Portal de Periodicos da UFC. O sistema começa a ficar extremamente lento, sem condições de uso e com carregamento demorado de qualquer função. Geralmente, essa lentidão é seguida dessa tela de erro que indica problemas na tabela VAR e logo em seguida o site cai, apresentando o erro 500. Não conseguimos permanecer com o site no ar. Alguém aqui já passou por isso? Podem nos ajudar? Toda dica é muito bem-vinda. Obrigada.
@Juliana_Lima1, você chegou a verificar com o pessoal da TI responsável pela hospedagem do seu OJS?
Pelo erro exibido na imagem, há dois problemas principais: falha no acesso aos dados de sessão do PHP e falha na conexão com o banco de dados MySQL, provavelmente por conta de um problema no socket. Seria importante que a equipe técnica verificasse se o banco de dados está em funcionamento, se o arquivo config.inc.php
está configurado com 127.0.0.1
(em vez de localhost
) e se as permissões do diretório de sessões estão corretas. Reiniciar o serviço do Apache e do PHP também pode resolver.
Os logs de erro do servidor devem trazer mais detalhes sobre o que está acontecendo. A equipe da TI pode identificar rapidamente o problema por lá. Caso queiram compartilhar esses logs aqui, podemos ajudar a interpretar e sugerir correções mais específicas. Mas o primeiro passo é mesmo com o suporte técnico local, que tem acesso direto ao ambiente.
Olá @Juliana_Lima1.
A tela de erro que você compartilhou revela dois problemas principais que estão causando a instabilidade no portal OJS da UFC:
Erro principal:
Fatal error: Uncaught PDOException: SQLSTATE[HY000] [2002] No such file or directory
O que isso significa?
Esse erro indica que o PHP (e o OJS) não está conseguindo se conectar ao banco de dados MySQL/MariaDB. Isso pode ocorrer por alguns motivos:
- O serviço do banco de dados está parado ou travou.
- O caminho do socket do MySQL está incorreto ou ausente.
- Problema de permissões no socket do MySQL (geralmente /var/run/mysqld/mysqld.sock).
- Sobrecarga extrema do servidor, esgotando conexões ou recursos de I/O.
- Parâmetros incorretos no config.inc.php, principalmente o host do banco de dados.
Erro de sessão:
Warning: session_start(): Failed to read session data: user
(path: /var/lib/php/sessions)
O que isso significa?
Esse alerta indica que o PHP não conseguiu ler ou gravar as sessões — o que também pode ser sintoma de:
- Falta de espaço em disco.
- Permissões erradas no diretório de sessões.
- Sistema de arquivos temporários (como /var) cheio ou corrompido.
- Lentidão ou travamento do disco.
Diagnóstico passo a passo:
1. Verificar se o banco está ativo
No servidor do OJS, rode:
sudo systemctl status mariadb
# ou
sudo systemctl status mysql
Se estiver parado, inicie:
sudo systemctl start mariadb
2. Verificar espaço em disco
Execute:
df -h
Se tmp, var, ou o disco raiz (/) estiverem 100% cheios, o PHP não consegue gravar sessões, nem o MySQL abrir tabelas corretamente.
3. Verificar permissões da pasta de sessão
Rode:
ls -ld /var/lib/php/sessions
Garanta que o dono seja www-data (ou o usuário do PHP no seu sistema) e que há permissão de leitura e escrita.
4. Verificar o caminho do socket do MySQL
No config.inc.php do OJS, veja se o host está como:
host = localhost
Se sim, o PHP vai tentar conectar via socket. Certifique-se de que o caminho do socket está correto.
Você pode mudar para usar TCP/IP colocando:
host = 127.0.0.1
Isso força a conexão via IP e evita problemas com socket ausente ou travado.
5. Limpar cache do OJS
Depois que estabilizar o banco de dados:
rm -rf cache/*.php
rm -rf cache/t_compile/*.tpl.php
Sugestão final
Esse tipo de erro é sintoma de um servidor sobrecarregado ou mal configurado. Se possível:
- Aumente os limites de conexões do MySQL.
- Adicione swap se estiver sem.
- Revise os parâmetros de max_connections, wait_timeout e innodb_buffer_pool_size no MySQL.
- Ative slow_query_log para detectar gargalos.