Pular para o conteúdo principal

Solução de Problemas do PostgreSQL

Como Fazer no PostgreSQL...

Tarefas comuns do PostgreSQL e onde encontrar as instruções completas.

Tornar o PostgreSQL Mais Rápido

O desempenho do PostgreSQL é determinado principalmente pela velocidade do disco e pela RAM disponível. A melhoria isolada mais importante é um Solid State Drive (SSD); um disco de 7200 RPM é aceitável, mas discos de 5400 RPM não são recomendados.

Atualizar o PostgreSQL

O PokerTracker 4 é compatível com PostgreSQL 9.6 ou superior (recomendamos PostgreSQL 16). Para migrar para uma versão mais nova, siga os guias dedicados:

Sempre faça backup dos seus bancos de dados antes de atualizar.

Backup e Restauração no pgAdmin 4

O PokerTracker 4 já tem backup e restauração integrados — use-os sempre que possível. O método externo abaixo com o pgAdmin 4 só é indicado para casos raros em que as ferramentas integradas não conseguem acessar seu banco de dados, como quando o PokerTracker 4 é executado em uma máquina virtual, mas o PostgreSQL está instalado no sistema operacional host. (Veja o guia de rede para esse cenário.)

observação

As capturas de tela abaixo mostram uma versão mais antiga do pgAdmin. Os passos são equivalentes no pgAdmin 4.

Usando o pgAdmin 4 para Fazer Backup de um Banco de Dados

  1. Abra o pgAdmin 4.

    Windows: Start > PostgreSQL > pgAdmin 4. macOS: /Applications/pgAdmin 4.

  2. Conecte-se ao servidor.

    Na árvore Browser, expanda Servers > PostgreSQL e conecte-se. Se for solicitada uma senha, o padrão é dbpass; outra senha comumente usada é postgrespass.

  3. Expanda Databases e selecione seu banco de dados.

    Clique com o botão direito no banco de dados que deseja fazer backup e escolha Backup....

    pgAdmin 4 database backup
  4. Escolha o nome e o local do arquivo de backup.

    Digite o caminho e o nome do arquivo, ou clique no botão de navegação ( "..." ) à direita para selecionar o local e o nome do arquivo de backup.

    Deixe todos os outros campos com os valores padrão.

    Backing up a PT4 Database in pgAdmin 4
  5. Clique no botão Backup para iniciar.

    Você verá uma mensagem pop-up no canto inferior direito do pgAdmin quando o processo de backup tiver iniciado e quando ele tiver sido concluído.

    pgAdmin 4 database backup started and completed

Usando o pgAdmin 4 para Restaurar um Banco de Dados

  1. Crie um novo banco de dados.

    Na árvore Browser, clique com o botão direito em Databases e escolha Create > Database....

    pgAdmin 4 create database
  2. Digite o nome do banco de dados e clique em Save.

    pgAdmin 4 create database name
  3. Restaure o backup no novo banco de dados.

    Clique com o botão direito no novo banco de dados e escolha Restore....

    pgAdmin 4 restore database
  4. Selecione o arquivo de backup criado anteriormente.

    pgAdmin 4 restore - select backup file
  5. Clique em Restore.

    Não são necessárias outras alterações. O pgAdmin exibirá uma mensagem pop-up no canto inferior direito da tela quando o processo de restauração começar e quando ele terminar.

    pgAdmin 4 restore started & completed

Adicionar um Banco de Dados Restaurado Manualmente

  1. Abra a janela de Gerenciamento do Banco de Dados (Database > Database Management) e clique em New.

  2. Ative This database already exists, clique em Browse Databases e selecione o banco de dados que você acabou de restaurar.

    Configure a restored PT4 database

Problemas

Soluções para os erros mais comuns do PostgreSQL.

Não foi possível fazer login no banco de dados

Error: could not connect to server / connection refused

unable to login to database (PT4_xxxx_xx_xx_xxxxxx) - reason: could not connect to server: connection refused (0x0000274D/10061) Is the server running on host "localhost" and accepting TCP/IP connections on port 5432?

Isso geralmente significa que o serviço do PostgreSQL não está em execução. Reinicie-o — veja Restart the PostgreSQL Server.

Se reiniciar não ajudar, um arquivo postmaster.pid antigo pode estar impedindo a inicialização. Com o serviço do PostgreSQL parado, procure postmaster.pid na pasta de dados (Windows: C:\Program Files\PostgreSQL\16\data; macOS: /Library/PostgreSQL/16/data) e exclua-o; depois reinicie o computador. Substitua 16 pela versão instalada. Não exclua postmaster.pid a menos que o serviço do PostgreSQL esteja parado.

Error: no pg_hba.conf entry

unable to login to database (PT4 DB). Reason: FATAL: no pg_hba.conf entry for host "::1", user "postgres", database "PT4 DB", SSL off

Edite o arquivo pg_hba.conf.

