Τι είναι μια συμβολοσειρά σύνδεσης PostgreSQL;

Μια συμβολοσειρά σύνδεσης PostgreSQL είναι ένα μορφοποιημένο κείμενο που συγκεντρώνει όλες τις πληροφορίες που απαιτούνται για σύνδεση σε μια βάση δεδομένων — όνομα κεντρικού υπολογιστή, θύρα, διαπιστευτήρια, όνομα βάσης δεδομένων και ρυθμίσεις SSL — σε μια μόνο τιμή. Οι εφαρμογές, τα ORMs και τα εργαλεία γραμμής εντολών χρησιμοποιούν συμβολοσειρές σύνδεσης για να δημιουργήσουν περιόδους λειτουργίας βάσης δεδομένων χωρίς να απαιτείται η ξεχωριστή διαμόρφωση κάθε παραμέτρου. Υπάρχουν δύο κοινές μορφές: η μορφή URI (postgresql://user:password@host:port/dbname) και η μορφή κλειδιού=τιμής libpq (host=localhost port=5432 dbname=mydb). Και οι δύο μορφές υποστηρίζονται σε σχεδόν όλες τις βιβλιοθήκες πελάτη PostgreSQL.

Περιγραφή εργαλείου

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

Παραδείγματα

Είσοδος:

Πεδίο Τιμή
Κεντρικός υπολογιστής db.example.com
Θύρα 5432
Όνομα χρήστη alice
Κωδικός πρόσβασης s3cr3t
Βάση δεδομένων production
Λειτουργία SSL require

URL σύνδεσης:

postgresql://alice:s3cr3t@db.example.com/production?sslmode=require

Εντολή psql:

psql "postgresql://alice:s3cr3t@db.example.com/production?sslmode=require"

Συμβολοσειρά κλειδιού=τιμής libpq:

host=db.example.com port=5432 dbname=production user=alice password=s3cr3t sslmode=require

Χαρακτηριστικά

  • Τρεις μορφές εξόδου: Δημιουργεί ένα URL σύνδεσης, μια εντολή shell psql και μια συμβολοσειρά κλειδιού=τιμής libpq ταυτόχρονα
  • Επιλογέας λειτουργίας SSL: Υποστηρίζει και τις έξι λειτουργίες SSL του PostgreSQL — disable, allow, prefer, require, verify-ca και verify-full
  • Έξυπνες προεπιλογές: Παραλείπει τις προεπιλεγμένες τιμές (θύρα 5432, sslmode=prefer) για να διατηρήσει την έξοδο καθαρή και ελάχιστη
  • Κωδικοποίηση URL: Αυτόματη κωδικοποίηση ποσοστού ονομάτων χρήστη, κωδικών πρόσβασης και ονομάτων βάσεων δεδομένων που περιέχουν ειδικούς χαρακτήρες
  • Επικύρωση θύρας: Επικυρώνει ότι η θύρα είναι αριθμός μεταξύ 1 και 65535

Περιπτώσεις χρήσης

  • Διαμόρφωση εφαρμογής: Δημιουργήστε μια μεταβλητή περιβάλλοντος DATABASE_URL για πλαίσια όπως Django, Rails ή οποιαδήποτε εφαρμογή που χρησιμοποιεί συμβολοσειρά σύνδεσης
  • Γρήγορη πρόσβαση CLI: Δημιουργήστε μια έτοιμη εντολή psql για σύνδεση σε απομακρυσμένη βάση δεδομένων χωρίς να χρειάζεται να απομνημονεύσετε τη σύνταξη URI
  • Αποσφαλμάτωση σύνδεσης: Δημιουργήστε μια συμβολοσειρά libpq για δοκιμή συνδέσεων με οδηγούς χαμηλού επιπέδου ή εργαλεία που δεν δέχονται μορφή URI

Λειτουργίες SSL εξηγημένες

Λειτουργία Περιγραφή
disable Χωρίς SSL. Η σύνδεση είναι μη κρυπτογραφημένη.
allow Χρησιμοποιεί SSL εάν το απαιτεί ο διακομιστής. διαφορετικά συνδέεται χωρίς SSL.
prefer Δοκιμάζει πρώτα το SSL. επιστρέφει σε μη κρυπτογραφημένο (προεπιλογή).
require Απαιτεί SSL αλλά δεν επαληθεύει το πιστοποιητικό διακομιστή.
verify-ca Απαιτεί SSL και επαληθεύει ότι το πιστοποιητικό διακομιστή υπογράφεται από μια αξιόπιστη CA.
verify-full Απαιτεί SSL, επαληθεύει την CA και ελέγχει επίσης ότι το όνομα κεντρικού υπολογιστή ταιριάζει με το πιστοποιητικό.