Slide 1

Slide 1 text

PostgreSQL Upgrade Like a Boss @fabriziomello

Slide 2

Slide 2 text

Fabrízio de Royes Mello Empreendedor Colaborador PostgreSQL Pai, Marido, etc ...

Slide 3

Slide 3 text

Porque realizar upgrade? - Correção de Bugs/Falhas Segurança - Novos Recursos

Slide 4

Slide 4 text

PostgreSQL Versioning Policy - Ciclos Anuais (major) - Versões corretivas trimestrais (minor) https://www.postgresql.org/developer/roadmap/ - Suporte por 5 (cinco) anos https://www.postgresql.org/support/versioning/

Slide 5

Slide 5 text

PostgreSQL Versioning Numbering MAJOR . MINOR . PATCH 9.6.15 MAJOR . PATCH 11.5 ... 9.6 10 ...

Slide 6

Slide 6 text

Rollback • Gerência de Risco • Planejar primeiro • Recursos computacionais a disposição

Slide 7

Slide 7 text

Minor Upgrade - Binários compatíveis - Não existe necessidade de dump/restore ou pg_upgrade - Necessita “restart” (downtime mínimo)

Slide 8

Slide 8 text

Minor Upgrade • Switchover/Switchback para minimizar downtime • Rollback? Manter cópia dos pacotes em um repositório local porque no oficial não ficam TODOS disponíveis

Slide 9

Slide 9 text

Major Upgrade • Existe janela para “downtime”? • Qual o tamanho do cluster? • Existe recurso computacional para Rollback?

Slide 10

Slide 10 text

Major Upgrade com Dump/Restore • Tempo de dump/restore (paralelo?) • Ao final temos um cluster totalmente “novo” • Tempo para warmup (cache das páginas)

Slide 11

Slide 11 text

Major Upgrade com pg_upgrade • Dois modos: “copy” e “in-place” • Tranfere catálogo entre versões com pg_dump e copia ou linka (hard link) os datafiles • Tempo para warmup (cache das páginas)

Slide 12

Slide 12 text

Casos Reais

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

Come to the “Elephant” side of the force !!

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text