Mover a localização do arquivo temporário do PostgreSQL

1

Como faço para mover o local do arquivo / cache temporário do PostgreSQL? Eu tenho espaço limitado na partição do meu sistema, por isso continua me jogando erros como este:

ERROR: could not extend file "base/16384/16563.1": wrote only 4096 of 8192 bytes at block 207279
SQL state: 53100
Hint: Check free disk space.
    
por Joren 03.12.2013 / 00:40

1 resposta

2

Para controlar onde o PostgreSQL coloca arquivos temporários, você primeiro cria um ou mais tablespaces Para manter os arquivos temporários, defina os temp_tablespaces variável de configuração para especificar esses tablespaces.

É importante que o diretório tablespace continue a existir após uma reinicialização. Tudo bem que os tempfiles desapareçam, mas o diretório de destino deve existir ou o PostgreSQL não iniciará.

Você pode até fornecer um parâmetro tablespace explícito para um CREATE TEMPORARY TABLE ... etc, permitindo que você controle onde as coisas vão distribuir a E / S se você souber mais sobre a carga de trabalho do que o servidor de banco de dados.

    
por Craig Ringer 03.12.2013 / 08:14