Compartilhar via


Solucionar problemas da extensão de Armazenamento do Azure no Banco de Dados do Azure para PostgreSQL

Veja a seguir a lista de erros que a extensão do Armazenamento do Azure pode retornar. Também explica as razões pelas quais ou as circunstâncias em que podem ser levantadas.

ERRO: azure_storage: a permissão não é suficiente para executar a operação solicitada

Ao executar qualquer uma das funções que interagem com o Armazenamento do Azure (azure_storage.blob_listazure_storage.blob_getou azure_storage.blob_put) e a Identidade Gerenciada Atribuída pelo Sistema não recebe as funções ou permissões adequadas do plano de dados (normalmente, um mínimo de Colaborador de Dados de Blobs de Armazenamento para azure_storage.blob_put e um mínimo de Leitor de Dados de Blob de Armazenamento para as outras duas funções).

Pode ser o caso de você já ter concedido as permissões mínimas necessárias, mas elas ainda não estão em vigor. Pode levar alguns minutos até que essas permissões se propaguem.

ERRO: azure_storage: credenciais de armazenamento ausentes

Ao executar qualquer uma das funções que interagem com o Armazenamento do Azure (azure_storage.blob_listazure_storage.blob_getou azure_storage.blob_put) e as credenciais com as quais você deseja que a extensão se autentique com a conta de armazenamento não são registradas usando azure_storage.account_add.

ERRO: azure_storage: erro interno durante a conexão

Quando a instância do servidor flexível não consegue acessar a conta de armazenamento de destino. Essa situação pode acontecer nos seguintes casos:

  • A conta de armazenamento não existe.
  • A configuração de rede não permite que o tráfego originado da instância do servidor flexível chegue à conta de armazenamento. Por exemplo, quando a instância do servidor flexível é implantada com a rede de acesso público e a conta de armazenamento só é acessível por meio de pontos de extremidade privados.

ERRO: azure_storage: user_or_role< de usuário >atual não tem permissão para usar a conta <de armazenamento account_name>

Ao executar qualquer uma das funções que interagem com o Armazenamento do Azure (azure_storage.blob_listazure_storage.blob_getou azure_storage.blob_put) com um usuário ou função que não é membro azure_storage_admin e não recebe permissões, usando azure_storage.account_user_add, para usar a conta de armazenamento referenciada.

ERRO: azure_storage: não há suporte para consulta ao copiar dados para o armazenamento de blobs

Ao executar uma instrução COPY TO para a qual a origem é uma consulta. A extensão de Armazenamento do Azure não dá suporte a essa sintaxe. Ele só dá suporte à sintaxe na qual a origem do COPY TO é uma relação. Como solução alternativa, você pode implementar uma exibição com a consulta como sua definição e reescrever a instrução COPY TO a ser originada no modo de exibição.

ERRO: azure_storage: não foi possível inferir a codificação de arquivo da extensão: '<extension>', use uma extensão com suporte [csv, csv.gz, tsv, tsv.gz, json, json.gz, xml, xml.gz, txt, txt.gz, parquet], ou especifique o argumento do decodificador se você estiver usando blob_get ou formatar se estiver usando COPY FROM/TO

Quando <a extensão> não corresponde a uma das extensões das quais a extensão de Armazenamento do Azure dá suporte à inferência do algoritmo de codificador e compactação (para blob_put e COPY TO) ou decodificador e algoritmo de descompactação (para blob_get e COPY FROM) que deve ser usado. Especifique um dos valores com suporte para inferência automática ou não use auto , mas force o tipo específico de codificador + compactação ou decodificador + descompactação.

ERRO: azure_storage: só pode usar o codificador de texto com uma única coluna

Quando as tuplas são passadas para blob_put consistir em mais de uma coluna e o codificador é inferido como , ou manualmente definido como texttext.

ERRO: azure_storage: só pode usar o decodificador de texto com uma única coluna

Quando as tuplas são lidas do blob consistem blob_get em mais de uma coluna e o codificador é inferido como , ou é definido manualmente como texttext.

ERRO: azure_storage: o contêiner com o nome fornecido não existe

O nome do contêiner passado pelo container_name parâmetro da blob_get função não existe na conta de armazenamento referenciada.

ERRO: azure_storage: o blob com o nome fornecido não existe

O nome do blob passado pelo path parâmetro da blob_get função não existe no contêiner referenciado na conta de armazenamento.