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

Cara Menginstal PostgreSQL 12 di Ubuntu 20.04/18.04/16.04

Dalam artikel ini, kami akan menunjukkan cara Menginstal PostgreSQL 12 di Ubuntu 20.04/18.04/16.04. PostgreSQL adalah sistem database open-source dan sangat kuat seperti sistem database relasional lainnya.

Anda dapat melihat halaman rilis postgreSQL 12. 

Langkah-Langkah Menginstal PostgreSQL 12 di Ubuntu 

Langkah 1:Perbarui sistem Ubuntu

Selalu disarankan untuk memperbarui sistem sebelum menginstal PostgreSQL.

sudo apt update

Langkah 2:Instal paket yang diperlukan 

sudo apt -y install vim bash-completion wget

Jika paket tersebut sudah terinstal maka Anda akan mendapatkan output di bawah ini, Anda dapat mengabaikannya.

Contoh Keluaran:

root@PostgreSQL:~# sudo apt -y install vim bash-completion wgetMembaca daftar paket... SelesaiMembangun pohon ketergantungan Membaca informasi status... Penyelesaian selesai sudah merupakan versi terbaru (1:2.11-2ubuntu1).vim sudah merupakan versi terbaru (2:8.2.0716-3ubuntu2).wget sudah menjadi versi terbaru (1.20.3-1ubuntu1).wget diatur untuk diinstal secara manual.Paket berikut diinstal secara otomatis dan tidak lagi diperlukan:virtualbox-guest -utilsGunakan 'sudo apt autoremove' untuk menghapusnya.0 ditingkatkan, 0 baru diinstal, 0 untuk dihapus dan 212 tidak ditingkatkan.root@PostgreSQL:~# 

Langkah 3:Tambahkan repositori PostgreSQL 12

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" |sudo tee  /etc/apt/sources.list.d/pgdg.list 

Langkah 4:Instal PostgreSQL 12 di Ubuntu

sudo apt updatesudo apt -y install postgresql-12 postgresql-client-12

Contoh Keluaran:

