Gunakan pengguna sistem operasi postgres
untuk membuat database Anda - selama Anda belum mengatur peran database dengan hak istimewa yang diperlukan yang sesuai dengan pengguna sistem operasi Anda dengan nama yang sama ( h9uest
dalam kasus Anda):
sudo -u postgres -i
Seperti yang disarankan di sini atau di sini .
Lalu coba lagi. Ketik exit
ketika selesai dengan operasi sebagai pengguna sistem postgres
.
Atau jalankan perintah tunggal createuser
sebagai postgres
dengan sudo
, seperti yang ditunjukkan oleh Drees dalam jawaban lain.
Intinya adalah untuk menggunakan pengguna sistem operasi yang cocok dengan peran database dengan nama yang sama untuk diberikan akses melalui ident
otentikasi . postgres
adalah pengguna sistem operasi default yang telah menginisialisasi cluster database. Manual:
Untuk mem-bootstrap sistem basis data, sistem yang baru diinisialisasi selalu berisi satu peran yang telah ditentukan. Peran ini selalu merupakan "superuser", dan secara default (kecuali diubah saat dijalankan initdb
), ia akan memiliki nama yang sama dengan pengguna sistem operasi yang menginisialisasi gugus basis data. Biasanya, peran ini akan dinamai postgres
. Untuk membuat lebih banyak peran, Anda harus terlebih dahulu terhubung sebagai peran awal ini.
Saya pernah mendengar tentang pengaturan aneh dengan nama pengguna non-standar atau di mana pengguna sistem operasi tidak ada. Anda perlu menyesuaikan strategi Anda di sana.
Baca tentang peran basis data dan otentikasi klien di manual.
FATAL: role "user" is not permitted to log in
, periksa dba.stackexchange.com/questions/57723/… untuk itu.