Condividi tramite


Risoluzione dei problemi di accesso in sola lettura ad Azure Cosmos DB per PostgreSQL

Importante

Azure Cosmos DB per PostgreSQL non è più supportato per i nuovi progetti. Non usare questo servizio per i nuovi progetti. Usare invece uno dei due servizi seguenti:

PostgreSQL non può essere eseguito in un computer senza spazio su disco libero. Per mantenere l'accesso ai server PostgreSQL, è necessario impedire l'esaurimento dello spazio su disco.

In Azure Cosmos DB for PostgreSQL, i nodi vengono impostati su uno stato di sola lettura (RO) quando il disco è quasi pieno. Impedisce alle attività di scrittura di continuare a riempire il disco e mantiene il nodo disponibile per le operazioni di lettura. Durante lo stato di sola lettura, è possibile adottare misure per liberare più spazio su disco.

Importante

Anche nello stato di sola lettura, le transazioni in movimento possono continuare a scrivere nel database, riducendo ulteriormente lo spazio di archiviazione disponibile. Se le dimensioni di archiviazione disponibili continuano a diminuire dopo che il nodo è stato impostato su sola lettura, tutte le sessioni esistenti verranno disconnesse e le transazioni di cui non è stato eseguito il commit verranno sottoposte a rollback.

Modi per recuperare l'accesso di scrittura

Se uno stato di un nodo è stato impostato su sola lettura, è necessario liberare spazio sul disco per sbloccare le operazioni di scrittura nel nodo. L'accesso in scrittura viene riabilitato quando il nodo ha più di 16 GiB di spazio di archiviazione disponibile sui nodi con 256 GiB o più del 7% dello spazio di archiviazione disponibile nei nodi con 128 GiB o spazio di archiviazione più piccolo.

Sul nodo coordinatore

  • Aumentare le dimensioni di archiviazione sul nodo coordinatore e/o
  • Distribuire tabelle locali sui nodi di lavoro o eliminare i dati. È necessario eseguire SET SESSION CHARACTERISTICS AS TRANSACTION READ WRITE dopo aver eseguito la connessione al database e prima di eseguire altri comandi.

Su un nodo di lavoro

  • Aumentare le dimensioni di archiviazione sui nodi di lavoro e/o
  • Ribilanciare i dati su altri nodi o eliminare alcuni dati.
    • È necessario impostare temporaneamente il nodo di lavoro su lettura/scrittura. È possibile connettersi direttamente ai nodi di lavoro e usare SET SESSION CHARACTERISTICS come descritto in precedenza per il nodo coordinatore.

Prevenzione

È possibile configurare un avviso per ricevere una notifica quando l'archiviazione del server sta per raggiungere la soglia. In questo modo, è possibile agire in anticipo per evitare di entrare nello stato di sola lettura. Per altre informazioni, vedere la documentazione sugli avvisi consigliati.

Passaggi successivi