SHOW POSTGRES INSTANCES

Lista as :doc:` instâncias do Snowflake Postgres </user-guide/snowflake-postgres/about>` para as quais você tem privilégios de acesso.

Consulte também:

CREATE POSTGRES INSTANCE, ALTER POSTGRES INSTANCE, DESCRIBE POSTGRES INSTANCE, DROP POSTGRES INSTANCE

Sintaxe

SHOW POSTGRES INSTANCES [ LIKE '<pattern>' ]
                        [ STARTS WITH '<name_string>' ]
                        [ LIMIT <rows> [ FROM '<name_string>' ] ]
Copy

Parâmetros

LIKE 'pattern'

Opcionalmente, filtra a saída do comando pelo nome do objeto. O filtro utiliza correspondência de padrão que não diferencia maiúsculas e minúsculas, com suporte para caracteres curinga SQL (% e _).

Por exemplo, os seguintes padrões retornam os mesmos resultados:

... LIKE '%testing%' ...
... LIKE '%TESTING%' ...

. padrão: sem valor (nenhuma filtragem é aplicada à saída).

STARTS WITH 'name_string'

Opcionalmente, filtra a saída do comando com base nos caracteres que aparecem no início do nome do objeto. A cadeia de caracteres deve ser colocada entre aspas simples e faz distinção entre letras maiúsculas e minúsculas.

Por exemplo, as seguintes cadeias de caracteres retornam resultados diferentes:

... STARTS WITH 'B' ...
... STARTS WITH 'b' ...

. Padrão: sem valor (nenhuma filtragem é aplicada à saída)

LIMIT rows [ FROM 'name_string' ]

Opcionalmente, limita o número máximo de linhas retornadas, ao mesmo tempo em que permite a «paginação» dos resultados. O número real de linhas retornadas pode ser menor que o limite especificado. Por exemplo, o número de objetos existentes é menor que o limite especificado.

A subcláusula opcional FROM 'name_string' serve efetivamente como um “cursor” para os resultados. Isso permite obter o número especificado de linhas seguindo a primeira linha cujo nome do objeto corresponde à cadeia de caracteres especificada:

  • A cadeia de caracteres deve ser colocada entre aspas simples e faz distinção entre letras maiúsculas e minúsculas.

  • A cadeia de caracteres não precisa incluir o nome completo do objeto; também é permitido usar nomes parciais.

Padrão: nenhum valor (nenhum limite é aplicado à saída)

Nota

Para comandos SHOW que oferecem suporte às cláusulas FROM 'name_string' e STARTS WITH 'name_string', você pode combinar ambas as cláusulas na mesma instrução. No entanto, ambas as condições devem ser cumpridas ou elas se cancelam mutuamente e nenhum resultado é retornado.

Além disso, os objetos são devolvidos em ordem lexicográfica por nome, portanto FROM 'name_string' só retorna linhas com um valor lexicográfico maior que as linhas retornadas por STARTS WITH 'name_string'.

Por exemplo:

  • ... STARTS WITH 'A' LIMIT ... FROM 'B' não retornaria nenhum resultado.

  • ... STARTS WITH 'B' LIMIT ... FROM 'A' não retornaria nenhum resultado.

  • ... STARTS WITH 'A' LIMIT ... FROM 'AB' retornariam resultados (se alguma linha corresponder às cadeias de caracteres de entrada).

Saída

A saída do comando inclui as seguintes colunas, que descrevem as propriedades e metadados do objeto:

Coluna

Descrição

name

Nome da instância do Postgres.

owner

Função proprietária da instância do Postgres.

owner_role_type

Tipo da função de proprietário (por exemplo, ROLE ou DATABASE_ROLE).

created_on

Data e hora de criação da instância do Postgres.

updated_on

Data e hora da última atualização da instância do Postgres.

type

Tipo da instância do Postgres.

origin

Origem da instância do Postgres (por exemplo, se foi derivada de outra instância).

host

Nome do host utilizado para se conectar à instância do Postgres.

privatelink_service_identifier

Identificador do serviço Private Link, se o Private Link estiver configurado para a instância.

compute_family

Família de computação (tamanho da instância) da instância do Postgres.

authentication_authority

Método de autenticação utilizado para a instância (atualmente POSTGRES).

