FREE

PostgreSQL Unit 1 - PostgreSQL Installation and Database Setup

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

Για αρχή, θα πρέπει να μεταβούμε στο https://www.postgresql.org/download/windows/ και να πατήσουμε επάνω στο “Download the installer” link. Η διαδικασία αυτή είναι μόνο για εγκατάσταση σε Windows λειτουργικό.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Αμέσως μετά θα μεταφερθούμε στην εξής download σελίδα:

https://www.enterprisedb.com/downloads/postgres-postgresql-downloads

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Αν το λειτουργικό σας σύστημα υποστηρίζει 64bit εφαρμογές, τότε επιλέξτε το Windows x86-64 για την έκδοση 12.3 και περιμένετε να ολοκληρωθεί το download. Το αρχείο που θα κατέβει είναι γύρω στα 195MB.

Κάνουμε double-click επάνω στο αρχείο που κατεβάσαμε για να ξεκινήσουμε την διαδικασία της εγκατάστασης. Πατάμε Next στο παράθυρο Setup- PostgreSQL που θα εμφανιστεί.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Στο παράθυρο Installation Directory μπορείτε να δεχτείτε το προτεινόμενο directory για να την εγκατάσταση της PostgreSQL ή να το αλλάξετε. Στο δικό μας παράδειγμα, απλά θα δεχτούμε το προτεινόμενο installation directory και θα πατήσουμε Next.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Αμέσως μετά θα εμφανιστεί το παράθυρο Select Components μέσα από το οποίο επιλέγουμε αν θέλουμε να εγκαταστήσουμε την PostgreSQL με όλα τα συνοδευτικά προγράμματα ή όχι. Θα τα χρησιμοποιήσουμε σχεδόν όλα αυτά τα components κατά την ανάπτυξη των ενοτήτων οπότε τα αφήνουμε όλα τσεκαρισμένα και πατάμε Next.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Μια από τις τελευταίες επιλογές που πρέπει να δεχτούμε κατά την εγκατάσταση (ή να την αλλάξουμε) είναι σε ποιο directory θα αποθηκεύονται τα δεδομένα των βάσεων που θα δημιουργήσουμε. Για τα παραδείγματα μας, μπορούμε να δεχτούμε και αυτή την πρόταση. Σε παραγωγικό περιβάλλον όμως καλό είναι τα αρχεία τα οποία περιέχουν τα δεδομένα μας να βρίσκονται σε διαφορετικό drive όχι μόνο για να αυξήσουμε την απόδοση της βάσης αλλά και για να είναι ανώδυνη η επαναφορά των δεδομένων σε περίπτωση που τα χάσουμε. Θα μπούμε σε περισσότερες λεπτομέρειες σε μελλοντικές ενότητες. Για τώρα απλά δεχόμαστε το directory που μας προτείνει η PostgreSQL στο παράθυρο Data Directory και πατάμε Next.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Στο παράθυρο Password πρέπει να δηλώσουμε ένα password για τον super χρήστη που έχει το όνομα postgres. Με αυτό το username και το password θα μπορείτε να ενωθείτε στην PostgreSQL μέσα από γραφικές κονσόλες διαχείρισης βάσεων (όπως η pgAdmin 4) ή μέσα από κώδικα όπως java ή python. Επειδή αυτός ο χρήστης έχει όλα τα δικαιώματα επάνω στην βάση, συνήθως σε παραγωγικό περιβάλλον δημιουργούμε και έναν δεύτερο χρήστη με λιγότερα δικαιώματα. Δεν είναι ανάγκη να δηλώσετε κάποιο πολύπλοκο password αν και εφόσον θα χρησιμοποιήσετε την βάση για κώδικα που αναπτύσσετε στον προσωπικό σας υπολογιστή. Ας δώσουμε λοιπόν τον password 123456 για να μπορούμε να το θυμόμαστε όποια στιγμή και αν το χρειαστούμε. Δηλώνουμε λοιπόν το password που αποφασίσαμε και στα δύο πεδία και πατάμε Next.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Στο παράθυρο Port πρέπει να δεχτούμε ή το προτεινόμενο port ή να δηλώσουμε ένα καινούργιο που στα σίγουρα δεν χρησιμοποιείται από κάποια εφαρμογή. Συνήθως αφήνουμε τον αριθμό αυτό ως έχει αφού, εκτός ότι είναι ο γνωστός αριθμός port για να επικοινωνήσουμε με την PostgreSQL , δεν υπάρχει καμία άλλη γνωστή εφαρμογή που να χρησιμοποιεί αυτό το port. Δεχόμαστε λοιπόν το 5432 και πατάμε Next.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Στο παράθυρο Advanced Options, αν και εφόσον θα χρησιμοποιήσετε διαφορετική γλώσσα από τα αγγλικά, μπορείτε να την επιλέξετε. Τι σημαίνει αυτό? Σημαίνει ότι με βάση το Locale που θα επιλέξουμε, θα γνωρίζει και η βάση τους αντίστοιχους κανόνες ταξινόμησης και μορφοποίησης αριθμών, χαρακτήρων γραμμάτων, κτλ. Τα δικά μας δεδομένα (αυτά που θα εισάγουμε λίγο παρακάτω) είναι όλα στα αγγλικά οπότε το default locale μας καλύπτει απόλυτα. Πατήστε Next.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Είμαστε έτοιμοι να ξεκινήσουμε την εγκατάσταση. Το παράθυρο Pre Installation Summary μας δείχνει όλες τις επιλογές μας από τα προηγούμενα παράθυρα και με βάση αυτές τις επιλογές θα προχωρήσει και η εγκατάσταση. Πατήστε Next.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Το Ready to Install παράθυρο είναι μια τελευταία επιβεβαίωση ότι συμφωνείτε με όλες τις επιλογές σας. Απλά πατήστε Next και η εγκατάσταση θα ξεκινήσει.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Περιμένετε λίγα λεπτά μέχρι να ολοκληρωθεί η διαδικασία.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Αφού ολοκληρωθεί η εγκατάσταση, θα μας ενημερώσει ένα τελευταίο παράθυρο όπου απλά εκεί πατάμε Finish. Μπορείτε να δεχτείτε την προεπιλεγμένη επιλογή του Stack Builder. Πατήστε Finish.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Τώρα θα ξεκινήσει ένας σύντομος δεύτερος wizard που αναφέρεται σε επιπλέον έξτρα εργαλεία που ίσως επιθυμούμε να προσθέσουμε στην εγκατάσταση μας. Αυτός ο wizard εμφανίζεται επειδή επιλέξαμε ότι επιθυμούμε και τον Stack Builder. Αν δεν το είχαμε επιλέξει, δεν θα ξεκινούσε αυτός ο wizard. Ήθελα όμως να δείτε και τις υπόλοιπες επιλογές έτσι ώστε να μην έχετε καμία απορία και να έχετε μια ολοκληρωμένη εικόνα της εγκατάστασης.

