Android

Πώς να εγκαταστήσετε το postgresql στο ubuntu 18.04

Howto install Ambari on Ubuntu

Howto install Ambari on Ubuntu

Πίνακας περιεχομένων:

Anonim

Το PostgreSQL ή το Postgres είναι ένα σύστημα γενικής χρήσης αντικειμενοστραφής βάση δεδομένων ανοιχτού κώδικα. Η PostgreSQL διαθέτει πολλές προηγμένες λειτουργίες που σας επιτρέπουν να δημιουργείτε σύνθετες εφαρμογές ιστού.

Σε αυτό το σεμινάριο, θα σας δείξουμε πώς να εγκαταστήσετε το PostgreSQL στο Ubuntu 18.04 και να διερευνήσετε τα βασικά στοιχεία της βασικής διαχείρισης βάσεων δεδομένων.

Προϋποθέσεις

Πριν συνεχίσετε με αυτό το σεμινάριο, βεβαιωθείτε ότι έχετε συνδεθεί ως χρήστης με δικαιώματα sudo.

Εγκαταστήστε PostgreSQL στο Ubuntu

Κατά τη σύνταξη αυτού του άρθρου, η πιο πρόσφατη έκδοση του PostgreSQL που είναι διαθέσιμη από τα επίσημα αποθετήρια του Ubuntu είναι η έκδοση PostgreSQL 10.4.

Για να εγκαταστήσετε την PostgreSQL στο διακομιστή Ubuntu ακολουθήστε τα παρακάτω βήματα:

  1. Εγκατάσταση PostgreSQL

    Ανανεώστε το τοπικό ευρετήριο πακέτων και εγκαταστήστε το διακομιστή PostgreSQL μαζί με το πακέτο συμβολαίου PostgreSQL που παρέχει αρκετές πρόσθετες λειτουργίες για τη βάση δεδομένων PostgreSQL:

    sudo apt update sudo apt install postgresql postgresql-contrib

    Επαλήθευση της εγκατάστασης του PostgreSQL

    Μόλις ολοκληρωθεί η εγκατάσταση, η υπηρεσία PostgreSQL θα ξεκινήσει αυτόματα.

    Για να επαληθεύσουμε την εγκατάσταση, θα προσπαθήσουμε να συνδεθούμε με τον διακομιστή βάσης δεδομένων PostgreSQL χρησιμοποιώντας το psql και να εκτυπώσουμε την έκδοση του διακομιστή:

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

Το psql είναι ένα διαδραστικό βοηθητικό πρόγραμμα γραμμής εντολών που σας επιτρέπει να αλληλεπιδράσετε με το διακομιστή PostgreSQL.

Ρόλοι PostgreSQL και μέθοδοι ελέγχου ταυτότητας

Τα δικαιώματα πρόσβασης βάσεων δεδομένων στο PostgreSQL αντιμετωπίζονται με την έννοια των ρόλων. Ένας ρόλος μπορεί να αντιπροσωπεύει έναν χρήστη της βάσης δεδομένων ή μια ομάδα χρηστών βάσης δεδομένων.

Η PostgreSQL υποστηρίζει πολλαπλές μεθόδους ελέγχου ταυτότητας. Τα πιο συχνά χρησιμοποιούμενα είναι:

  • Εμπιστοσύνη - Με αυτήν τη μέθοδο, ο ρόλος μπορεί να συνδεθεί χωρίς κωδικό πρόσβασης, αρκεί να πληρούνται τα κριτήρια που ορίζονται στο pg_hba.conf.Password - Ένας ρόλος μπορεί να συνδεθεί παρέχοντας έναν κωδικό πρόσβασης. Οι κωδικοί πρόσβασης μπορούν να αποθηκευτούν ως scram-sha-256 md5 και τον password (σαφές κείμενο) Ident - Αυτή η μέθοδος υποστηρίζεται μόνο σε συνδέσεις TCP / IP. Λειτουργεί με τη λήψη του ονόματος χρήστη του λειτουργικού συστήματος του πελάτη, με προαιρετικό mapping.Peer - το ίδιο με το Ident, αλλά υποστηρίζεται μόνο σε τοπικές συνδέσεις.

Ο έλεγχος ταυτότητας πελάτη PostgreSQL ορίζεται στο αρχείο διαμόρφωσης που ονομάζεται pg_hba.conf . Από προεπιλογή για τοπικές συνδέσεις, η PostgreSQL έχει ρυθμιστεί να χρησιμοποιεί τη μέθοδο επαλήθευσης ταυτότητας από ομότιμους χρήστες.