root@PostgreSQL:~# sudo apt -y install postgresql-12 postgresql-client-12Membaca daftar paket... SelesaiMembangun pohon dependensi Membaca informasi status... SelesaiPaket berikut telah diinstal secara otomatis dan tidak lagi diperlukan:virtualbox- guest-utilsGunakan 'sudo apt autoremove' untuk menghapusnya. Paket tambahan berikut akan diinstal:libcommon-sense-perl libjson-perl libjson-xs-perl libpq5libtypes-serialiser-perl pgdg-keyring postgresql-client-commonpostgresql-common sysstat package :postgresql-doc-12 isagPaket BARU berikut akan diinstal:libcommon-sense-perl libjson-perl libjson-xs-perl libpq5libtypes-serializer-perl pgdg-keyring postgresql-12 postgresql-client-12postgresql-client-common postgresql-common sysstat0 ditingkatkan, 11 baru diinstal, 0 untuk dihapus dan 212 tidak ditingkatkan. Perlu mendapatkan 17,5 MB arsip. Setelah operasi ini, 59,4 MB ruang disk tambahan akan digunakan. Dapatkan:1 http://apt.postgresql.org/ pub/repos/apt groovy-pgdg/main amd64 libpq 5 amd64 13.3-1.pgdg20.10+1 [177 kB]Dapatkan:2 http://us.archive.ubuntu.com/ubuntu groovy/main amd64 libcommon-sense-perl amd64 3.75-1build2 [20.5 kB]Dapatkan:3 http://us.archive.ubuntu.com/ubuntu groovy/main amd64 libjson-perl all 4.02000-2 [80.9 kB]Dapatkan:4 http://apt.postgresql.org/pub/repos/apt groovy-pgdg /main amd64 pgdg-keyring all 2018.2 [10.7 kB]Dapatkan:5 http://apt.postgresql.org/pub/repos/apt groovy-pgdg/main amd64 postgresql-client-common all 226.pgdg20.10+1 [ 90.6 kB]Dapatkan:6 http://us.archive.ubuntu.com/ubuntu groovy/main amd64 libtypes-serialiser-perl all 1.0-1 [12.1 kB]Dapatkan:7 http://us.archive.ubuntu.com /ubuntu groovy/main amd64 libjson-xs-perl amd64 4.020-1build1 [83.7 kB]Dapatkan:8 http://apt.postgresql.org/pub/repos/apt groovy-pgdg/main amd64 postgresql-client-12 amd64 12.7 -1.pgdg20.10+1 [1,429 kB]Dapatkan:9 http://us.archive.ubuntu.com/ubuntu groovy/main amd64 sysstat amd64 12.4.0-1 [471 kB]Dapatkan:10 http:// apt.postgresql.org/pub/repos/apt groovy-pgdg/main amd64 postgresql-common semua 226.pgdg20.10+1 [2 46 kB]Dapatkan:11 http://apt.postgresql.org/pub/repos/apt groovy-pgdg/main amd64 postgresql-12 amd64 12.7-1.pgdg20.10+1 [14.9 MB]Diambil 17,5 MB dalam 15 detik ( 1.141 kB/s) Prakonfigurasi paket ...Memilih paket yang sebelumnya tidak dipilih libcommon-sense-perl.(Membaca database ... 192977 file dan direktori saat ini diinstal.)Bersiap untuk membongkar .../00-libcommon-sense-perl_3.75 -1build2_amd64.deb ...Membongkar libcommon-sense-perl (3.75-1build2) ...Memilih paket yang sebelumnya tidak dipilih libjson-perl.Bersiap untuk membongkar .../01-libjson-perl_4.02000-2_all.deb ... Membongkar libjson-perl (4.02000-2) ...Memilih paket yang sebelumnya tidak dipilih libtypes-serialiser-perl.Bersiap untuk membongkar .../02-libtypes-serialiser-perl_1.0-1_all.deb ...Membongkar libtypes-serialiser- perl (1.0-1) ...Memilih paket yang sebelumnya tidak dipilih libjson-xs-perl.Bersiap untuk membongkar .../03-libjson-xs-perl_4.020-1build1_amd64.deb ...Membongkar libjson-xs-perl (4.020 -1build1) ...Memilih paket yang sebelumnya tidak dipilih libpq5:amd64.P bersiap untuk membongkar .../04-libpq5_13.3-1.pgdg20.10+1_amd64.deb ...Membongkar libpq5:amd64 (13.3-1.pgdg20.10+1) ...Memilih paket yang sebelumnya tidak dipilih pgdg-keyring .Bersiap untuk membongkar .../05-pgdg-keyring_2018.2_all.deb ...Membongkar pgdg-keyring (2018.2) ...Memilih paket yang sebelumnya tidak dipilih postgresql-client-common.Bersiap untuk membongkar .../06-postgresql -client-common_226.pgdg20.10+1_all.deb ...Membongkar postgresql-client-common (226.pgdg20.10+1) ...Memilih paket yang sebelumnya tidak dipilih postgresql-client-12.Bersiap untuk membongkar .../ 07-postgresql-client-12_12.7-1.pgdg20.10+1_amd64.deb ...Membongkar postgresql-client-12 (12.7-1.pgdg20.10+1) ...Memilih paket yang sebelumnya tidak dipilih postgresql-common. Bersiap untuk membongkar .../08-postgresql-common_226.pgdg20.10+1_all.deb ...Menambahkan 'pengalihan /usr/bin/pg_config ke /usr/bin/pg_config.libpq-dev oleh postgresql-common'Unpacking postgresql-common (226.pgdg20.10+1) ...Memilih paket yang sebelumnya tidak dipilih postgresql-12.Bersiap untuk membongkar .../09-postgresql-12_12.7-1.pgdg20.10+1_amd64.deb ...Membongkar postgresql-12 (12.7-1.pgdg20.10+1) ...Memilih paket yang sebelumnya tidak dipilih sysstat.Preparing to unpack .../10-sysstat_12.4.0-1_amd64.deb ...Membongkar sysstat (12.4.0-1) ...Menyiapkan pgdg-keyring (2018.2) ...Menghapus kunci apt.postgresql.org dari tepercaya. gpg:OKMenyiapkan libpq5:amd64 (13.3-1.pgdg20.10+1) ...Menyiapkan libcommon-sense-perl (3.75-1build2) ...Menyiapkan libtypes-serialiser-perl (1.0-1) .. .Menyiapkan libjson-perl (4.02000-2) ...Menyiapkan sysstat (12.4.0-1) ...Membuat file konfigurasi /etc/default/sysstat dengan versi baruupdate-alternatives:using /usr/bin/sar. sysstat untuk menyediakan /usr/bin/sar (sar) dalam mode otomatis symlink yang dibuat /etc/systemd/system/sysstat.service.wants/sysstat-collect.timer→ /lib/systemd/system/sysstat-collect.timer.Created symlink /etc/systemd/system/sysstat.service.wants/sysstat-summary.timer→ /lib/systemd/system/sysstat-summary.timer.Membuat symlink /etc/systemd/system/multi-user.target.wants/sys stat.service → /lib/systemd/system/sysstat.service.Menyiapkan postgresql-client-common (226.pgdg20.10+1) ...Menyiapkan libjson-xs-perl (4.020-1build1) ...Mengatur up postgresql-client-12 (12.7-1.pgdg20.10+1) ...update-alternatives:using /usr/share/postgresql/12/man/man1/psql.1.gz untuk menyediakan /usr/share/ man/man1/psql.1.gz (psql.1.gz) dalam mode otomatisMenyiapkan postgresql-common (226.pgdg20.10+1) ...Menambahkan postgres pengguna ke grup ssl-certMembuat file konfigurasi /etc/postgresql- common/createcluster.conf dengan versi baruMembangun kamus PostgreSQL dari paket myspell/hunspell yang diinstal...en_usMenghapus file kamus usang:Membuat symlink /etc/systemd/system/multi-user.target.wants/postgresql.service → /lib/systemd/ system/postgresql.service.Menyiapkan postgresql-12 (12.7-1.pgdg20.10+1) ...Membuat klaster PostgreSQL baru 12/main .../usr/lib/postgresql/12/bin/initdb -D / var/lib/postgresql/12/main --auth-local peer --auth-host md5File milik sistem database ini akan dimiliki oleh pengguna "postgres".Pengguna ini juga harus memiliki proses server.Kluster basis data akan diinisialisasi dengan lokal "en_US.UTF-8".Pengkodean basis data default telah disetel ke "UTF8".Konfigurasi pencarian teks default akan menjadi set ke "bahasa Inggris". Checksum halaman data dinonaktifkan. Memperbaiki izin pada direktori yang ada /var/lib/postgresql/12/main ... okmembuat subdirektori ... okselecting dynamic shared memory implementation ... posixselecting default max_connections ... 100selecting default shared_buffers ... 128MBmemilih zona waktu default ... America/New_Yorkmembuat file konfigurasi ... okrunning bootstrap script ... okmelakukan inisialisasi post-bootstrap ... oksyncing data ke disk ... okSuccess. Anda sekarang dapat memulai server database menggunakan:pg_ctlcluster 12 main startVer Cluster Status Port Pemilik Direktori data File log12 main 5432 down postgres /var/lib/postgresql/12/main /var/log/postgresql/postgresql-12-main.logupdate- alternatif:menggunakan /usr/share/postgresql/12/man/man1/postmaster.1.gz untuk menyediakan /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) dalam mode otomatis Memproses pemicu untuk systemd ( 246.6-1ubuntu1) ...Memproses pemicu untuk man-db (2.9.3-2) ...Memproses pemicu untuk libc-bin (2.32-0ubuntu3) ...root@PostgreSQL:~# 

Langkah 5:Periksa status layanan PostgreSQL

systemctl status postgresql.service 

Contoh Keluaran:

root@PostgreSQL:~# systemctl status postgresql.service ● postgresql.service - PostgreSQL RDBMSLoaded:dimuat (/lib/systemd/system/postgresql.service; diaktifkan; vendor p>
Aktif:aktif (keluar) sejak Minggu 2021- 05-16 09:17:56 EDT; 1 menit 56 detik yang laluPID Utama:10932 (kode=keluar, status=0/SUCCESS)Tugas:0 (batas:4648)Memori:0BCGroup:/system.slice/postgresql.service16 Mei 09:17:56 PostgreSQL systemd[1]:Memulai PostgreSQL RDBMS...16 Mei 09:17:56 PostgreSQL systemd[1]:Selesai PostgreSQL RDBMS.root@PostgreSQL:~#

Langkah 6:Hubungkan PostgreSQL 

sudo su - postgres

Langkah 7:Setel ulang kata sandi PostgreSQL

Disarankan untuk mengatur ulang kata sandi menjadi kata sandi yang kuat

psql -c "ubah postgres pengguna dengan kata sandi 'StrongAdminP@ssw0rd'"

Contoh Keluaran:

root@PostgreSQL:~# sudo su - postgrespostgres@PostgreSQL:~$ postgres@PostgreSQL:~$ psql -c "ubah postgres pengguna dengan kata sandi 'StrongAdminP@ssw0rd'"ALTER ROLEpostgres@PostgreSQL:~$

Langkah 8:Buat Database PostgreSQL 

$ psql$ BUAT DATABASE firsttestdb;$ BUAT PENGGUNA testuser1 DENGAN PASSWORD TERENKRIPSI 'MyDBP@ss0rd';$ HIBAH SEMUA HAK ISTIMEWA PADA DATABASE firsttestdb ke testuser1;

Mencantumkan database PostgreSQL :

$\l

Cara Menghubungkan ke database PostgreSQL:

 \c firsttestdb

Contoh Keluaran:

postgres=# \c firsttestdbAnda sekarang terhubung ke database "firsttestdb" sebagai pengguna "postgres".firsttestdb=#

Sekarang, kita akan melihat cara mengizinkan koneksi jarak jauh ke PostgreSQL DB.

Langkah 9:Izinkan koneksi jarak jauh ke Database PostgreSQL

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

Batalkan komentar pada baris “listen_addresses =‘*’

Simpan file dan mulai ulang layanan PostgreSQL

sudo systemctl restart postgresql 

Langkah 10:Periksa alamat Mendengarkan

 netstat  -tunelp | grep 5432

Contoh Keluaran:

root@PostgreSQL:~# netstat -antple | grep 5432tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 135 253939 13850/postgres tcp6 0 0 :::5432 :::* LISTEN 135 253940 13850/postgres root@PostgreSQL:~#

Di akhir artikel, kita telah melihat cara Menginstal PostgreSQL 12 di Ubuntu 20.04/18.04/16.04.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kembalikan nilai kolom pra-PERBARUI menggunakan SQL saja

  2. PostgreSql 'PDOException' dengan pesan 'tidak dapat menemukan driver'

  3. Opsi Multitenancy untuk PostgreSQL

  4. Bagaimana Log() Bekerja di PostgreSQL

  5. Kesalahan saat memetakan array postgres di Spring JPA