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

Cara Mengatur Kata Sandi Pengguna Default di PostgreSQL

Pertama, penting untuk dipahami bahwa untuk sebagian besar distribusi Unix, pengguna Postgres default tidak memerlukan atau menggunakan kata sandi untuk otentikasi. Sebagai gantinya, tergantung bagaimana Postgres awalnya diinstal dan versi apa yang Anda gunakan, metode otentikasi default akan menjadi ident atau peer .

ident otentikasi menggunakan server identifikasi sistem operasi yang berjalan pada port TCP 113 untuk memverifikasi kredensial pengguna.

peer otentikasi di sisi lain, digunakan untuk koneksi lokal dan memverifikasi bahwa nama pengguna yang masuk dari sistem operasi cocok dengan nama pengguna untuk database Postgres.

Masuk dan Hubungkan sebagai Pengguna Default

Untuk sebagian besar sistem, pengguna default Postgres adalah postgres dan kata sandi tidak diperlukan untuk otentikasi. Jadi, untuk menambahkan kata sandi, kita harus login terlebih dahulu dan terhubung sebagai postgres pengguna.

$ sudo -u postgres psql

Jika Anda berhasil terhubung dan melihat psql prompt, lompat ke bawah ke Mengubah Kata Sandi bagian.

Jika Anda menerima pesan kesalahan yang menyatakan bahwa database “postgres” tidak ada, coba sambungkan ke template1 database sebagai gantinya dan jika berhasil, lanjutkan ke Mengubah Kata Sandi .

$ sudo -u postgres psql template1

Kesalahan Otentikasi

Jika Anda menerima kesalahan autentikasi saat mencoba menyambung ke psql klien, Anda mungkin perlu mengubah file konfigurasi otentikasi Postgres (pg_hfa.conf).

Buka file konfigurasi, biasanya terletak di /etc/postgresql/#.#/main/pg_hba.conf , di mana #.# adalah versi Postgres yang Anda gunakan:

$ sudo nano /etc/postgresql/9.3/main/pg_hba.conf

File konfigurasi auth adalah daftar aturan otentikasi. Gulir ke bawah file sampai Anda menemukan baris pertama yang menampilkan postgres pengguna di kolom ketiga (jika ada baris seperti itu). Batalkan komentar pada baris jika perlu (hapus titik koma), atau jika baris tersebut hilang seluruhnya, tambahkan baris berikut ke bagian atas file dan simpan perubahan Anda:

local all postgres peer

Aturan otentikasi ini hanya memberi tahu Postgres bahwa untuk koneksi lokal yang dibuat ke semua database untuk pengguna postgres , autentikasi menggunakan peer protokol.

Catatan:Beberapa versi Postgres yang lebih lama lebih memilih metode otentikasi default dari ident, tetapi sebagian besar instalasi modern akan menggunakan rekan seperti yang ditentukan di atas. Anda mungkin perlu menguji keduanya jika hasilnya berbeda.

Sekarang dengan file konfigurasi Anda diperbarui, ulangi langkah-langkah di Masuk dan Hubungkan sebagai Pengguna Default bagian untuk mencoba terhubung sebagai postgres default pengguna. Setelah berhasil, lanjutkan dengan mengubah kata sandi.

Mengganti Kata Sandi

Dengan koneksi sekarang dibuat ke Postgres di psql prompt, keluarkan ALTER USER perintah untuk mengubah kata sandi untuk postgres pengguna:

postgres=# ALTER USER postgres PASSWORD 'myPassword';
ALTER ROLE

Jika berhasil, Postgres akan menampilkan konfirmasi ALTER ROLE seperti yang terlihat di atas.

Terakhir, keluar dari psql klien dengan menggunakan \q perintah.

postgres=# \q

Anda sudah selesai. Default postgres pengguna sekarang memiliki kata sandi yang terkait dengan akun untuk digunakan di aplikasi Anda yang lain.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mungkinkah melakukan kueri lintas basis data dengan PostgreSQL?

  2. Alat Peringatan dan Pemberitahuan Terbaik untuk PostgreSQL

  3. Kinerja aplikasi berbasis PostgreSQL:latensi dan penundaan tersembunyi

  4. Ubah Nama Bulan menjadi Nomor Bulan di PostgreSQL

  5. Bagaimana cara mengubah gaya tanggal di PostgreSQL?