ذكري المظهر

كيفية تثبيت postgresql على ديبيان 10

How to Install and configuration PostgreSQL on Ubuntu Linux

How to Install and configuration PostgreSQL on Ubuntu Linux

جدول المحتويات:

Anonim

يعد PostgreSQL ، المعروف غالبًا باسم Postgres ، نظامًا لإدارة قواعد البيانات العلائقية للأغراض العامة مفتوح المصدر. إنه يحتوي على العديد من الميزات القوية مثل النسخ الاحتياطي عبر الإنترنت ، والاسترداد في الوقت ، والمعاملات المتداخلة ، واستعلام SQL و JSON ، والتحكم في التزامن متعدد الإصدارات (MVCC) ، والنسخ المتماثل غير المتزامن ، والمزيد.

يرشدك هذا البرنامج التعليمي إلى خطوات تثبيت خادم قاعدة بيانات PostgreSQL على دبيان 10. سنستكشف أيضًا أساسيات إدارة قاعدة البيانات الأساسية.

تثبيت بوستجرس

في وقت كتابة هذا المقال ، كان أحدث إصدار من PostgreSQL المتوفر من مستودعات دبيان الافتراضية هو PostgreSQL version 11.5.

لتثبيت PostgreSQL على خادم Debian الخاص بك ، قم بتنفيذ الخطوات التالية كجذر أو مستخدم له امتيازات sudo:

  1. ابدأ بتحديث فهرس حزمة APT:

    sudo apt update

    تثبيت خادم PostgreSQL وحزمة المساهمة التي توفر ميزات إضافية لقاعدة بيانات PostgreSQL:

    sudo apt install postgresql postgresql-contrib

    بمجرد اكتمال التثبيت ، ستبدأ خدمة PostgreSQL. للتحقق من التثبيت ، استخدم أداة psql لطباعة إصدار الخادم:

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

    يجب أن يبدو الإخراج كما يلي:

    PostgreSQL 11.5 (Debian 11.5-1+deb10u1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit

psql هو برنامج طرفي تفاعلي يسمح لك بالتفاعل مع خادم PostgreSQL.

أدوار PostgreSQL وطرق المصادقة

يعالج PostgreSQL أذونات الوصول إلى قاعدة البيانات باستخدام مفهوم الأدوار. اعتمادًا على كيفية إعداد الدور ، يمكن أن يمثل مستخدم قاعدة بيانات أو مجموعة من مستخدمي قاعدة البيانات.

PostgreSQL يدعم العديد من أساليب المصادقة. الأساليب الأكثر استخدامًا هي:

  • الثقة - يمكن الاتصال بالدور بدون كلمة مرور ، طالما تم استيفاء المعايير المحددة في pg_hba.conf.Password - يمكن الاتصال بالدور من خلال توفير كلمة مرور. يمكن تخزين كلمات المرور على أنها scram-sha-256 md5 password (نص واضح) معرف - معتمد فقط لاتصالات TCP / IP. إنه يعمل عن طريق الحصول على اسم مستخدم نظام التشغيل الخاص بالعميل ، مع تعيين اسم مستخدم اختياري. نظير - مماثل لـ Ident ، لكنه معتمد فقط على الاتصالات المحلية.

يتم تعريف مصادقة عميل PostgreSQL في ملف التكوين المسمى pg_hba.conf . بالنسبة إلى الاتصالات المحلية ، يتم تعيين PostgreSQL لاستخدام طريقة مصادقة النظراء.

يتم إنشاء المستخدم "postgres" تلقائيًا عند تثبيت PostgreSQL. هذا المستخدم هو المستخدم الخارق لمثيل PostgreSQL ، وهو مكافئ للمستخدم الجذر MySQL.

لتسجيل الدخول إلى خادم PostgreSQL كـ "postgres" ، قم بالتبديل إلى postgres للمستخدم والوصول إلى موجه PostgreSQL باستخدام الأداة المساعدة psql :

sudo su - postgres psql

من هنا يمكنك التفاعل مع خادم PostgreSQL. للخروج من نوع قذيفة PostgreSQL:

\q

يمكنك استخدام الأمر sudo للوصول إلى موجه PostgreSQL دون تبديل المستخدمين:

sudo -u postgres psql

عادةً ما يتم استخدام مستخدم postgres فقط من المضيف المحلي.

إنشاء دور بوستجرس وقاعدة البيانات

يسمح لك الأمر createuser بإنشاء أدوار جديدة من سطر الأوامر. فقط CREATEROLE والأدوار الذين CREATEROLE امتياز CREATEROLE يمكنهم إنشاء أدوار جديدة.

في المثال التالي ، kylo دورًا جديدًا باسم kylo ، وقاعدة بيانات باسم kylodb ، kylodb امتيازات في قاعدة البيانات لهذا الدور.

  1. أولاً ، قم بإنشاء الدور عن طريق إصدار الأمر التالي:

    sudo su - postgres -c "createuser kylo"

    بعد ذلك ، قم بإنشاء قاعدة البيانات باستخدام الأمر createdb :

    sudo su - postgres -c "createdb kylodb"

    لمنح أذونات للمستخدم في قاعدة البيانات ، اتصل بقشرة PostgreSQL:

    sudo -u postgres psql

    قم بتشغيل الاستعلام التالي:

    grant all privileges on database kylodb to kylo;

تمكين الوصول عن بعد إلى خادم PostgreSQL

بشكل افتراضي ، يستمع خادم PostgreSQL فقط على الواجهة المحلية 127.0.0.1 .

افتح ملف التكوين postgresql.conf وأضف listen_addresses = '*' في قسم CONNECTIONS AND AUTHENTICATION . هذا توجيه الخادم للاستماع على جميع واجهات الشبكة.

sudo nano /etc/postgresql/11/main/postgresql.conf /etc/postgresql/11/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/11/main/pg_hba.conf

# TYPE DATABASE USER ADDRESS METHOD # The user jane will be able to access all databases from all locations using an 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 an 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 وتكوينه على Debian 10. لمزيد من المعلومات حول هذا الموضوع ، راجع وثائق PostgreSQL.

ديبيان postgresql قاعدة البيانات