[RESOLVIDO] Problemas com upgrade 2.4.8.0 para 3.1.0

Olá,

Estou problema para atualização de uma instalação do OJS. Hoje a versão que esta funcionando é 2.4.8.0 e gostaria de atualizar para ultima versão…

Ao rodar o comando php tools/upgrade.php upgrade, o script executa um pouco e trava no seguinte erro:

 [data: dbscripts/xml/upgrade/3.0.0_update.xml] ERROR: Upgrade failed: DB: Duplicate entry '2-1-2-1' for key 'review_round_files_pkey'

Eu imagino que anteriormente outra pessoa pode ter tentado atualizar para versão 3, sem sucesso, e o banco de dados ter ficado parcial entre a versão 2 e 3…

Alguma sugestão?

Desde de já agradeço.

Consegui atualizar.

Realmente o problema era que o banco estava com varias tabelas da versão 3 porem ainda estava funcionando na versão 2.

Para solucionar fiz uma instalação limpa da versão 2.4.8, esvaziei todos os dados, deixando apenas as tabelas vazias. Depois exportei apenas os dados da versão que estava em produção e inseri no banco de dados limpo. Encontrei diversos conflitos e fui avaliando um a um.

Feito isso realizei a migração utilizando este novo banco, até o momento está tudo funcionando perfeitamente.

Estou a disposição para contribuir com qualquer problema.

Abraços.

1 curtida

bom dia @fseduardo,

Estou tentando atualizar da versão do ojs 2.4.8.2 para a ultima versão ojs 3.1.1.2, no entanto, durante o processo é exibido esta mensagem: ERROR: Upgrade failed: DB: Table ‘articles_migration’ already exists.
Já pesquisei a respeito e não encontrei nada que solucionasse este problema.

Att,
@franciscosatiro

Olá @franciscosatiro

Parece que seu banco de dados já passou por uma tentativa de upgrade.
Poderias restaurar o banco original e tentar novamente o upgrade?

Israel

Segui os passos realizados por @fseduardo , porém tenho uma dúvida:
o script de update que devo rodar é o da versão 3.1.1.2 ou a que se encontra instalada, ojs 2.4.8.2?

Bom dia @franciscosatiro,

O erro “Table ‘articles_migration’ already exists” é por que seu começou a atualizar e por algum motivo a atualização não completou. Minha sugestão é que faça conforme eu fiz.

Crie uma instalação limpa da versão 2.4, migre (Para isso uso o softwate HeidiSQL) apenas os dados do seu banco para essa nova instalação. (Com isso vai eliminar todas as tabela da versão 3 que estão lá)

Certo que esta funcionando corretamente a versão 2, faça a atualização conforme as instruções da documento do OJS.

(Hoje é feriado em minha cidade, mas amanha estarei na universidade e posso estar auxiliando mais caso precise.)

Att

Olá @franciscosatiro

Para atualizar para a versão 3.1.1.2 você deve rodar o script de upgrade desta versão. O upgrade atualiza para a "Code version " que o parâmetro check lhe mostra.
Ex.:

$ php /tools/upgrade.php check
Code version:      3.1.1.2 <== essa é a versão que seu upgrade vai chegar
Database version:  2.4.8.1
Latest version:    3.1.1.2

Abs.
Israel

obrigado @fseduardo, vou fazer o upgrade caso tenha alguma dúvida entro em contato.

certo @israelcefrin vou tentar aqui.

Oi, quando executo o upgrade.php ele não responde nada! O q pode ser?

Esta fazendo o comendo correto? php upgrade.php upgrade ou sudo php upgrade.php upgrade

Estou com um erro mais ou menos parecido.

php parse error: syntax error, unexpected T_FUNCTION in …/libpkp/includes/functions.inc.php on line 251

Será que alguém já teve o erro acima e como resolveram?
Estou tentando migrar da versão 2.4.8.1 para a 3.2.1.1

Obrigado pela ajuda a todos.

Olá @fseduardo ! Tudo bem?

Venho do futuro (rs) de volta a esse post pra pedir uma dica sobre esse procedimento que vc fez… peguei uma instalação OJS que aparentemente ficou em produção tendo processos de atualização incompletos ou com erro, e aí estou penando para resolver. No momento estou com o mesmo erro descrito aqui no tópico e achei interessante a solução que você deu, de migrar os dados da base problemática para a base limpa.

Poderia dar um overview de como fazer isso? Muito obrigado.

1 curtida

Olá @eugeniotelles, recebi a notificação apenas hoje.

Talvez ja tenha resolvido, o procedimento foi:
1 - Instalar uma instancia zerada do OJS versão antiga.
2 - Limpar o novo banco de dados da nova instalação, mantendo apenas as estrtuturas.
3 - Migrar os dados do banco com problema para o novo banco.
4 - Substituir o banco com problema pelo banco recem migrado.
5 - Recomeçar a atualização de versão.

Atte

2 curtidas