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

Basis data Postgres yang berjalan di buruh pelabuhan terus menggantung

Ini terjadi karena ketidakcocokan izin pengguna di wadah buruh pelabuhan.

Mencantumkan file yang relevan dalam wadah:

$ docker exec <container> ls -l /var/lib/postgresql/data/pg_stat_tmp
-rw------- 1 root     root     [...] db_0.stat
-rw------- 1 root     root     [...] db_1.stat
-rw------- 1 root     root     [...] db_2.stat
-rw------- 1 postgres postgres [...] global.stat

kita dapat melihat bahwa semua db_*.stat file dimiliki oleh root:root , sedangkan global.stat dimiliki oleh postgres:postgres .

Memeriksa pengguna buruh pelabuhan memberi kami:

$ docker exec <container> whoami
root

Jadi, kami ingin semua file ini dimiliki oleh pengguna postgres. Untungnya, ini cukup mudah! Cukup setel pengguna ke postgres , dan mulai ulang!

Dalam file buruh pelabuhan:

USER postgres

Menggunakan komposisi buruh pelabuhan:

services:
  postgres:
    image: postgres:13
    user: postgres


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL psycopg2 mengembalikan Tuple string alih-alih Tuple Tuple?

  2. Bagaimana pernyataan dan data cache PostgreSQL?

  3. postgresql - hitung (tidak ada nilai nol) dari setiap kolom dalam tabel

  4. Mengapa saya mendapatkan kesalahan tidak dapat terhubung ke server untuk postgres di Mac OS Lion?

  5. Berikan izin pengguna untuk MENGUBAH fungsi