AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / dba / Perguntas / 298643
Accepted
r0tt
r0tt
Asked: 2021-08-27 23:54:50 +0800 CST2021-08-27 23:54:50 +0800 CST 2021-08-27 23:54:50 +0800 CST

Monitorando um banco de dados específico com pg_isready

  • 772

Como faço para monitorar um banco de dados específico com pg_isready?

Instância: DSPPG10T1 Versão: 10.14 Porta: 6241

postgres@postgres # SELECT datname FROM pg_database;
  datname
-----------
 postgres
 template1
 template0
 dbspg10t1

[postgres@HOSTNAME ~]$ if pg_isready -d postgres://localhost:6241/dbspg10t1; then echo "200 OK"; else echo "500 NOT OK"; fi
localhost:6241 - accepting connections
200 OK

O teste de banco de dados não existe, mas pg_isready ainda retorna ok.

[postgres@HOSTNAME ~]$ if pg_isready -d postgres://localhost:6241/test; then echo "200 OK"; else echo "500 NOT OK"; fi
localhost:6241 - accepting connections
200 OK

Isso é um problema de sintaxe?

postgresql monitoring
  • 1 1 respostas
  • 817 Views

1 respostas

  • Voted
  1. Best Answer
    Peter Vandivier
    2021-08-28T00:33:55+08:002021-08-28T00:33:55+08:00

    Parece que isso pode ser um bug conhecido. pg_isreadynão usa código comum para o psqlutilitário. Veja este tópico pgsql-hackers no tópico de 2013: Re: -d opção para pg_isready está quebrada .

    Sem mergulhar muito nisso, as citações relevantes parecem ser ...

    Por que não estamos usando exatamente o mesmo código do psql? Por que o pg_isready tem seu próprio código para isso?

    Porque o pg_isready quer imprimir o host e a porta que tentamos conectar, o que nenhum outro utilitário faz. Acontece que não há API limpa para isso. Tentamos inventar algo, mas as evidências parecem indicar que o que inventamos morde.

    Mas por que não mudou?

    ...o objetivo de ter tanto host quanto hostaddr parece ser que você pode mentir sobre onde está se conectando. Se você definir host=some.pretty.domain.name hostaddr=1.2.3.4, o ponto é dizer que você está se conectando ao primeiro enquanto, nos bastidores, está realmente se conectando ao segundo. Agora, não estou claro qual o valor disso, mas alguém em algum momento evidentemente achou que era uma boa ideia, então precisamos ter cuidado ao mudá-lo.

    Para ser justo, isso é baseado em uma leitura muito superficial desse tópico, mas para seus propósitos, acho que é seguro tratar isso como um bug conhecido

    bash-4.4$ pg_isready
    /tmp:5432 - accepting connections
    
    bash-4.4$ pg_isready -d postgres://127.0.0.1
    127.0.0.1:5432 - accepting connections
    
    bash-4.4$ pg_isready -d postgres://127.0.0.1/foo
    127.0.0.1:5432 - accepting connections
    
    bash-4.4$ psql postgres://127.0.0.1/foo
    psql: error: FATAL:  database "foo" does not exist
    
    bash-4.4$
    
    • 3

relate perguntas

  • Práticas recomendadas para executar a replicação atrasada do deslocamento de tempo

  • Os procedimentos armazenados impedem a injeção de SQL?

  • Como encontrar as instruções SQL mais recentes no banco de dados?

  • Sequências Biológicas do UniProt no PostgreSQL

  • Qual é a diferença entre a replicação do PostgreSQL 9.0 e o Slony-I?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host

    • 12 respostas
  • Marko Smith

    Como fazer a saída do sqlplus aparecer em uma linha?

    • 3 respostas
  • Marko Smith

    Selecione qual tem data máxima ou data mais recente

    • 3 respostas
  • Marko Smith

    Como faço para listar todos os esquemas no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Listar todas as colunas de uma tabela especificada

    • 5 respostas
  • Marko Smith

    Como usar o sqlplus para se conectar a um banco de dados Oracle localizado em outro host sem modificar meu próprio tnsnames.ora

    • 4 respostas
  • Marko Smith

    Como você mysqldump tabela (s) específica (s)?

    • 4 respostas
  • Marko Smith

    Listar os privilégios do banco de dados usando o psql

    • 10 respostas
  • Marko Smith

    Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Como faço para listar todos os bancos de dados e tabelas usando o psql?

    • 7 respostas
  • Martin Hope
    Jin conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane Como faço para listar todos os esquemas no PostgreSQL? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh Por que o log de transações continua crescendo ou fica sem espaço? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland Listar todas as colunas de uma tabela especificada 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney O MySQL pode realizar consultas razoavelmente em bilhões de linhas? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx Como posso monitorar o andamento de uma importação de um arquivo .sql grande? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison Como você mysqldump tabela (s) específica (s)? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas Como posso cronometrar consultas SQL usando psql? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas Como faço para listar todos os bancos de dados e tabelas usando o psql? 2011-02-18 00:45:49 +0800 CST

Hot tag

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve