Gunakan pengguna sistem operasi postgres
untuk membuat database Anda - selama Anda belum menyiapkan database peran 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 direkomendasikan di sini atau di sini.
Kemudian 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 di jawaban lain.
Intinya adalah menggunakan pengguna sistem operasi yang cocok dengan peran basis data dengan nama yang sama untuk diberikan akses melalui ident
otentikasi . postgres
adalah pengguna sistem operasi default untuk menginisialisasi cluster database. Panduan:
Untuk mem-bootstrap sistem database, sistem yang baru diinisialisasi selalu berisi satu peran yang telah ditentukan. Peran ini selalu merupakan “pengguna super”, dan secara default (kecuali diubah saat menjalankan
initdb
) itu akan memiliki nama yang sama dengan pengguna sistem operasi yang menginisialisasi cluster database. Biasanya, peran ini akan diberi namapostgres
.Untuk membuat lebih banyak peran, Anda harus terlebih dahulu terhubung sebagai peran awal ini.
Saya telah 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 database dan otentikasi klien di manual.