PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Saya mendapatkan kesalahan tidak dapat menulis blok .... file sementara tidak ada ruang tersisa di perangkat ... menggunakan postgresql

OKE. Karena masih ada beberapa fakta yang hilang, upaya untuk menjawab mungkin memperjelas masalah ini:

Tampaknya Anda kehabisan ruang disk. Kemungkinan besar karena Anda tidak memiliki cukup ruang pada disk Anda. Periksa di Linux/Unix df -h Misalnya.

Untuk menunjukkan kepada Anda, bagaimana ini bisa terjadi:Memiliki tabel dengan mungkin 3 bilangan bulat, data saja akan menempati sekitar 12Byte. Anda perlu menambahkan beberapa overhead untuk itu untuk manajemen baris dll. Pada jawaban lain Erwin menyebutkan tentang 23Byte dan menautkan ke manual untuk informasi lebih lanjut tentang. Juga mungkin perlu beberapa padding antara baris dll. Jadi lakukan sedikit matematika:

Bahkan dengan bilangan bulat 3 kita akan mendapatkan sekitar 40 Byte per baris. Mengingat Anda ingin memasukkan 8.000.000 ini akan berjumlah hingga 320.000.000Byte atau ~ 300MB (untuk contoh 3 bilangan bulat kami saja dan sangat kasar).

Sekarang memberi, Anda memiliki beberapa indeks di tabel ini, indeks juga akan tumbuh selama penyisipan. Juga aspek lain mungkin bisa mengasapi di atas meja dan indeks yang mungkin bisa dibersihkan dengan ruang hampa.

Jadi apa solusinya:

  1. Berikan lebih banyak ruang disk ke database Anda
  2. Pisahkan sisipan Anda sedikit lagi dan pastikan, vakum berjalan di antara sisipan tersebut


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tetapkan nilai total bulan ke setiap hari dalam sebulan

  2. Mencoba mengubah batasan di PostgreSQL

  3. 2ndQuadrant Deutschland – Tawar-menawar Pembukaan Pelatihan Khusus

  4. Ubah fungsi rekursif menjadi tampilan

  5. Cara diam menginstal Postgresql di Ubuntu melalui. file docker?