Você deve editar o arquivo pg_hba.conf como administrador. Execute o Bloco de Notas clicando com o botão direito no ícone dele e selecionando Executar como administrador. Clique em Arquivo > Abrir e selecione o arquivo pg_hba.conf, normalmente encontrado em C:\Program Files\PostgreSQL\16\data\pg_hba.conf.

Role até o final e adicione esta linha exatamente como aparece aqui:

host all all ::1/128 md5

Salve o arquivo e feche o Bloco de Notas. Para habilitar as alterações, reinicie o computador ou clique em Iniciar > Programas > PostgreSQL > Recarregar configuração.

Problemas ao instalar ou executar o PostgreSQL

Problemas ao instalar, executar ou conectar o PostgreSQL geralmente são causados por software de segurança bloqueando o acesso. Consulte o Firewall Troubleshooting Guide para confirmar que o PokerTracker 4 e o PostgreSQL têm acesso total.

Não conecta - usuário ou senha incorretos

Se o PostgreSQL foi instalado no seu computador antes do PokerTracker 4, use a senha definida na instalação. Se você já tentou outro tracker anteriormente, tente postgrespass; se você já teve uma versão diferente do PokerTracker, o padrão pode ser dbpass.

Se você não se lembra da senha e as opções padrão não funcionam, é possível configurar o PostgreSQL para não exigir senha nas conexões feitas a partir do seu computador local:

Senhas ainda serão exigidas para acesso ao servidor de qualquer outro local que não seja o seu computador local.

Você deve editar o arquivo pg_hba.conf como administrador. Execute o Bloco de Notas clicando com o botão direito no ícone dele e selecionando Executar como administrador. Clique em Arquivo > Abrir e selecione o arquivo pg_hba.conf, normalmente encontrado em C:\Program Files\PostgreSQL\16\data\pg_hba.conf.

Role até o final e substitua todas as ocorrências de md5 ou scram-sha-256 pela palavra trust.

Salve o arquivo e feche o Bloco de Notas. Para habilitar as alterações, reinicie o computador ou clique em Iniciar > Programas > PostgreSQL > Recarregar configuração.

Não foi possível importar a mão

Se você vir um erro como este:

Unable to import hand (#18202934050). Reason: Unable to execute query: COPY tourney_holdem_hand_summary FROM STDIN;; Reason: Fatal Error (ERROR: could not read block 0 of relation 1663/16438/16742: Invalid argument CONTEXT: COPY tourney_holdem_hand_summary, line 1: "54551 100 736 3 971 18202934050 2008/06/17 20:55:42 2008/06/17 17:22:44 9 2 2 2 1500.00 1500.00 1500..." )

...ou este:

Unable to import hand (#7651813545). Reason: Unable to execute query: COPY holdem_hand_player_statistics FROM STDIN;; Reason: Fatal Error (ERROR: index "hhps:idx5-id_session" contains unexpected zero page at block 0 HINT: Please REINDEX it. CONTEXT: COPY holdem_hand_player_statistics, line 1: "70112 696 696 0 2 8819 2008/08/15 04:05:59 8 f f 0 f 0 f f f f f 0 f 0 t f f t f 0 f 0 t f t t f 0 f..." )

Há duas causas comuns.

A primeira é corrupção de dados causada por uma queda do computador, o que exige reindexar o banco de dados. Reindexe na janela Database > Database Management (Housekeeping > Reindex) — consulte Database Housekeeping para o procedimento completo. Após a manutenção, recrie o cache para que o banco de dados funcione como esperado.

Reindex PT4 database

A segunda causa é hardware defeituoso. Embora não recomendemos, você pode configurar o PostgreSQL para ignorar esses erros editando o arquivo postgresql.conf.

Você deve editar o arquivo postgresql.conf como administrador. Abra o Notepad clicando com o botão direito no ícone dele e selecionando Executar como Administrador. Clique em File > Open e selecione o arquivo postgresql.conf, normalmente encontrado em C:\Program Files\PostgreSQL\16\data\postgresql.conf.

Role até o final, crie uma nova linha e adicione o texto zero_damaged_pages = on.

Salve o arquivo e feche o Notepad. Para ativar as alterações, reinicie o computador ou clique em Start > Programs > PostgreSQL > Reload Configuration.

aviso

Se continuar tendo problemas com o disco rígido, considere substituí-lo por um disco de 7200 RPM (ou mais rápido) ou por um SSD.

PostgreSQL em um computador na rede

Você pode hospedar o PostgreSQL em outro computador da sua rede local. Consulte PostgreSQL Server Hosted on a Local Network para instruções de configuração.

Este método não tem suporte oficial. Como o PokerTracker 4 não foi projetado para acesso remoto ao banco de dados, alguns recursos — Backup, Restore, ajuste do banco de dados e manutenção do banco de dados — funcionam somente quando o banco de dados está no mesmo computador que o PokerTracker 4.

PostgreSQL em uma unidade separada

Para executar seu banco de dados em uma unidade diferente, remova completamente o PostgreSQL do seu computador (veja abaixo) e depois reinstale-o na unidade escolhida. Para mais detalhes, consulte a postagem do fórum sobre creating a database on a separate drive.

PostgreSQL em uma unidade hot swap

Este guia configura seu banco de dados em um disco rígido hot-swappable para que você possa movê-lo entre computadores e usar o mesmo banco de dados. Isso evita as limitações de rede do PostgreSQL e permite usar seu banco de dados fora da sua rede local.

Ele pressupõe que o PokerTracker 4 esteja instalado em dois computadores Windows com bancos de dados separados. No momento, não recomendamos essa opção para usuários de macOS.

Antes de começar, faça backup dos seus bancos de dados e guarde a cópia em um local seguro.

Preparar a unidade hot swap

  1. Abra Start > Computer (a janela "My Computer" — você voltará aqui com frequência).
  2. Clique com o botão direito na sua unidade hot swap, escolha Rename e dê a ela o nome do seu banco de dados (por exemplo, pg_16).
  3. Clique com o botão direito na unidade novamente e escolha Format. Defina o sistema de arquivos como NTFS com tamanho de unidade de alocação de 4096, escolha Quick Format e clique em Start.
  4. Atribua uma letra de unidade que esteja disponível em ambos os computadores. Abra Start > clique com o botão direito em Computer > Manage > Disk Management. Clique com o botão direito na sua unidade hot swap, escolha Change Drive Letter and Paths > Change..., selecione Assign the following drive letter e escolha P (de PostgreSQL). Aceite o aviso para continuar.

Desinstalar o PostgreSQL

  1. Abra Start > Control Panel > Programs and Features. Aguarde a lista carregar, clique com o botão direito em PostgreSQL e escolha Uninstall. Anote o número da versão.
  2. Abra um Prompt de Comando com privilégios elevados (clique com o botão direito em Command Prompt > Run as Administrator) e execute net user /delete postgres. Você deve ver "The command completed successfully." Se aparecer "access denied", você não está executando como administrador. Digite exit ao terminar.
  3. Exclua a pasta restante em C:\Program Files\PostgreSQL. Certifique-se de que seus dados estejam primeiro salvos em backup e protegidos.

Baixar e instalar o PostgreSQL

Baixe a versão Enterprise DB do PostgreSQL que você deseja instalar — geralmente a versão mais recente dentro da mesma versão principal que você já estava usando.

Execute o instalador e, quando for solicitada a localização da instalação, navegue até a unidade P: em P:\PostgreSQL\16 (substitua 16 pela sua versão; clique no ícone de nova pasta para criar a pasta).

Continue pelo instalador. Na tela de senha, digite dbpass em ორივas as caixas. Clique em Next até a instalação ser concluída.

`dbpass` password for PokerTracker 4

Restaurar bancos de dados

Restaure seus bancos de dados com backup usando o mesmo método que você usou para fazer o backup.

Desligamento e inicialização do PostgreSQL

Agora vá para o outro computador e sincronize-o com a unidade hot swap.

aviso

Você DEVE parar o serviço do PostgreSQL toda vez que mover a unidade entre computadores, ou corre o risco de perder o servidor de banco de dados.

No seu computador principal:

  1. Feche o PokerTracker 4.
  2. Abra Start > clique com o botão direito em Computer > Manage > Services.
  3. Encontre PostgreSQL na lista, clique com o botão direito e escolha Stop. Agora você pode remover a unidade com segurança.

Antes de conectar a unidade ao outro computador, certifique-se de que o serviço do PostgreSQL NÃO esteja em execução lá. Assim que a unidade estiver conectada, inicie o serviço: clique com o botão direito em PostgreSQL > Start.

Segundo computador

Se o PostgreSQL estiver instalado neste computador, desinstale-o primeiro.

  1. Conecte a unidade e atribua a ela a letra P: como fez no primeiro computador (veja Prepare the Hotswap Drive).
  2. Baixe a mesma versão do PostgreSQL que você usou antes e execute o instalador, novamente definindo o local como P:\PostgreSQL\16.
  3. Deixe o instalador criar a senha do serviço, mas na tela de senha desmarque Initialize Database. Conclua a instalação.
  4. Edite C:\Program Files\PokerTracker 4\Data\Config\PokerTracker.cfg, remova todas as informações do banco de dados e salve.
  5. Execute o PokerTracker 4. Na tela de configuração do PostgreSQL, digite a senha dbpass e clique em Connect.
  6. Quando for solicitada a criação de um banco de dados, marque This Database Already Exists, clique em Browse, selecione seu banco de dados e clique em Connect.

Agora você tem o mesmo banco de dados disponível em ambos os computadores.

observação

Lembre-se de parar o serviço do PostgreSQL antes de mover a unidade e iniciá-lo novamente após conectá-la ao outro computador (Start > Programs > PostgreSQL > Start Service).