Cara Menginstal PostgreSQL 16 di Ubuntu 24.04, 22.04, atau 20.04

PostgreSQL 16 menandai pembaruan signifikan dalam dunia sistem manajemen basis data. Resmi dirilis pada 14 September 2023, PostgreSQL 16 memperkenalkan banyak fitur dan penyempurnaan baru, memperkuat posisinya sebagai solusi database yang kuat dan serbaguna untuk pengguna, administrator, dan pengembang.

Di bawah ini adalah beberapa fitur utama PostgreSQL 16:

  • Peningkatan Paralelisasi: PostgreSQL 16 memungkinkan paralelisasi gabungan hash OUTER LENGKAP dan internal kanan, yang secara signifikan meningkatkan kinerja kueri.
  • Perbaikan Replikasi: Ini memperkenalkan kemampuan replikasi logis dari server siaga dan memungkinkan pelanggan untuk menerapkan transaksi besar secara paralel.
  • Kemampuan Pemantauan: Menambahkan tampilan pg_stat_io memungkinkan pemantauan statistik I/O yang lebih mendalam.
  • Dukungan SQL/JSON: Rilis ini memperkenalkan konstruktor SQL/JSON dan fungsi identitas, sehingga memperluas kemampuan penanganan datanya.
  • Kinerja Pembekuan Vakum: PostgreSQL 16 meningkatkan kinerja pembekuan vakum, membantu pemeliharaan basis data yang efisien.
  • Pencocokan Ekspresi Reguler: Pencocokan ekspresi reguler untuk nama pengguna dan database di pg_hba.conf dan nama pengguna di pg_ident.conf meningkatkan keamanan dan fleksibilitas.

Sekarang, mari kita lanjutkan ke cara teknis dan mempelajari proses instalasi PostgreSQL 16.

Prasyarat untuk Menginstal PostgreSQL 16

Agar berhasil menginstal PostgreSQL 16 di Ubuntu, pastikan Anda memenuhi persyaratan berikut:

Perangkat Keras yang Direkomendasikan dan Versi Ubuntu yang Didukung

KomponenPersyaratan
ProsesorProsesor kompatibel 1 gigahertz (GHz) atau lebih cepat
RAM2 GB atau lebih
Ruang DiskHDD 512 MB (ruang disk tambahan diperlukan untuk data atau komponen pendukung)
Versi yang DidukungUbuntu 24.04 (Mulia), Ubuntu 22.04 (Jammy), Ubuntu 20.04 (Fokus)

Persyaratan Tambahan

PersyaratanKeterangan
Koneksi InternetDiperlukan untuk mengunduh PostgreSQL 16 dan pembaruan di masa mendatang.
Konvensi TerminalSemua perintah terminal harus dijalankan sebagai pengguna biasa dengan sudo hak istimewa.
Perintah CLIGunakan Command Line Interface (CLI) untuk instalasi dan pengaturan.

Impor Repositori APT PostgreSQL

Perbarui Ubuntu Sebelum Instalasi PostgreSQL 16

Mulailah dengan memastikan sistem Ubuntu Anda mutakhir. Langkah ini penting untuk menjaga stabilitas dan kompatibilitas sistem:

sudo apt update

Selanjutnya, perbarui paket apa pun yang sudah kedaluwarsa:

sudo apt upgrade

Instal Paket Awal untuk PostgreSQL 16

Untuk membantu dalam menginstal perangkat lunak database, instal paket berikut:

sudo apt install dirmngr ca-certificates software-properties-common apt-transport-https lsb-release curl -y

Tambahkan Repositori PostgreSQL 16 APT

Pertama, impor kunci GPG PostgreSQL. Ini tentang memastikan paket yang akan Anda instal adalah asli dan tidak diubah:

curl -fSsL https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | sudo tee /usr/share/keyrings/postgresql.gpg > /dev/null

Memilih Repositori PostgreSQL 16 yang Tepat

Sekarang, saatnya memilih repositori PostgreSQL 16 yang sesuai dengan kebutuhan Anda.

Repositori Stabil untuk Produksi / Penggunaan Umum

Repositori stabil adalah pilihan Anda bagi sebagian besar pengguna, terutama di lingkungan produksi. Ini diperbarui secara berkala dengan versi yang stabil dan aman:

echo deb [arch=amd64,arm64,ppc64el signed-by=/usr/share/keyrings/postgresql.gpg] http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main | sudo tee /etc/apt/sources.list.d/postgresql.list

Snapshot atau Repositori Pengujian untuk Pengembang

Pertimbangkan repositori snapshot atau pengujian jika Anda sedang dalam tahap pengembangan atau pengujian. Namun perlu diingat bahwa ini bukan untuk keperluan produksi karena sifatnya yang kurang stabil.

Repositori Snapshot untuk Pengujian Mutakhir

Ambil snapshot terbaru di sini:

echo deb [arch=amd64,arm64,ppc64el signed-by=/usr/share/keyrings/postgresql.gpg] http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg-snapshot main | sudo tee /etc/apt/sources.list.d/postgresql.list
Uji Repositori untuk Fitur Terbaru

Untuk menguji fitur-fitur terbaru, perintah ini akan menyiapkan Anda:

echo deb [arch=amd64,arm64,ppc64el signed-by=/usr/share/keyrings/postgresql.gpg] http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg-testing main | sudo tee /etc/apt/sources.list.d/postgresql.list

Instal PostgreSQL 16 melalui Perintah Terminal

Segarkan Daftar Sumber Indeks Paket APT

Setelah menambahkan repositori PostgreSQL stabil atau pengujian, penting untuk memperbarui daftar sumber repositori Anda. Tindakan ini memastikan sistem Anda mengenali repositori PostgreSQL yang baru ditambahkan:

sudo apt update

Instal PostgreSQL 16 melalui Perintah APT

Sekarang, mari beralih ke instalasi PostgreSQL 16. Perintah ini menginstal klien dan server PostgreSQL:

sudo apt install postgresql-client-16 postgresql-16

Memverifikasi Instalasi PostgreSQL

Setelah instalasi selesai, sangat penting untuk memastikan bahwa PostgreSQL telah diinstal dan dijalankan dengan benar. Perintah ini memeriksa status layanan PostgreSQL:

systemctl status postgresql

Mengaktifkan PostgreSQL 16

Jika PostgreSQL tidak aktif, gunakan perintah ini untuk memulai layanan PostgreSQL. Hal ini juga memastikan bahwa PostgreSQL dimulai secara otomatis dengan sistem Anda:

sudo systemctl enable postgresql --now

Mengelola Layanan PostgreSQL 16

Menghentikan Server PostgreSQL 16

Untuk menghentikan layanan PostgreSQL sementara, mungkin untuk pemeliharaan atau perubahan konfigurasi, gunakan perintah ini:

sudo systemctl stop postgresql

Memulai Server PostgreSQL 16

Saat Anda siap untuk memulai layanan PostgreSQL, terutama setelah penghentian atau instalasi awal, perintah ini berguna:

sudo systemctl start postgresql

Memulai ulang Server PostgreSQL 16

Dalam skenario ketika Anda mengubah konfigurasi atau pembaruan, restart sering kali diperlukan. Perintah ini memulai ulang layanan PostgreSQL, menerapkan perubahan baru:

sudo systemctl restart postgresql

Memuat ulang Server PostgreSQL 16

Untuk memuat ulang layanan PostgreSQL tanpa mengganggu pengoperasiannya, gunakan perintah ini. Ini berguna ketika Anda perlu menerapkan perubahan konfigurasi kecil:

sudo systemctl reload postgresql

Memeriksa Status PostgreSQL 16

Untuk memverifikasi status operasional layanan PostgreSQL, termasuk apakah layanan tersebut aktif dan berjalan tanpa masalah, gunakan:

systemctl status postgresql

Mengaktifkan PostgreSQL 16 pada Boot Sistem

Jika PostgreSQL tidak diatur untuk memulai secara otomatis, perintah ini akan mengaktifkannya, memastikan PostgreSQL segera aktif dan pada boot sistem berikutnya:

sudo systemctl enable postgresql --now

Contoh Dasar Perintah dengan PostgreSQL 16

Mengakses Akun Pengguna Postgres

Di PostgreSQL, pengguna 'postgres' adalah peran pengguna super default. Akun ini sangat penting untuk menjalankan perintah administratif. Untuk beralih ke akun ini, gunakan:

sudo -i -u postgres

Setelah berada di akun, masuk ke antarmuka baris perintah PostgreSQL:

psql

Perintahnya postgres=# mengonfirmasi koneksi Anda ke lingkungan PostgreSQL. Untuk keluar, cukup ketik exit.

Akses Cepat ke PostgreSQL Tanpa Peralihan Pengguna

Untuk operasi cepat tanpa mengubah akun pengguna, akses langsung PostgreSQL:

sudo -u postgres psql

Perintah ini menghemat waktu untuk tugas-tugas rutin. Untuk keluar dari antarmuka ini, ketik exit.

Membuat Peran Pengguna PostgreSQL Baru

Fleksibilitas PostgreSQL memungkinkan pengguna super membuat peran pengguna. Untuk menetapkan peran pengguna baru, jalankan perintah ini:

sudo su - postgres -c "createuser <username>"

Mengganti <username> dengan nama pengguna yang Anda inginkan.

Memulai Database PostgreSQL Baru

Untuk menyiapkan database baru untuk pengguna Anda:

sudo su - postgres -c "createdb <database_name>"

Mengganti <database_name> dengan nama yang dimaksudkan untuk database Anda.

Menetapkan Hak Istimewa Pengguna ke Database

Tetapkan akses database dengan aman:

sudo -u postgres psql
GRANT ALL PRIVILEGES ON DATABASE <database_name> TO <username>;

Pengganti <database_name> Dan <username> sesuai kebutuhan. Akhiri dengan mengetik exit.

Konfigurasikan Firewall UFW untuk PostgreSQL 16

Memasang dan Mengaktifkan Firewall UFW

Pastikan UFW (Uncomplication Firewall) diinstal dan diaktifkan di sistem Anda. UFW menyederhanakan manajemen firewall dan penting untuk mengamankan lalu lintas jaringan:

sudo apt install ufw
sudo ufw enable

Menyiapkan Aturan UFW untuk PostgreSQL 16

PostgreSQL berkomunikasi pada port 5432 secara default. UFW perlu dikonfigurasi untuk mengizinkan lalu lintas pada port ini, terutama saat menghubungkan dari lokasi yang jauh.

Mengizinkan Akses Subnet

Untuk mengizinkan akses ke berbagai alamat IP dalam subnet, gunakan perintah ini:

sudo ufw allow proto tcp from 192.168.1.0/24 to any port 5432

Mengganti 192.168.1.0/24 dengan rentang subnet spesifik Anda.

Mengizinkan Akses IP Individu

Untuk memberikan akses ke PostgreSQL dari satu alamat IP, gunakan:

sudo ufw allow proto tcp from 192.168.1.0 to any port 5432

Memodifikasi 192.168.1.0 ke alamat IP yang ingin Anda izinkan.

Ini hanyalah contoh dasar. Anda harus mempertimbangkan untuk mengunci database apa pun yang dapat diakses oleh publik sebanyak mungkin dalam jangka panjang.

Konfigurasikan PostgreSQL 16

Aktifkan Akses Jarak Jauh di PostgreSQL 16

Mengonfigurasi PostgreSQL untuk menerima koneksi jarak jauh melibatkan penyesuaian alamat pendengaran dari antarmuka lokal default.

Memodifikasi Konfigurasi untuk Akses Jarak Jauh

Akses file konfigurasi PostgreSQL:

sudo nano /etc/postgresql/16/main/postgresql.conf

Di bagian “Pengaturan Koneksi”, ubah listen_addresses = 'localhost' untuk kebutuhan spesifik Anda:

  • Ganti 'localhost' dengan alamat IP yang diinginkan untuk satu IP.
  • Untuk mengizinkan koneksi di semua antarmuka, gunakan listen_addresses = '*'.

Setelah melakukan perubahan, simpan dengan CTRL+O dan keluar dengan CTRL+X. Kemudian, mulai ulang PostgreSQL:

