Тёмный

PostgreSQL - Replicação de Base de Dados Em Tempo Real Para Obter Redundância e Escalabilidade 

Patrick Muniz
Подписаться 559
Просмотров 8 тыс.
50% 1

Neste vídeo você verá como configurar uma instância de replicação de banco de dados no postgresql.
O recurso de replicação no postgresql permite com que você replique em tempo real todas as operações do seu banco de dados principal para um banco de dados secundário, sendo útil para ter alta disponibilidade e até mesmo fazer load-balance de requisições.
#postgresql #database #replication #docker
❤️ Gostou do conteúdo, considere fazer uma doação:
Chave pix: 7d869525-94ef-4dd4-a95c-dc043c1ec9f6
📱Me acompanhe nos demais canais:
1️⃣ Instagram: / patrickmuniz.dev
2️⃣ Linkedin: / patrick-corr%c3%aaa-mu...

Опубликовано:

 

21 сен 2022

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 61   
@klebersm
@klebersm 2 дня назад
👏👏👏👏
@netto_info
@netto_info Год назад
Parabéns pelo canal e pelo conteúdo, Patrick!
@hemersonwillian5611
@hemersonwillian5611 Год назад
Excelente conteúdo parabéns pela didática e pelo conhecimento compartilhado Deus abençoe.
@mateusrocha8107
@mateusrocha8107 Год назад
Muito bom seu conteúdo, mano! Sucesso.
@lucasmaiamoreira
@lucasmaiamoreira Год назад
Muito bom Patrick Parabéns pela aula!
@miguelvaldrighi6357
@miguelvaldrighi6357 Год назад
Muito bom! Parabéns pela abordagem
@LemoviskiRAP
@LemoviskiRAP Год назад
Patrick Muniz Excelente conteúdo. Obrigado por se dispor a explicar esse conteúdo tão necessário e ainda fez de forma simples e clara e objetiva.
@NieltonMoraes
@NieltonMoraes Год назад
Sensacional. Muito obrigado!
@jeanbroqua
@jeanbroqua Год назад
Valeu pela aula! 🍞
@FabioLeonardoAlvesLeite
@FabioLeonardoAlvesLeite 8 месяцев назад
Excelente. Parabéns.
@hugomesquita6131
@hugomesquita6131 8 месяцев назад
Excelente conteúdo, mandou bem!
@FredWilliamTornoJunior
@FredWilliamTornoJunior Год назад
Muito obrigado. Parabéns.
@marcelomsmms
@marcelomsmms 10 месяцев назад
Muito bom, obrigado!
@NieltonMoraes
@NieltonMoraes Год назад
Patrick, eu consegui reproduzir exatamente o mesmo que voce. Agora estou precisando além de replicar, configurar o pool de conexões, para quando uma instancia cair uma outra assume a parada. Voce teria este tutorial?
@FantasminhaGames
@FantasminhaGames 7 месяцев назад
Excelente video, me ajudou muito.
@denisquintasluiz506
@denisquintasluiz506 Месяц назад
Muito interessante 💯
@marcionascimento3846
@marcionascimento3846 3 месяца назад
Muito bom!
@rafaelg8238
@rafaelg8238 9 месяцев назад
excelente video, parabens. continue trazendo conteudos assim. como sugestao, traga conteudos do postgres em k8s. abs
@user-nd2fv1zr9o
@user-nd2fv1zr9o 10 месяцев назад
muito bom !
@MrDiegoverdan
@MrDiegoverdan 6 месяцев назад
E se houver alteração na instância REPLICATION? A MAIN recebe essa informação?
@mkevison
@mkevison Год назад
Pra quem não estiver usando o docker e estiver no usuario root provável que seja necessário dar o comando: sudo chown postgres -R /var/lib/postgresql/{versão-do-postgres}/main/ Quando usei o comando pg_basebackup ele definiu a pasta do postgres para o root e o postgres não conseguiu iniciar, então com isso ele volta o acesso da pasta para o usuario postgres
@HudsonVentura
@HudsonVentura 3 месяца назад
Patrick, excelente didática e um vídeo de conteúdo Premium. Parabens! Dúvida: existe uma maneira de transformar a minha(s) replica(s) em um banco de escrita, e que todos os nós funcione com comunicação bidirecional (tanto escrita como leitura para ambos os sentidos main->replica / replica->main)? Obrigado!
@denernun
@denernun Месяц назад
Estou com esse problema, e a maioria dos vídeos é sobre isso de backup, eu quero algo útil ! Tenho 7 lojas e o servidor master é na cloud, como deixar todo mundo sincronizado e cada loja tem seu servidor local e vai usar esse servidor como o master da loja....acho que isso é o básico kkk
@talyssonsilva7520
@talyssonsilva7520 Год назад
muito bom, gostei, continue assim ótima didática. onde está o link dos arquivos que voce disse no video !?
@NieltonMoraes
@NieltonMoraes 11 месяцев назад
Patrick, estou precisando aprender a configurar o failover com o pgpool para manter a alta disponibilidade de duas instancias postgis usando o docker. Com seu vídeo eu consegui realizar a replicação com sucesso. Teria um tutorial ensinando? Agradeço desde já. Obrigado
@maurosma
@maurosma Год назад
É possível usar dois servidores com o mesmo banco de dados para balancear a carga. Neste exemplo a informação a informação do Master é replicada. O acesso é total é só no srv master.
@patrickmuniz7878
@patrickmuniz7878 8 месяцев назад
opa, você pode configurar um pgpool para atualizar como um proxy entre sua aplicação e os bancos de dados e ele faz esse papel de load balance da conexões.
@mkevison
@mkevison Год назад
Muito bom o vídeo Patrick! Me tira uma duvida, essa replicação é assincrona ou sincrona?
@patrickmuniz7878
@patrickmuniz7878 Год назад
Por padrão é assíncrona (podendo configurar para síncrono), porém o atraso da configuração assíncrona é quase imperceptível se ambos as bases estiverem na mesma rede.
@patriciaamorim2704
@patriciaamorim2704 Год назад
Patrick, Otimo video Parabéns! Me tira uma duvida, no caso do master morrer, posso usar a replicação sem problemas? ou tem algum ajuste a ser feito?
@patrickmuniz7878
@patrickmuniz7878 Год назад
Opa, então, basta remover o arquivo standby.signal da raiz da instancia de replicação e reiniciar o banco que ele inicializará como um master.
@caio7520
@caio7520 Год назад
Opa Patrick blz ? tutorial incrível meu amigo, mas eu gostaria de fazer uma pergunta, no momento 26:31 você replicou outras instancias do postgresql, eu poderia fazer diferente por exemplo configurar um server master em uma VM e clonar ele assim transformando o clonado em slave?
@patrickmuniz7878
@patrickmuniz7878 Год назад
Opa Caio, blz? Sua abordagem proposta de clonar uma VM master creio que funcionaria sim, desde que claro fazendo as devidas configurações, na prática o que você deseja é fazer o mesmo trabalho do pg_base_backup só de de outra forma, enfim sugiro realizar o experimento em um ambiente de testes, boa sorte.
@d2vidguedes
@d2vidguedes 3 месяца назад
Excelente explicação! Conteúdo muito bom. Uma dúvida a respeito, é possível realizar a replicação de uma única tabela para outra base?
@pettersonabade6169
@pettersonabade6169 2 месяца назад
sim, é possível
@reginaldomartins3546
@reginaldomartins3546 Год назад
Muito bom o Vídeo!! mais fiquei com uma duvida, como monitorar no dia a dia se a replicação esta ok ou se ocorreu algum problema? aproveitando, com essa mesma configuração posso colocar mais de um slave ou tem algo mais a configurar?
@patrickmuniz7878
@patrickmuniz7878 Год назад
fala ai amigo, tudo beleza? então, hoje eu monitoro as vm's apenas, isso através do zabbix, claro que isso não garante que a replicação esteja funcionando, mas parto do principio que se configurei tudo certo, e ambos (master e replicas) estão conversando só irão parar de funcionar se acontecer alguma interrupção, geralmente a nível de VM, mas eventuamente dou uma olhada de forma manual nos logs. Sobre sua segunda pergunta não tem limite de replicas, a configuração é a mesma para qualquer replica, talvez o limite é a quantidade de slot que você definir no master, bem como recursos de infra. Enfim, espero ter ajudado, abraços.
@celiorubim
@celiorubim Год назад
Amigo, apenas uma pergunta. Eu preciso ter os S.Os que contem os banco de dados Identicos? ou seja um servidor Ubuntu18.4 no que contem o Postgree como master e outro servidor 18.4 no Slave (backup)? e aproveitando...as versoes do postegree tem que serem identicas pra efetuar a replicação?
@patrickmuniz7878
@patrickmuniz7878 Год назад
Sobre a primeira pergunta, pode subir o banco de dados em S.O's e versões diferentes. Sobre a segunda pergunta, nos meus testes só consegui replicar na msm versão.
@celiorubim
@celiorubim Год назад
@@patrickmuniz7878 muito obrigado!!
@badwolfrfl
@badwolfrfl Год назад
@Patrick Muniz, eu gostaria de saber se consigo fazer replicação, no caso para uma migração com uma versão diferente no PostgreSQL? Exemplo, meu master e slave atual está na versão 10 e, crio um novo slave com a versão 13. Ele replicaria?
@patrickmuniz7878
@patrickmuniz7878 Год назад
Olá Rafael, obrigado pelo comentário, na documentação atual do postgres tem sim a citação dessa possibilidade, mas confesso que nunca utilizei, valeria uma tentativa em um ambiente de testes, talvez migrar do 10 para 13 seria muito abrupto, mas migrar para 11 depois 12 e por fim para 13 via replication você teria mais chances de sucesso. Na documentação na sessão 19.6.3 fala sobre o assunto, segue o link: www.postgresql.org/docs/14/upgrading.html Por fim, boa sorte e sucesso.
@badwolfrfl
@badwolfrfl Год назад
@@patrickmuniz7878 muito obrigado pela atenção. PostgreSQL, tem estado em alta e, estou certo que seu conhecimento ajudará demais, aos que como eu, estão iniciando com essa engine. Fica a dica, faz um curso na Udemy de administração, com replicação entre versões, pq não tem isso não viu
@jeanpierremonteiroqueiroz6310
Boa noite Rafael,tudo bom ? A resposta correta é não,no video ele usa replicação fisica e para esse recurso é comendado que você utilize a mesma versão majoritária do postgresql ,mesmo S.O e o mesmo FS ( Replicação Fisíca é feita bloco a bloco,por isso precisa ter o mesmo ambiente).Replicação entre versões diferentes funciona apenas na replicação logica e este recurso esta disponivel a partir da versão 10 do postgres.
@antonioalexandre9563
@antonioalexandre9563 9 месяцев назад
Muito boa suas aulas mas eu gostaria de saber se tem com fazer uma replicação em ambiente Windows com PotgresSQL para backup
@patrickmuniz7878
@patrickmuniz7878 8 месяцев назад
Em teoria sim, creio que as configurações do postgres são iguais para qualquer plataforma
@leandrocapraracosta2520
@leandrocapraracosta2520 7 месяцев назад
Fala, Patrick. Beleza? Tenho uma big dúvida. Montei o arquivo docker-compose igual o seu mas os arquivos do postgresql não são copiados para a pasta master. O que eu posso estar fazendo de errado?
@jeanvictor7798
@jeanvictor7798 6 месяцев назад
também estou com o mesmo problema
@leandrocapraracosta2520
@leandrocapraracosta2520 6 месяцев назад
@@jeanvictor7798 Na real, os arquivos são copiados para a pasta mas as permissões para essa pasta mudam quando executamos o comando do docker-compose. Com ele rodando, rode um chmod nessa pasta em específico. Você verá os arquivos lá. O chato é que eu tive que rodar o chmod toda vez que executava o docker-compose. Tenta e me avisa.
@hugomesquita6131
@hugomesquita6131 8 месяцев назад
Quando vou inserir, atualizar ou até deletar alguma informação no banco replication, dar erro de inserção Erro SQL [25006]: ERROR: cannot execute INSERT in a read-only transaction ERROR: cannot execute INSERT in a read-only transaction ERROR: cannot execute INSERT in a read-only transaction parece que a replica tá apenas como leitura. Como deixar a replica de leitura com permissão de inserir, deletar e atualizar ?
@patrickmuniz7878
@patrickmuniz7878 8 месяцев назад
Hugo, instancia de replicação funciona apenas como leitura, não é permitido fazer escrita. Você só consegue fazer operações nele a partir do momento de deixa de ser replica para virar um banco master. Se você precisa de uma arquitetura que seja necessário ter 2 ou mais bancos com possibilidade de escrita então você precisa procurar por banco "multi master", que não é o caso desse video, espero ter esclarecido.
@FelipeLyp
@FelipeLyp Год назад
Se o servidor primário cair, outros iram assumir?
@patrickmuniz7878
@patrickmuniz7878 Год назад
não, para ter esse recurso você precisa adicionar uma camada de "Proxy", como a ferramenta pgpool-II.
@KuroManX
@KuroManX 10 месяцев назад
sua didática é boa, vc deveria fazer mais vídeos, porém sei que na área de TI ter tempo livre é difícil
@rcerqueiraleite
@rcerqueiraleite 9 месяцев назад
Existe a possibilidade de fazer a replicação de duas vias, ou seja, um espelhando o outro. Digo isso para caso uma instância caia a outra assuma e depois faça a sincronia com o outro
@patrickmuniz7878
@patrickmuniz7878 8 месяцев назад
opa, o que você precisa é de uma arquitetura que tenha um "proxy" entre os bancos e sua aplicação, fazendo esse fail over em caso de falha. O software que pode te auxiliar é o pgpool-II.
@joaopauloperrotte
@joaopauloperrotte Год назад
O mais importante não foi feito nem falado, no titulo do video diz redundancia, ta e cadÊ ? se o banco principal cair, o outro assume automaticamente, do jeito q vc fez..nao, e se assumir, quando o master voltar ao ar..vai voltar como slave ? duvido muito , oq vc fez eh muito basico, tem imagens no dockerhub que ja sao pre configuradas pra subir como master e outra slave, a grande questao é fazer o failover..um cair e outra assumir a frente. perdi meu tempo com seu video
@patrickmuniz7878
@patrickmuniz7878 Год назад
Grato pelo feedback. Apenas complemento que redundância não se limita ao formato que você esperava, se o master cair no sentido de perder tudo msm, uma replica pode te salvar como um backup, mas de fato não falei de ferramentas como pg-pool que faz esse switch em caso de queda do principal.
@joaopauloperrotte
@joaopauloperrotte Год назад
@@patrickmuniz7878 isso que é o que mais falta no youtube sobre esse assunto, alta disponibilidade de banco de dados. tem muita coisa gringa mas nada muito claro, se souber seria bom fazer um video sobre.
@Vinaum8
@Vinaum8 11 месяцев назад
@@patrickmuniz7878 Patrick, seu vídeo ficou ótimo, vou dar uma estudada no PG Pool e colocar ele no meu lab para ter o fail over. Thanks!!!
Далее
PostgreSQL Indexing : How, why, and when.
31:21
Просмотров 75 тыс.
Crazy Girl destroy RC CARS 👩🤪🚘🚨
00:20
Просмотров 5 млн
Я нашел кто меня пранкует!
00:51
EDB Postgres Distributed Explained - with LIVE DEMO
36:32
Solving one of PostgreSQL's biggest weaknesses.
17:12
Просмотров 176 тыс.
Postgres e PGAdmin diretamente pelo Docker
17:59
Просмотров 10 тыс.
Patroni PostgreSQL - Cluster Setup
17:24
Просмотров 10 тыс.
PostgreSQL High Availability Options
16:34
Просмотров 4,9 тыс.
The Truth about Rust/WebAssembly Performance
29:47
Просмотров 173 тыс.