Migrar do Heroku para Atlas

Migrar do Heroku para Atlas

Deve migrar a base de dados mLab Mongo, onde se encontram os seus dados do Nightscout, para uma base de dados  Atlas, antes de 10 de Novembro de 2020.

 

Aceda ao site Heroku através de um computador.

 

Caso tenha a base de dados num servidor que não o heroku, não siga este manual.

Pré-requisito:

Site nightscout atualizado para a versão mais recente.

Para verificar se o site está atualizado, aceda ao mesmo, ou atualize caso esteja aberto.

Clique no menu no canto superior direito.

 

Deslize até ao final do menu e verifique a versão:

 

Caso não esteja atualizado, siga este manual: https://www.diabretes.pt/?p=2368

 

Não mude de navegador (chrome, safari, edge, firefox,…) de internet, nem de computador durante este processo.

Caso não esteja a conseguir com o navegador que está a utilizar, mude de navegador.

 

Passo 1: Heroku

Faça login no heroku fazendo clique neste link: https://id.heroku.com/login

Insira o email e a password e depois clique em Log In.

 

Selecione o seu site Nightscout.

 

Clique em Settings

 

 

Clique em Reveal Config Vars

 

Deslize a página para baixo até encontrar uma variável chamada  MONGO_CONNECTION, MONGODB_URI,MONGOLAB_URI ou similar.

Esta variável foi criada automaticamente na primeira instalação no Heroku, e vamos fazer um backup da mesma.

Copie o valor desta variável (clica na linha onde está o texto, ficando o texto seleccionado, depois clica no botão direito do rato e clica em copiar ou ctrl + C), será algo como: mongodb://heroku_user:password@database.mlab.com:port/heroku_user

 

 

Ainda neste ecrã, deslize para baixo até aparecer uma linha onde tem KEYVALUE.

Irá acrescentar uma nova linha.

Na caixaKEY escreva MONGO_TEMP e na caixa VALUE cole o texto anterior (clica na caixa, botão direito do rato e colar, ou ctrl + V), no final cliquem no botão Add.

Se correu bem verá uma nova linha no final com esta informação.

 

Crie ainda  uma última entrada:

Vá até ao final da página até ver KEYVALUE

No campo KEY escreva MONGO_CONNECTION (deixe o campo VALUE em branco) depois clique em Add.

 

Este novo campo irá aparecer no final da lista.

Mais tarde iremos utilizá-lo.

 

Agora vá até ao topo da página e seleccione Overview (topo esquerdo)

Clique em mLab MongoDB

 

Irá ser aberto um novo separador da mLab. Deixe-o aberto.

 

Volte ao Heroku (separador que está aberto) e seleccine Settings.

 

Passo 2: Conta Atlas

Vamos criar a conta Atlas.

Abra um novo separador clicando em: https://www.mongodb.com/cloud/atlas e clique em Start Free

Preencha a informação e clique em Get Started Free

Se aparecer a página seguinte, escolha um nome para a sua organização (ou deixe o valor por defeito). Depois clique em Skip.

Deslize a página para baixo e clique em Dismiss

Clique no seu nome no topo direito e seleccione Organizations.

Clique no nome da sua organização.

 

Clique em Settings.

 

Passo 3: migração para mLab

Verifique se o separador mLab ainda está aberto. Se estiver num separador para fazer login, reabra-o através do Heroku.

Deslize a página para baixo até Connect to mLab

 

Authorize Atlas a conetar-se a mLab.

A página irá abrir no mLab.

Do lado direito clique em  ... e em Configure Migration

Clique em Create or Select Target Project

 

Clique no menu por baixo de Project e seleccione Create New Project

Insira um nome (não é importante) e clique em Confirm Project and Continue

 

Clique em Import Database Users and Continue

 

Marque a caixa de seleção  “Allow all IP addresses…” e clique em Allow All And Continue

Clique no menu por baixo de Cluster e seleccione Create most equivalent new cluster RECOMMENDED

Clique em Confirm Target and Continue

 

Seja paciente.

Clique em Confirm Source and Target

Clique em Confirm and Continue

Clique em Begin Test Run

Espere que o teste termine (seja paciente)

Assim que possível clique em Confirm Connectivity

 

PASSO MAIS IMPORTANTE, NÃO AVANCE SEM LER PRIMEIRO, SÓ DEPOIS CLIQUE EM ALGO

Copie a nova cadeia de caracteres da Atlas, clicando no botão  Copy  e cole-a num local seguro, por exemplo um documento do word, de modo a não a perder.

Clique no botão  Copy

Clique em Confirm And Continue

MAIS UMA VEZ, LEIA PRIMEIRO E SÓ DEPOIS CLIQUE EM QUALQUER BOTÃO

Clique na seta ao lado de Confirm and Continue e seleccioneConfirm and Close!

 

E ronto, vamos agora fazer a migração de mLab para Atlas

Clique Review Process and Begin

 

Selecione I understand … e clique Begin Migration (seja paciente e aguarde que o processo termine.)

 

Feito! Clique Start Using Atlas

 

Clique em I’m Done

Selecione I understand …I am not using … e depois clique em Confirm and Close

A janela irá atualizar, a base de dados foi migrada para a Atlas.

 

 

Passo 4: Connection string

Volte ao Settings no Heroku

Clique em Reveal Config Vars

Deslize até MONGO_TEMP.

Seleccione o valor desta variável.

No mesmo documento onde colocou a chave Atlas coloque esta chave.

Terá duas chaves, algo como:

mongodb+srv://heroku_zzzzzzzz:<password>@cluster-zzzzzzzz.xxxxx.mongodb.net/heroku_zzzzzzzz?retryWrites=true&w=majority

mongodb://heroku_zzzzzzzz:hfo7fbh6h3dummy6o60kvjojg0@yyyyyyyy.mlab.com:12345/heroku_zzzzzzzz

 

A sua password está na chave “mongodb:// …” , tem 26 carateres e está entre : e @ .

Copie estes carateres e na primeira chave substitua <password> por estes carateres, ficando algo como:

mongodb+srv://heroku_zzzzzzzz:hfo7fbh6h3dummy6o60kvjojg0@cluster-zzzzzzzz.xxxxx.mongodb.net/heroku_zzzzzzzz?retryWrites=true&w=majority

Tenha cuidado pois no copiar colar pode ficar com espaços entre os : e a password copiada, ou entre a password e @. Se sim, elimine-os.

Copie esta chave.

Procure pela variável MONGO_CONNECTION , clique no lápis para a editar.

No campo Value cole a chave e clique em Save changes

Procure a variável MONGODB_URI ou MONGOLAB_URI que identificou no inicio e clique na cruz para a apagar.

Confirme com Delete Config Var

Parabéns, concluiu a migração de mLab para Atlas.

 

 

Fonte: http://nightscout.github.io/update/migrate_heroku/