Android

Cara menginstal postgresql pada centos 7

Cara Install Web Server Nginx di Centos 7 5

Cara Install Web Server Nginx di Centos 7 5

Daftar Isi:

Anonim

PostgreSQL atau Postgres adalah sumber terbuka tujuan umum sistem manajemen relasional database dengan banyak fitur canggih yang memungkinkan Anda untuk membuat aplikasi web yang kompleks.

Dalam tutorial ini, kami akan menunjukkan kepada Anda dua metode berbeda tentang cara menginstal PostgreSQL pada mesin CentOS 7 Anda. Metode pertama akan memandu Anda melalui langkah-langkah yang diperlukan untuk menginstal PostgreSQL v9.2.23 dari repositori CentOS sementara yang kedua akan menunjukkan kepada Anda cara menginstal versi terbaru PostgreSQL dari repositori resmi PostgreSQL.

Jika aplikasi Anda tidak memerlukan versi terbaru, kami sarankan untuk menggunakan metode pertama dan instal PostgreSQL dari repositori CentOS.

Kami juga akan mengeksplorasi dasar-dasar administrasi basis data PostgreSQL.

Prasyarat

Sebelum melanjutkan dengan tutorial ini, pastikan Anda masuk sebagai pengguna dengan hak istimewa sudo.

Instal PostgreSQL dari repositori CentOS

Pada saat menulis artikel ini, versi terbaru PostgreSQL yang tersedia dari repositori CentOS adalah PostgreSQL versi 9.2.23.

Untuk menginstal PostgreSQL di server CentOS Anda, ikuti langkah-langkah di bawah ini:

  1. Menginstal PostgreSQL

    Untuk menginstal server PostgreSQL bersama dengan paket contrib PostgreSQL yang menyediakan beberapa fitur tambahan untuk database PostgreSQL cukup ketik:

    sudo yum install postgresql-server postgresql-contrib

    Inisialisasi Database

    Inisialisasi basis data PostgreSQL dengan perintah berikut:

    sudo postgresql-setup initdb

    Initializing database… OK

    Mulai PostgreSQL

    Untuk memulai layanan PostgreSQL dan mengaktifkannya untuk memulai saat boot cukup ketik:

    sudo systemctl start postgresql sudo systemctl enable postgresql

    Memverifikasi Instalasi PostgreSQL

    Untuk memverifikasi instalasi, kami akan mencoba untuk terhubung ke server database PostgreSQL menggunakan alat psql dan mencetak versi server:

    sudo -u postgres psql -c "SELECT version();"

    PostgreSQL 9.2.23 on x86_64-redhat-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-16), 64-bit (1 row)

Psql adalah utilitas baris perintah interaktif yang memungkinkan kita untuk berinteraksi dengan server PostgreSQL.

Instal PostgreSQL dari repositori PostgreSQL

Pada saat menulis artikel ini, versi terbaru PostgreSQL tersedia dari repositori resmi PostgreSQL adalah PostgreSQL versi 10.4. Sebelum melanjutkan dengan langkah berikutnya, Anda harus mengunjungi halaman PostgreSQL Yum Repository dan memeriksa apakah ada versi baru yang tersedia.

Ikuti langkah-langkah di bawah ini untuk menginstal versi PostgreSQL terbaru di server CentOS Anda:

  1. Mengaktifkan repositori PostgreSQL

    Untuk mengaktifkan repositori PostgreSQL cukup instal file rpm repositori:

    sudo yum install

    Menginstal PostgreSQL

    Setelah repositori diaktifkan, instal paket server PostgreSQL dan PostgreSQL dengan:

    sudo yum install postgresql10-server postgresql10-contrib

    Inisialisasi Database

    Untuk menginisialisasi tipe database PostgreSQL:

    sudo /usr/pgsql-10/bin/postgresql-10-setup initdb

    Initializing database… OK

    Mulai PostgreSQL

    Untuk memulai layanan PostgreSQL dan mengaktifkannya untuk memulai saat jenis boot:

    sudo systemctl start postgresql-10 sudo systemctl enable postgresql-10

    Memverifikasi Instalasi PostgreSQL

    Untuk memverifikasi instalasi, kami akan mencoba untuk terhubung ke server database PostgreSQL menggunakan alat psql dan mencetak versi server:

    sudo -u postgres /usr/pgsql-10/bin/psql -c "SELECT version();"

    PostgreSQL 10.4 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-28), 64-bit (1 row)

Peran PostgreSQL dan Metode Otentikasi

Izin akses basis data dalam PostgreSQL ditangani dengan konsep peran. Peran dapat mewakili pengguna basis data atau sekelompok pengguna basis data.

PostgreSQL mendukung banyak metode otentikasi. Metode yang paling umum digunakan adalah:

  • Kepercayaan - Dengan metode ini, peran dapat terhubung tanpa kata sandi, selama kriteria yang ditentukan dalam pg_hba.conf terpenuhi. Kata sandi - Peran dapat terhubung dengan memberikan kata sandi. Kata sandi dapat disimpan sebagai scram-sha-256 md5 dan password (teks yang jelas).Dent - Metode ini hanya didukung pada koneksi TCP / IP. Ia bekerja dengan mendapatkan nama pengguna sistem operasi klien, dengan pemetaan nama pengguna opsional. Lebih mirip dengan Ident tetapi hanya didukung pada koneksi lokal.

Otentikasi klien PostgreSQL didefinisikan dalam file konfigurasi bernama pg_hba.conf . Secara default, untuk koneksi lokal, PostgreSQL diatur untuk menggunakan metode otentikasi rekan.

Pengguna postgres dibuat secara otomatis ketika Anda menginstal PostgreSQL. Pengguna ini adalah superuser untuk instance PostgreSQL dan itu setara dengan pengguna root MySQL.

Untuk masuk ke server PostgreSQL sebagai pengguna postgres terlebih dahulu Anda harus beralih ke postgres pengguna dan kemudian mengakses prompt PostgreSQL menggunakan utilitas psql :

sudo su - postgres psql

Dari sini Anda dapat berinteraksi dengan instance PostgreSQL Anda. Untuk keluar dari shell PostgreSQL, ketik:

\q

Anda juga dapat mengakses prompt PostgreSQL tanpa mengalihkan pengguna menggunakan perintah sudo :

sudo -u postgres psql

Pengguna postgres biasanya hanya digunakan dari host lokal dan disarankan untuk tidak mengatur kata sandi untuk pengguna ini.

Jika Anda menginstal PostgreSQL versi 10 dari repositori PostgreSQL resmi, Anda harus menggunakan path lengkap ke binary psql yang adalah /usr/pgsql-10/bin/psql .

Membuat Peran dan Database PostgreSQL

Hanya pengguna CREATEROLE dan peran dengan hak istimewa CREATEROLE dapat membuat peran baru.

Dalam contoh berikut, kami akan membuat peran baru bernama john database bernama johndb dan memberikan hak istimewa pada database.

  1. Hubungkan ke PostgreSQL Shell

    sudo -u postgres psql

    Buat Peran PostgreSQL baru

    Perintah berikut akan membuat peran baru bernama john:

    create role john;

    Buat Database PostgreSQL baru

    Buat database baru bernama johndb menggunakan perintah Createdb:

    create database johndb;

    Berikan hak istimewa

    Untuk memberikan izin kepada pengguna john pada database yang kami buat pada langkah sebelumnya, jalankan kueri berikut:

    grant all privileges on database johndb to john;

Aktifkan akses jarak jauh ke server PostgreSQL

Secara default, server PostgreSQL hanya mendengarkan pada antarmuka lokal 127.0.0.1 . Untuk mengaktifkan akses jarak jauh ke server PostgreSQL Anda, buka file konfigurasi postgresql.conf dan tambahkan listen_addresses = '*' di bagian CONNECTIONS AND AUTHENTICATION .

sudo vim /var/lib/pgsql/data/postgresql.conf Jika Anda menjalankan PostgreSQL versi 10, jalur ke file adalah /var/lib/pgsql/10/data/postgresql.conf./var/lib/pgsql/data/postgresql.conf

#------------------------------------------------------------------------------ # CONNECTIONS AND AUTHENTICATION #------------------------------------------------------------------------------ # - Connection Settings - listen_addresses = '*' # what IP address(es) to listen on;

simpan file dan mulai ulang layanan PostgreSQL dengan:

sudo systemctl restart postgresql Jika Anda menjalankan PostgreSQL versi 10, restart layanan PostgreSQL dengan systemctl restart postgresql-10 .

Verifikasi perubahan dengan utilitas ss :

ss -nlt | grep 5432

LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* LISTEN 0 128:5432:*

Seperti yang Anda lihat dari output di atas, server PostgreSQL mendengarkan semua antarmuka (0.0.0.0).

Langkah terakhir adalah mengkonfigurasi server untuk menerima koneksi jarak jauh dengan mengedit file pg_hba.conf .

Berikut adalah beberapa contoh yang menunjukkan berbagai kasus penggunaan:

/var/lib/pgsql/data/pg_hba.conf

# TYPE DATABASE USER ADDRESS METHOD # The user jane will be able to access all databases from all locations using a md5 password host all jane 0.0.0.0/0 md5 # The user jane will be able to access only the janedb from all locations using a md5 password host janedb jane 0.0.0.0/0 md5 # The user jane will be able to access all databases from a trusted location (192.168.1.134) without a password host all jane 192.168.1.134 trust Jika Anda menjalankan PostgreSQL versi 10, path lengkap ke file adalah /var/lib/pgsql/10/data/pg_hba.conf .

Kesimpulan

Anda telah belajar cara menginstal dan mengkonfigurasi PostgreSQL di server CentOS 7 Anda.

Anda dapat berkonsultasi dengan Dokumentasi PostgreSQL untuk informasi lebih lanjut tentang topik ini.

centos postgresql basis data