Guia completo para restauração do servidor de produção: mudanças entre as edições

De EAPn
Ir para navegação Ir para pesquisar
Linha 11: Linha 11:
<br>
<br>


==Passo 0 - Preparação ARRUMAR==
==Passo 0 - Preparação==
<small>Legenda:<br>
<small>Legenda:<br>
Em <span style="color:red">vermelho</span> temos passos importantes e que requerem mais atenção<br>
Em <span style="color:red">vermelho</span> temos passos importantes e que requerem mais atenção<br>

Edição das 22h52min de 8 de dezembro de 2022

Observação: este guia espera que sejam utilizados os softwares mencionados (similares podem funcionar de forma distinta) e um sistema operacional baseado em debian
Observação: guia testado no ubuntu server 20.04.05 em 06/12/2022

TODO*ARRUMAR OS AZUIS
TODO*BUSCAR UM AZUL QUE NAO FIQUE TAO CLARO SEM DARKMODE MAS AINDA FIQUE CLARO O SUFICIENTE COM DARKMODE
TODO POR ULTIMO*REVISAR O TESTO E MANUAL PARA VER SE FICARAM CLAROS

Passo 0 - Preparação

Legenda:
Em vermelho temos passos importantes e que requerem mais atenção
Em azul temos passos opcionais, não muito importantes, comentarios e observações

Seção 0.1 - Guias sobre sistemas, programas e credenciais

Antes de começar, é necessário entrar no servidor de produção através do SSH, estude brevemente estes guias pois serão úteis mais a frente:

Seção 0.2 - Validação do pacote de Backup

Passo 1 - Restauração da Base de dados (MySQL)

Seção 1.1 - Instalação do MySQL

1.1.1) Instalar a base de dados. Executar comando: 
                                                                          
"sudo apt install mysql-server"

Seção 1.2 - Encontrar senha padrão do MySQL recém instalado

1.2.1) (PASSO A SER EXTINTO) Importar a "table user" para a DataBase MySQL do backup (para garantirmos os mesmos usuários, senhas e permissões). Executar este comando no servidor de processos: 
           
"mysqldump -u root -p mysql user > user_table_dump.sql"

1.2.2) Encontrar systemspecificpassword. Executar comando: 

"sudo cat /etc/mysql/debian.cnf"

A senha encontrada em systemspecificpassword será usada no passo seguinte para logar com o usuário debian-sys-maint

Seção 1.3 - Restauração da table user do MySQL

1.3.1) Restaurar a "table user". Executar comando: 

"mysql -u debian-sys-maint -p mysql < user_table_dump.sql"

Em seguida, digite ou cole a senha no prompt de senha 

1.3.2) Reiniciar o MySQL. Executar comando:  
 
"sudo service mysql restart"

1.3.3) Verificar se deu certo. Logue no mysql com a credencial root da base antiga. Executar comando:  
  
"mysql -u root -p"

Em seguida, digite ou cole a senha no prompt de senha

Use o comando: "exit;" para voltar ao terminal

Seção 1.4 - Mover os arquivos da base de dados e ajustar as permissões de acesso aos mesmos

1.4.1) Parar o MySQL para mover os arquivos e ajustar as permissões. Executar comando:

"sudo service mysql stop"

1.4.2) Configurar o MySQL para armazenar a base de dados em /dados/mysql. Executar comando:

"sudo nano /etc/mysql/my.cnf"

Caso não exista adicionar linha "[mysqld]" seguida de "datadir = /dados/mysql" na linha seguinte. pode ser adicionado no final do arquivo

1.4.3) Copiar base de dados para o novo local com: 
 
"sudo cp -R -p /var/lib/mysql/dados"
 
Supondo que o disco extra com mais espaço está em /dados/mysql 

observação: (este passo é para OSs que usam o apparmor (como o ubuntu server), pode variar para outros OSs)
1.4.4) Arrumar permissões do apparmor. Executar comando: 
 
"sudo nano /etc/apparmor.d/usr.sbin.mysqld"
 
Subtituir tudo que começar com "/var/lib/mysql" para o novo local. Neste caso "/dados/mysql"

1.4.5) Iniciar o MySQL novamente após mover os arquivos e ajustar as permissões. Executar comando:

"sudo service mysql start"

1.4.6) Verificar que está funcionando. Executar comando: 

"sudo service mysql status"
 
Confira se não há erro, se houver terá de ser solucionado fora do escopo deste guia, porém muito provavelmente estará relacionado a algum passo anterior mal executado

Seção 1.5 - Restaurar as bases de dados

1.5.1) Criar as bases de dados com os mesmos nomes das originais.

Logue na base de dados. Executar comando:

"mysql -u root -p"

 Após logar, execute separadamente os comandos:

"create database eap_bdm_bonita_prod;" 
"create database eap_bonita_prod;"

Use o comando: "exit;" para voltar ao terminal

1.5.2) Restaure as bases de dados. execute separadamente os comandos:

"mysql -u root -p eap_bonita_prod < bonita_db_*.sql"
"mysql -u root -p eap_bdm_bonita_prod < bonita_dbm_*.sql"

Seção 1.6 - Reiniciar o servidor

Recomendado:
1.6.1) Reiniciar o servidor para liberar toda a RAM que o mysql alocou. Executar o comandos: 

"sudo reboot"

Passo 2 - Restauração do Bonita