ownCloud MySQL tabela “oc_filecache” corrompido, posso regenerá-lo?

1

A minha atualização do ownCloud falhou devido à corrupção de dados do MySQL.

Examinando o log de erros, parece que a corrupção afeta a tabela owncloud.oc_filecache .

Eu tentei executar o check table owncloud.oc_filecache; no console do MySQL, mas o MySQL ainda travava.

O nome sugere que a tabela contém apenas dados de cache e que deve ser possível gerar novamente.

Existe alguma maneira de soltar e recriar a tabela do zero?

    
por user149408 13.07.2017 / 19:26

1 resposta

1

Para limpar a tabela, entre no console do MySQL:

mysql -uroot p

Faça o login com sua senha e digite:

truncate owncloud.oc_filecache;
check table owncloud.oc_filecache;
quit

( owncloud é o nome do banco de dados e oc_ é o prefixo do nome da tabela, os quais são especificados durante a configuração e podem diferir em seu sistema.)

Isto irá apagar todo o conteúdo da tabela - o que é OK para oc_filecache , já que ele será reconstruído pelo servidor, mas não faça isso em uma tabela aleatória a menos que você sabe o que está fazendo .

Depois disso, tentei novamente o occ upgrade e recebi outro erro, desta vez para a tabela oc_activity .

Depois de uma pesquisa rápida ter revelado que oc_activity contém dados de atividade recentes (a partir dos quais as entradas vencem), eu executei novamente a operação acima em oc_activity (sacrificando as entradas de "Atividade recente" de todos os usuários no sistema) e tentou novamente occ upgrade .

Desta vez, a atualização ocorreu sem erros. Eu tive que executar occ maintenance:mode --off manualmente, depois reativar meus aplicativos, e as coisas parecem OK agora.

    
por 13.07.2017 / 21:30