{"id":34985,"date":"2024-05-02T12:17:14","date_gmt":"2024-05-02T15:17:14","guid":{"rendered":"https:\/\/www.locaweb.com.br\/ajuda\/?post_type=ht_kb&#038;p=34985"},"modified":"2024-05-17T12:13:54","modified_gmt":"2024-05-17T15:13:54","slug":"atualizacao-do-banco-de-dados-postgresql","status":"publish","type":"ht_kb","link":"https:\/\/www.locaweb.com.br\/ajuda\/wiki\/atualizacao-do-banco-de-dados-postgresql\/","title":{"rendered":"Atualiza\u00e7\u00e3o do Banco de Dados PostgreSQL"},"content":{"rendered":"    \t\t<div class=\"hts-messages hts-messages--info   hts-messages--withicon \"   >\r\n    \t\t\t    \t\t\t    \t\t\t\t<p>\r\n    \t\t\t\t\tNeste artigo veremos como atualizar\u00a0 bases com obsolesc\u00eancia do banco de dados PostgreSQL.    \t\t\t\t<\/p>\r\n    \t\t\t    \t\t\t\r\n    \t\t<\/div><!-- \/.ht-shortcodes-messages -->\r\n    \t\t\n<p>Recentemente realizamos no servidor de banco, a atualiza\u00e7\u00e3o para a vers\u00e3o 15.6 do PostgreSQL.<\/p>\n<p>Essa vers\u00e3o traz mais estabilidade, melhorias no processamento de consultas e novos recursos para gerenciar o modelo de dados do seu banco.<\/p>\n<p>Saiba mais sobre a vers\u00e3o 15.6 em <a href=\"https:\/\/www.postgresql.org\/docs\/release\/15.6\/\" target=\"_blank\" rel=\"noopener\">https:\/\/www.postgresql.org\/docs\/release\/15.6\/<\/a><\/p>\n<h6>Pontos de aten\u00e7\u00e3o em sua base de dados<\/h6>\n<p>Nesta migra\u00e7\u00e3o manteremos a configura\u00e7\u00e3o atual do Encondig e Collate do(s) Banco de Dados. Por\u00e9m, \u00e9 recomendado fazer a atualiza\u00e7\u00e3o desta configura\u00e7\u00e3o de linguagem para esta vers\u00e3o do PostgreSQL.<br \/>\nOutro ponto. Caso utilize o oid como chave PK em sua(s) tabela(s) \u00e9 altamente recomendado que fa\u00e7a a atualiza\u00e7\u00e3o para remov\u00ea-lo. Desde a vers\u00e3o 12 do PostgreSQL este objeto n\u00e3o est\u00e1 mais acess\u00edvel e as novas vers\u00f5es n\u00e3o o aceitam como constrain de chave prim\u00e1ria.<br \/>\nSegue abaixo um pequeno resumo sobre o assunto:<\/p>\n<h6>Removendo colunas com OIDS no POSTGRESQL<\/h6>\n<p>A partir da vers\u00e3o 12, o PostgreSQL deixa de suportar o uso da coluna oculta \u201cOID\u201d ou \u201cObject Identifier\u201d, que at\u00e9 ent\u00e3o era opcional em tabelas normais, e torna-se uma coluna expl\u00edcita nas tabelas do cat\u00e1logo do sistema.<br \/>\nSe voc\u00ea nem sabe que a coluna est\u00e1, ou n\u00e3o o utiliza e j\u00e1 tem sua pr\u00f3pria chave prim\u00e1ria (PK), ent\u00e3o voc\u00ea s\u00f3 precisa remover a coluna OID com um simples comando como:<br \/>\nALTER TABLE minha_tabela SET WITHOUT OIDS;<\/p>\n<p>Agora, se utiliza esta coluna em sua(s) tabela(s) como uma chave artificial \u00e9 recomendado criar uma nova coluna com nome de sua prefer\u00eancia.<br \/>\nNeste caso \u00e9 necess\u00e1rio seguir o passo-a-passo abaixo. Voc\u00ea pode utilizar estes comandos, ou buscar outra maneira para esta atualiza\u00e7\u00e3o:<\/p>\n<ul>\n<li>Criar a coluna ID;<\/li>\n<li>Ajustar a coluna para que novas linhas recebam um novo n\u00famero automaticamente a partir do \u00faltimo n\u00famero da coluna OID;<\/li>\n<li>Popular a coluna ID com os valores da coluna OID;<\/li>\n<\/ul>\n<pre>SELECT coalesce(max(oid)::integer,0) + 1 FROM minha_tabela;\r\n\r\nALTER TABLE minha_tabela ADD COLUMN id integer GENERATED BY DEFAULT AS IDENTITY (START WITH 12345);<\/pre>\n<ul>\n<li>Alterar a tabela para que a coluna ID se torne uma chave prim\u00e1ria (PK);<\/li>\n<\/ul>\n<pre>UPDATE minha_tabela SET id = OID;\r\n\r\nALTER TABLE minha_tabela ADD PRIMARY KEY (id);<\/pre>\n<ul>\n<li>Por fim remover a coluna OID.<\/li>\n<\/ul>\n<pre>ALTER TABLE minha_tabela SET WITHOUT OIDS;<\/pre>\n    \t\t<div class=\"hts-messages hts-messages--danger  hts-messages--withtitle  \"   >\r\n    \t\t\t<span class=\"hts-messages__title\">Importante!<\/span>    \t\t\t    \t\t\t\t<p>\r\n    \t\t\t\t\tO SQL_ASCII n\u00e3o exige que os dados armazenados no banco de dados tenham qualquer codifica\u00e7\u00e3o espec\u00edfica e, portanto, essa escolha apresenta riscos de mau comportamento dependente da localidade. O uso desta combina\u00e7\u00e3o de configura\u00e7\u00f5es est\u00e1 obsoleto e pode algum dia ser totalmente proibido.<br \/>\nFonte: <a href=\"https:\/\/www.postgresql.org\/docs\/15\/multibyte.html\" target=\"_blank\" rel=\"noopener\">https:\/\/www.postgresql.org\/docs\/15\/multibyte.html<\/a>     \t\t\t\t<\/p>\r\n    \t\t\t    \t\t\t\r\n    \t\t<\/div><!-- \/.ht-shortcodes-messages -->\r\n    \t\t\n    \t\t<div class=\"hts-messages hts-messages--info  hts-messages--withtitle hts-messages--withicon \"   >\r\n    \t\t\t<span class=\"hts-messages__title\">Aproveite!<\/span>    \t\t\t    \t\t\t\t<p>\r\n    \t\t\t\t\tQue tal conhecer nosso servidor VPS Locaweb. <a href=\"https:\/\/www.locaweb.com.br\/cloud\/vps-locaweb\/\" target=\"_blank\" rel=\"noopener noreferrer\">Clique aqui<\/a>\u00a0e saiba mais.    \t\t\t\t<\/p>\r\n    \t\t\t    \t\t\t\r\n    \t\t<\/div><!-- \/.ht-shortcodes-messages -->\r\n    \t\t\n","protected":false},"excerpt":{"rendered":"<p>Recentemente realizamos no servidor de banco, a atualiza\u00e7\u00e3o para a vers\u00e3o 15.6 do PostgreSQL. Essa vers\u00e3o traz mais estabilidade, melhorias no processamento de consultas e novos recursos para gerenciar o modelo de dados do seu banco. Saiba mais sobre a vers\u00e3o 15.6 em https:\/\/www.postgresql.org\/docs\/release\/15.6\/ Pontos de aten\u00e7\u00e3o em sua base&#8230;<\/p>\n","protected":false},"author":30,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"footnotes":""},"ht-kb-category":[119],"ht-kb-tag":[],"class_list":["post-34985","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-hospedagem-de-sites"],"_links":{"self":[{"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb\/34985","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb"}],"about":[{"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/users\/30"}],"replies":[{"embeddable":true,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/comments?post=34985"}],"version-history":[{"count":7,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb\/34985\/revisions"}],"predecessor-version":[{"id":35081,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb\/34985\/revisions\/35081"}],"wp:attachment":[{"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/media?parent=34985"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb-category?post=34985"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/www.locaweb.com.br\/ajuda\/wp-json\/wp\/v2\/ht-kb-tag?post=34985"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}