sudo systemctl restart postgresql

Verifikasi perubahan dengan:

ss -nlt | grep 5432

Pada output, Anda akan melihat port 5432 aktif.

Mengonfigurasi pg_hba.conf untuk Peningkatan Keamanan

Sunting itu pg_hba.conf file untuk kontrol akses yang disempurnakan:

sudo nano /etc/postgresql/16/main/pg_hba.conf

Menyesuaikan Akses Pengguna dan Basis Data

Di dalam pg_hba.conf, Anda dapat menentukan pengguna dan database mana yang dapat terhubung, dan dari alamat mana. Berikut beberapa konfigurasi umum:

  • Akses Khusus Pengguna: Ganti 'semua' dengan nama pengguna tertentu untuk membatasi akses hanya kepada pengguna tersebut.
  • Akses Khusus Basis Data: Menentukan database tertentu alih-alih mengizinkan akses ke semua database.
  • Batasan Alamat: Tentukan alamat atau rentang IP tertentu (misalnya, 192.168.1.0/24) untuk membatasi dari mana koneksi dapat berasal.

Memilih Metode Otentikasi

PostgreSQL mendukung berbagai metode otentikasi:

  • MD5: Membutuhkan kata sandi dan mengenkripsinya dengan MD5.
  • Kata sandi: Menggunakan kata sandi teks biasa (kurang aman, tidak disarankan untuk produksi).
  • Rekan: Mengandalkan identitas pengguna tingkat OS (umum untuk koneksi lokal).
  • Identitas: Mirip dengan 'peer', biasanya digunakan untuk koneksi jaringan.
  • SCRAM-SHA-256: Metode yang lebih aman, direkomendasikan melalui MD5 atau kata sandi.

Menyetel Performa di postgresql.conf

Untuk pengoptimalan kinerja, pertimbangkan pengaturan ini di postgresql.conf:

  • shared_buffer: Menyesuaikan jumlah memori yang digunakan PostgreSQL untuk buffer memori bersama.
  • pekerjaan_mem: Mengatur memori yang digunakan untuk operasi penyortiran dan hashing internal.
  • max_connections: Mengontrol jumlah maksimum koneksi bersamaan ke database.

Pemantauan dan Diagnostik

Aktifkan logging terperinci untuk mendapatkan wawasan tentang kinerja dan masalah database:

  • log_pernyataan: Setel ke 'semua' untuk mencatat setiap pernyataan SQL yang dieksekusi.
  • log_durasi: Saat diaktifkan, mencatat durasi setiap pernyataan SQL yang diselesaikan.

Kesimpulan

Kami baru saja mempelajari panduan komprehensif untuk menyiapkan PostgreSQL 16 di Ubuntu, yang mencakup semuanya mulai dari instalasi dan konfigurasi akses jarak jauh hingga memperketat keamanan dengan aturan firewall. Ingat, meskipun PostgreSQL berjalan dengan baik, kunci sebenarnya terletak pada pemeliharaan rutin dan pemeriksaan keamanan.

Tautan Berguna

Berikut beberapa tautan bermanfaat terkait instalasi PostgreSQL 16 di Ubuntu Linux:

  • Catatan Rilis PostgreSQL 16: Baca catatan rilis PostgreSQL 16 untuk mempelajari tentang fitur baru, penyempurnaan, dan perbaikan bug.
  • Repositori GitHub PostgreSQL: Kunjungi repositori resmi PostgreSQL GitHub untuk mengakses kode sumber, melaporkan masalah, dan berkontribusi pada pengembangan.
  • Dokumentasi PostgreSQL: Akses dokumentasi PostgreSQL yang komprehensif untuk panduan instalasi, konfigurasi, dan penggunaan terperinci.
  • Komunitas PostgreSQL: Bergabunglah dengan komunitas PostgreSQL untuk terhubung dengan pengguna lain, berpartisipasi dalam diskusi, dan mendapatkan dukungan.
Joshua James
Ikuti aku
Postingan terbaru oleh Joshua James (Lihat semua)

Tinggalkan komentar