Ο χρήστης postgres δημιουργείται αυτόματα όταν εγκαθιστάτε PostgreSQL. Αυτός ο χρήστης είναι ο υπερ-χρήστης για την περίπτωση PostgreSQL και είναι ισοδύναμος με τον χρήστη της ρίζας MySQL.

Για να συνδεθείτε στο διακομιστή PostgreSQL ως χρήστης postsgres πρώτα πρέπει να μεταβείτε στο postgres χρήστη και στη συνέχεια να έχετε πρόσβαση σε μια προτροπή PostgreSQL χρησιμοποιώντας το βοηθητικό πρόγραμμα psql :

sudo su - postgres psql

Από εδώ μπορείτε να αλληλεπιδράσετε με το PostgreSQL. Για να εξέλθετε από τον τύπο κελύφους PostgreSQL:

\q

Μπορείτε επίσης να έχετε πρόσβαση στην εντολή PostgreSQL χωρίς να αλλάξετε τους χρήστες χρησιμοποιώντας την εντολή sudo :

sudo -u postgres psql

Ο χρήστης postgres χρησιμοποιείται συνήθως μόνο από τον τοπικό κεντρικό υπολογιστή και συνιστάται να μην ορίσετε τον κωδικό πρόσβασης για αυτόν τον χρήστη.

Δημιουργία ρόλου και βάσης δεδομένων PostgreSQL

Μπορείτε να δημιουργήσετε νέους ρόλους από τη γραμμή εντολών χρησιμοποιώντας την εντολή createuser . Μόνο υπερ- CREATEROLE και ρόλοι με προνόμιο CREATEROLE μπορούν να δημιουργήσουν νέους ρόλους.

Στο παρακάτω παράδειγμα, θα δημιουργήσουμε ένα νέο ρόλο με όνομα john μια βάση δεδομένων που ονομάζεται johndb και θα παραχωρήσουμε προνόμια στη βάση δεδομένων.

  1. Δημιουργήστε έναν νέο ρόλο PostgreSQL

    Η ακόλουθη εντολή θα δημιουργήσει ένα νέο ρόλο που ονομάζεται john:

    sudo su - postgres -c "createuser john"

    Δημιουργήστε μια νέα βάση δεδομένων PostgreSQL

    Δημιουργήστε μια νέα βάση δεδομένων που ονομάζεται johndb χρησιμοποιώντας την εντολή createdb:

    sudo su - postgres -c "createdb johndb"

    Προνόμια χορήγησης

    Για να παραχωρήσετε δικαιώματα στον χρήστη john στη βάση δεδομένων που δημιουργήσαμε στο προηγούμενο βήμα, συνδεθείτε στο κέλυφος PostgreSQL:

    sudo -u postgres psql

    και εκτελέστε το ακόλουθο ερώτημα:

    grant all privileges on database johndb to john;

Ενεργοποιήστε την απομακρυσμένη πρόσβαση στο διακομιστή PostgreSQL

Από προεπιλογή, ο διακομιστής PostgreSQL ακούει μόνο στην τοπική διεπαφή 127.0.0.1 . Για να ενεργοποιήσετε την απομακρυσμένη πρόσβαση στο διακομιστή PostgreSQL, ανοίξτε το αρχείο ρυθμίσεων postgresql.conf και προσθέστε το listen_addresses = '*' στην ενότητα CONNECTIONS AND AUTHENTICATION .

sudo vim /etc/postgresql/10/main/postgresql.conf /etc/postgresql/10/main/postgresql.conf

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

αποθηκεύστε το αρχείο και επανεκκινήστε την υπηρεσία PostgreSQL με:

sudo service postgresql restart

Επαληθεύστε τις αλλαγές με το βοηθητικό πρόγραμμα ss :

ss -nlt | grep 5432

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

Όπως μπορείτε να δείτε από την έξοδο πάνω από το διακομιστή PostgreSQL ακούει σε όλες τις διεπαφές (0.0.0.0).

Το τελευταίο βήμα είναι να διαμορφώσετε τον διακομιστή ώστε να δέχεται απομακρυσμένες συνδέσεις, επεξεργάζοντας το αρχείο pg_hba.conf .

Ακολουθούν μερικά παραδείγματα που δείχνουν διαφορετικές περιπτώσεις χρήσης:

/etc/postgresql/10/main/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

συμπέρασμα

Έχετε μάθει πώς να εγκαταστήσετε και να διαμορφώσετε PostgreSQL στο διακομιστή Ubuntu 18.04 σας.

Μπορείτε να συμβουλευτείτε την τεκμηρίωση PostgreSQL 10.4 για περισσότερες πληροφορίες σχετικά με αυτό το θέμα.

ubuntu postgresql βάση δεδομένων