storage_size

Tamanho de armazenamento alocado para a instância do Postgres, em GB.

postgres_version

Versão principal do Postgres em execução na instância.

postgres_settings

Configurações do servidor Postgres personalizadas configuradas para a instância.

is_ha

Indica se a alta disponibilidade está habilitada para a instância.

retention_time

Tempo de retenção de dados para a instância.

state

Estado atual da instância. Valores possíveis: CREATING, RESTORING, STARTING, REPLAYING, FINALIZING, READY, RESTARTING, RESUMING, SUSPENDING, SUSPENDED.

comment

Comentário para a instância do Postgres.

Requisitos de controle de acesso

A função usada para executar essa operação deve ter, no mínimo, os seguintes privilégios:

Privilégio

Objeto

Notas

OPERATE ou OWNERSHIP

Instância do Postgres

Somente as instâncias para as quais você tem um desses privilégios aparecem na saída.

Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.

Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.

Notas de uso

  • O comando não precisa de um warehouse em funcionamento para ser executado.

  • O comando retorna apenas objetos para os quais a função atual do usuário atual recebeu pelo menos um privilégio de acesso.

  • O privilégio de acesso MANAGE GRANTS permite implicitamente que seu titular consulte todos os objetos da conta. Por padrão, somente o administrador de conta (usuários com a função ACCOUNTADMIN) e o administrador de segurança (usuários com a função SECURITYADMIN) têm o privilégio MANAGE GRANTS.

  • Para pós-processar a saída deste comando, você pode usar o operador de canal (->>) ou a função RESULT_SCAN. Ambos os constructos tratam a saída como um conjunto de resultados que você pode consultar.

    Por exemplo, é possível usar o operador de canal ou a função RESULT_SCAN para selecionar colunas específicas da saída do comando SHOW ou filtrar as linhas.

    Quando você fizer referência a colunas de saída, use identificadores entre aspas duplas para os nomes das colunas. Por exemplo, para selecionar a coluna de saída type, especifique SELECT "type".

    Você deve usar identificadores entre aspas duplas porque os nomes das colunas de saída para os comandos SHOW estão em minúsculas. As aspas duplas garantem que os nomes das colunas na lista SELECT ou na cláusula WHERE correspondam aos nomes das colunas na saída do comando SHOW que foi verificada.

  • O comando retorna um máximo de dez mil registros para o tipo de objeto especificado, conforme ditado pelos privilégios de acesso da função usada para executar o comando. Todos os registros acima do limite de dez mil registros não são retornados, mesmo com um filtro aplicado.

    Para visualizar os resultados para os quais existem mais de dez mil registros, consulte a exibição correspondente (se houver) em Snowflake Information Schema.

  • Use este comando para monitorar o estado e a configuração de suas instâncias do Postgres para fins de planejamento de capacidade, solução de problemas e auditoria.

  • Casos de uso comuns incluem verificar os estados das instâncias durante as operações, identificar instâncias que precisam de atualizações e revisar o uso de armazenamento em sua conta.

Exemplos

Liste todas as instâncias do Postgres na conta:

SHOW POSTGRES INSTANCES;
Copy

Liste as instâncias do Postgres com nomes que começam com prod:

SHOW POSTGRES INSTANCES STARTS WITH 'PROD';
Copy

Liste as instâncias do Postgres que correspondem a um padrão:

SHOW POSTGRES INSTANCES LIKE 'DEV_%';
Copy

Use o operador de fluxo para filtrar e selecionar colunas específicas:

SHOW POSTGRES INSTANCES
  ->> SELECT "name", "state", "compute_family", "storage_size"
      FROM $1
      WHERE "state" = 'READY'
      ORDER BY "name";
Copy

Encontre todas as instâncias com alta disponibilidade ativada:

SHOW POSTGRES INSTANCES
  ->> SELECT "name", "compute_family", "is_ha", "postgres_version"
      FROM $1
      WHERE "is_ha" = 'true';
Copy

Obtenha um resumo do uso de armazenamento em todas as instâncias:

SHOW POSTGRES INSTANCES
  ->> SELECT "name", "storage_size", "created_on"
      FROM $1
      WHERE "storage_size" > 100
      ORDER BY "storage_size" DESC;
Copy