Σε αυτό το πρώτο παράθυρο “Welcome to StackBuilder” επιλέξτε την εγκατάσταση της PostgreSQL που μόλις πραγματοποιήσατε και πατήστε Next.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Το επόμενο παράθυρο είναι το πιο ενδιαφέρον. Μας παρουσιάζει μια λίστα με επιπλέον utilities, drivers, κτλ που ίσως επιθυμούμε να εγκαταστήσουμε τοπικά στον υπολογιστή μας. Για παράδειγμα αν πατήσετε στο Database Drivers μπορείτε να δείτε την λίστα με τους έξτρα drivers που μπορεί να κατεβάσει για εσάς ο Stack Builder. Αυτό είναι ένα χρήσιμο εργαλείο γιατί ανάλογα με την εφαρμογή που θα χρησιμοποιήσει την PostgreSQL θα μπορείτε να επιλέξετε και τον κατάλληλο driver με βάση την γλώσσα προγραμματισμού που χρησιμοποιήθηκε για την δημιουργία της εφαρμογής. Γενικότερα δεν θα χρειαστούμε κανένα από αυτά τα εργαλεία για τώρα. Όμως για να προχωρήσει ο Wizard θα χρειαστεί να επιλέξουμε έστω ένα εργαλείο. Για λόγους ευκολίας, επιλέξτε το pgJDBC driver και πατήστε Next.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Το επόμενο παράθυρο απλά επιβεβαιώνουμε ότι θέλουμε να κατεβάσουμε τον java driver για την PostgreSQL. Επιλέξτε το download directory και πατήστε Next.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Όταν κατεβούν τα εργαλεία που έχουμε αποφασίσει τοπικά στον υπολογιστή μας, μπορούμε να πατήσουμε Next και να αφήσουμε το πρόγραμμα να μας τα εγκαταστήσει, ή να επιλέξουμε την επιλογή Skip Installation και να παρακάμψουμε την εγκατάσταση. Στο δικό μας παράδειγμα, ας αφήσουμε το Stack Builder να κάνει την εγκατάσταση (μην επιλέξετε το Skip Installation) έτσι ώστε να έχετε εικόνα το τι συμβαίνει στα επόμενα βήματα.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Ξεκινάει λοιπόν τώρα ο Wizard για να εγκαταστήσει το pgJDBC. Απλά πατήστε Next.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Δεχτείτε το Installation Directory που λογικά θα συμφωνεί με εκείνο που είχατε επιλέξει κατά την εγκατάσταση της PostgreSQL. Πατήστε Next.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Δεν υπάρχουν πολλές επιλογές όταν εγκαθιστούμε έναν driver. Οπότε και σε αυτό το παράθυρο, είναι απλά ενημερωτικό, πατήστε Next.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Πατήστε Finish στο παράθυρο που μας ενημερώνει ότι το pgJDBC εγκαταστάθηκε με επιτυχία.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Πατήστε Finish και στο Stack Builder.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Φυσικά, αν οποιαδήποτε στιγμή χρειαστείτε να εγκαταστήσετε κάποιο ακόμα utility, μπορείτε ανά πάσα στιγμή να τρέξετε πάλι το Stack Builder.

Η PostgreSQL έχει εγκατασταθεί αλλά η PostgreSQL δεν είναι βάση δεδομένων, αλλά πρόγραμμα διαχείρισης βάσεων. Οπότε αυτό που πρέπει να κάνουμε σαν επόμενο βήμα είναι να δημιουργήσουμε μια βάση. Μπορούμε να το επιτύχουμε αυτό με δύο τρόπους: (α) με command εντολές από το terminal ή (β) με γραφικό τρόπο μέσα από το pgAdmin 4. Ας ακολουθήσουμε τον δεύτερο τρόπο.

Το pgAdmin 4 είναι μια κονσόλα διαχείρισης των βάσεων της PostgreSQL. Βασικά κάνει πολλά περισσότερα αλλά αυτή την στιγμή ενδιαφερόμαστε για το πως θα δημιουργήσουμε μια βάση. Ας ξεκινήσουμε το pgAdmin 4.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Αφού γράψουμε το password που είχαμε δηλώσει κατά την εγκατάσταση της PostgreSQL (123456), θα δούμε το εξής περιβάλλον:

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Η βάση postgres έχει δημιουργηθεί από την PostgreSQL για να έχουμε μια βάση να δημιουργήσουμε τους πίνακες μας και να εισάγουμε τα δεδομένα μας. Το όνομα προέρχεται από τον superuser postgres. Εμείς θα δημιουργήσουμε μια καινούργια βάση κάνοντας δεξί κλικ επάνω στο εικονίδιο databases και επιλέγοντας create → database.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Το όνομα της βάσης θα είναι Northwind. Αφού το γράψατε πατήστε Save.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Τώρα που έχουμε την βάση θέλουμε να δημιουργήσουμε πίνακες και να εισάγουμε δεδομένα. Για αυτό τον σκοπό θα χρησιμοποιήσουμε μια βάση που είχε δημιουργήσει παλαιότερα η Microsoft για εκπαιδευτικούς σκοπούς και την είχε ονομάσει Northwind. Για να μεταφέρουμε αυτή την βάση σε postgreSQL περιβάλλον, θα χρειαστεί να πάμε στο gituhub όπου μια ομάδα από προγραμματιστές έφτιαξαν το SQL script να είναι συμβατό με την postgreSQL. Αυτό που πρέπει να κάνουμε εμείς είναι να κάνουμε copy όλο το northwind.sql script ή μπορείτε να το κατεβάσετε και να το κάνετε μετά copy.

https://github.com/pthom/northwind_psql

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Αφού λοιπόν έχουμε κάνει copy το northwind.sql ερχόμαστε πίσω στο pgAdmin 4 περιβάλλον κάνουμε δεξί κλικ επάνω στην βάση Northwind και επιλέγουμε Query Tool.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Μέσα στον Query Editor κάντε paste το Northwind.sql script. Πατήστε το execute εικονίδιο.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Αν τώρα ανοίξετε το Tables θα δείτε 14 πίνακες με δεδομένα.

Δωρεάν Μαθήματα και Σεμινάρια SQL και PostgreSQL

Θα μπορούσατε αντί να κάνετε copy-paste να κατεβάσετε το northwind.sql αρχείο από το github και μετά να το ανοίξετε μέσα από το pgAdmin 4. Ίσως αυτό θα ήταν ευκολότερο. Όμως με το copy-paste είχατε την ευκαιρία να ρίξετε μια γρήγορη ματιά στο SQL και να δείτε τα δεδομένα που περάσανε στους πίνακες.

Το τι ακριβώς δεδομένα αντιπροσωπεύει η Northwind θα το δούμε στην επόμενη ενότητα όταν ξεκινήσουμε να μιλάμε για απλά select statements. Για τώρα απλά κρατάμε το γεγονός ότι έχουμε μια βάση με το όνομα Northwind που περιέχει πίνακες με δεδομένα.