sql >> Base de Datos >  >> RDS >> PostgreSQL

Me sale un error no se pudo escribir el bloque... del archivo temporal no queda espacio en el dispositivo... usando postgresql

ESTÁ BIEN. Como todavía faltan algunos datos, un intento de respuesta para quizás aclarar el problema:

Parece que se está quedando sin espacio en disco. Lo más probable es que no tenga suficiente espacio en su disco. Comprobar en Linux/Unix df -h por ejemplo.

Para mostrarle cómo podría suceder esto:tener una tabla con quizás 3 enteros, los datos por sí solos ocuparán alrededor de 12 bytes. Debe agregarle algunos gastos generales para la administración de filas, etc. En otra respuesta Erwin mencionó sobre 23Byte y se vinculó al manual para obtener más información al respecto. También es posible que se necesite algo de relleno entre filas, etc. Así que haciendo un poco de matemáticas:

Incluso con un número entero de 3, terminaremos con aproximadamente 40 bytes por fila. Teniendo en cuenta que quería insertar 8,000,000, esto sumará 320,000,000 bytes o ~ 300 MB (solo para nuestro ejemplo de 3 enteros y muy aproximadamente).

Ahora dando, tiene un par de índices en esta tabla, los índices también crecerán durante las inserciones. También otro aspecto podría ser la hinchazón en la mesa y los índices que podrían borrarse con una aspiradora.

Entonces, ¿cuál es la solución:

  1. Proporcione más espacio en disco a su base de datos
  2. Divida sus insertos un poco más y asegúrese de que haya vacío entre ellos