एंड्रॉयड

सेंटोस 7 पर पोस्टग्रैस्कल कैसे स्थापित करें

PostgreSQL Tutorial: How to download and install PostgreSQL on Windows 10 [EN]

PostgreSQL Tutorial: How to download and install PostgreSQL on Windows 10 [EN]

विषयसूची:

Anonim

PostgreSQL या Postgres एक खुला स्रोत सामान्य-उद्देश्य ऑब्जेक्ट-रिलेशनल डेटाबेस प्रबंधन प्रणाली है जिसमें कई उन्नत विशेषताएं हैं जो आपको जटिल वेब एप्लिकेशन बनाने की अनुमति देती हैं।

इस ट्यूटोरियल में, हम आपको अपने CentOS 7 मशीन पर PostgreSQL स्थापित करने के दो अलग-अलग तरीके दिखाएंगे। पहला तरीका CentOS रिपॉजिटरी से PostgreSQL v9.2.23 को स्थापित करने के लिए आवश्यक चरणों के माध्यम से चलेगा, जबकि दूसरा आपको दिखाएगा कि कैसे पोस्टग्रेक्यूएल के नवीनतम संस्करण को आधिकारिक PostgreSQL रिपॉजिटरी से इंस्टॉल किया जाए।

यदि आपके एप्लिकेशन को नवीनतम संस्करण की आवश्यकता नहीं है, तो हम पहली विधि का उपयोग करने की सलाह देते हैं और CentOS रिपॉजिटरी से PostgreSQL स्थापित करते हैं।

हम PostgreSQL डेटाबेस प्रशासन के मूल सिद्धांतों का भी पता लगाएंगे।

आवश्यक शर्तें

इस ट्यूटोरियल को जारी रखने से पहले, सुनिश्चित करें कि आप sudo विशेषाधिकार वाले उपयोगकर्ता के रूप में लॉग इन हैं।

CentOS रिपॉजिटरी से PostgreSQL स्थापित करें

इस लेख को लिखने के समय, CentOS रिपॉजिटरी से उपलब्ध PostgreSQL का नवीनतम संस्करण PostgreSQL संस्करण 9.23.3 है।

अपने CentOS सर्वर पर PostgreSQL स्थापित करने के लिए नीचे दिए गए चरणों का पालन करें:

  1. PostgreSQL स्थापित करना

    PostgreSQL contrib पैकेज के साथ PostgreSQL सर्वर को स्थापित करने के लिए जो PostgreSQL डेटाबेस के लिए कई अतिरिक्त सुविधाएँ प्रदान करता है:

    sudo yum install postgresql-server postgresql-contrib

    प्रारंभिक डेटाबेस

    निम्नलिखित कमांड के साथ PostgreSQL डेटाबेस को आरम्भ करें:

    sudo postgresql-setup initdb

    Initializing database… OK

    PostgreSQL शुरू

    PostgreSQL सेवा शुरू करने और इसे बूट पर शुरू करने के लिए सक्षम करने के लिए बस टाइप करें:

    sudo systemctl start postgresql sudo systemctl enable postgresql

    PostgreSQL अधिष्ठापन का सत्यापन

    स्थापना को सत्यापित करने के लिए हम psql टूल का उपयोग करके PostgreSQL डेटाबेस सर्वर से कनेक्ट करने का प्रयास करेंगे और सर्वर संस्करण प्रिंट करेंगे:

    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 एक इंटरैक्टिव कमांड लाइन उपयोगिता है जो हमें PostgreSQL सर्वर के साथ बातचीत करने की अनुमति देता है।

PostgreSQL रिपॉजिटरी से PostgreSQL स्थापित करें

इस लेख को लिखने के समय, आधिकारिक PostgreSQL रिपॉजिटरी से उपलब्ध PostgreSQL का नवीनतम संस्करण PostgreSQL संस्करण 10.4 है। अगले चरण के साथ जारी रखने से पहले आपको PostgreSQL यम रिपॉजिटरी पेज पर जाना चाहिए और जांचना चाहिए कि क्या कोई नया संस्करण उपलब्ध है।

अपने CentOS सर्वर पर नवीनतम PostgreSQL संस्करण को स्थापित करने के लिए नीचे दिए गए चरणों का पालन करें:

  1. PostgreSQL रिपॉजिटरी को सक्षम करना

    PostgreSQL रिपॉजिटरी को सक्षम करने के लिए बस रिपॉजिटरी rpm फाइल इंस्टॉल करें:

    sudo yum install

    PostgreSQL स्थापित करना

    एक बार रिपॉजिटरी को सक्षम करने के बाद PostgreSQL सर्वर और PostgreSQL contrib पैकेजों के साथ स्थापित करें:

    sudo yum install postgresql10-server postgresql10-contrib

    प्रारंभिक डेटाबेस

    PostgreSQL डेटाबेस प्रकार को इनिशियलाइज़ करने के लिए:

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

    Initializing database… OK

    PostgreSQL शुरू

    PostgreSQL सेवा शुरू करने और इसे बूट प्रकार पर शुरू करने के लिए सक्षम करने के लिए:

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

    PostgreSQL अधिष्ठापन का सत्यापन

    स्थापना को सत्यापित करने के लिए हम psql टूल का उपयोग करके PostgreSQL डेटाबेस सर्वर से कनेक्ट करने का प्रयास करेंगे और सर्वर संस्करण प्रिंट करेंगे:

    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)

PostgreSQL भूमिकाएँ और प्रमाणीकरण तरीके

PostgreSQL के भीतर डेटाबेस एक्सेस अनुमतियों को भूमिकाओं की अवधारणा के साथ नियंत्रित किया जाता है। एक भूमिका एक डेटाबेस उपयोगकर्ता या डेटाबेस उपयोगकर्ताओं के एक समूह का प्रतिनिधित्व कर सकती है।

PostgreSQL कई प्रमाणीकरण विधियों का समर्थन करता है। सबसे अधिक उपयोग की जाने वाली विधियाँ हैं:

  • ट्रस्ट - इस पद्धति के साथ, भूमिका पासवर्ड के बिना कनेक्ट हो सकती है, जब तक कि pg_hba.conf में परिभाषित मानदंड pg_hba.conf हैं। पासवर्ड - एक भूमिका पासवर्ड प्रदान करके कनेक्ट कर सकती है। पासवर्ड को scram-sha-256 md5 और password (क्लियर-टेक्स्ट) के रूप में संग्रहीत किया जा सकता है। Indent - यह विधि केवल TCP / IP कनेक्शन पर समर्थित है। यह एक वैकल्पिक उपयोगकर्ता नाम मैपिंग के साथ क्लाइंट के ऑपरेटिंग सिस्टम यूजर नेम को प्राप्त करके काम करता है।पैर - पहचान के रूप में भी, लेकिन यह केवल स्थानीय कनेक्शन पर समर्थित है।

PostgreSQL क्लाइंट प्रमाणीकरण को कॉन्फ़िगरेशन फ़ाइल pg_hba.conf नाम से परिभाषित किया गया है। डिफ़ॉल्ट रूप से, स्थानीय कनेक्शन के लिए, PostgreSQL सहकर्मी प्रमाणीकरण विधि का उपयोग करने के लिए सेट किया गया है।

जब आप PostgreSQL स्थापित करते हैं तो postgres उपयोगकर्ता अपने आप बन जाता है। यह उपयोगकर्ता PostgreSQL इंस्टेंस के लिए सुपरसुअर है और यह MySQL रूट उपयोगकर्ता के बराबर है।

PostgreSQL सर्वर में लॉग इन करने वाले उपयोगकर्ता के रूप में लॉग इन करने के लिए सबसे पहले आपको उपयोगकर्ता पोस्टग्रेज पर स्विच करने की आवश्यकता है और फिर psql उपयोगिता का उपयोग करके PostgreSQL प्रॉम्प्ट पर पहुंचें:

sudo su - postgres psql

यहाँ से आप अपने PostgreSQL उदाहरण के साथ बातचीत कर सकते हैं। PostgreSQL शेल से बाहर निकलने के लिए, टाइप करें:

\q

आप sudo कमांड का उपयोग करके उपयोगकर्ताओं को स्विच किए बिना भी PostgreSQL प्रॉम्प्ट तक पहुँच सकते हैं:

sudo -u postgres psql

postgres उपयोगकर्ता का उपयोग आमतौर पर केवल स्थानीय होस्ट से किया जाता है और यह अनुशंसा की जाती है कि वह इस उपयोगकर्ता के लिए पासवर्ड सेट न करे।

यदि आपने आधिकारिक PostgreSQL रिपॉजिटरी से PostgreSQL संस्करण 10 स्थापित किया है, तो आपको psql बाइनरी जो /usr/pgsql-10/bin/psql लिए पूर्ण पथ का उपयोग करने की आवश्यकता होगी।

PostgreSQL भूमिका और डेटाबेस बनाना

केवल निर्माता और CREATEROLE विशेषाधिकार के साथ नई भूमिकाएं बना सकते हैं।

निम्नलिखित उदाहरण में, हम john नाम का एक नया डेटाबेस johndb जिसका नाम johndb और डेटाबेस पर विशेषाधिकार प्रदान करेगा।

  1. PostgreSQL शेल से कनेक्ट करें

    sudo -u postgres psql

    एक नया PostgreSQL भूमिका बनाएँ

    निम्नलिखित कमांड john नाम से एक नई भूमिका बनाएगी:

    create role john;

    एक नया PostgreSQL डेटाबेस बनाएँ

    Createb कमांड का उपयोग करके जॉन्डब नाम का एक नया डेटाबेस बनाएँ:

    create database johndb;

    विशेषाधिकार प्रदान करें

    पिछले चरण में हमारे द्वारा बनाए गए डेटाबेस पर john उपयोगकर्ता को अनुमति देने के लिए, निम्नलिखित प्रश्न को चलाएं:

    grant all privileges on database johndb to john;

PostgreSQL सर्वर के लिए दूरस्थ पहुँच सक्षम करें

डिफ़ॉल्ट रूप से, PostgreSQL सर्वर केवल स्थानीय इंटरफ़ेस 127.0.0.1 पर सुनता है। अपने PostgreSQL सर्वर के लिए दूरस्थ पहुँच को सक्षम करने के लिए कॉन्फ़िगरेशन फ़ाइल postgresql.conf खोलें और CONNECTIONS AND AUTHENTICATION अनुभाग में listen_addresses = '*' जोड़ें।

sudo vim /var/lib/pgsql/data/postgresql.conf यदि आप PostgreSQL संस्करण 10 चला रहे हैं, तो फ़ाइल का /var/lib/pgsql/10/data/postgresql.conf /var/lib/pgsql/10/data/postgresql.conf//var/lib/pgsql/data/bostgresqq.conf है।

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

फ़ाइल को सहेजें और PostgreSQL सेवा को फिर से शुरू करें:

sudo systemctl restart postgresql यदि आप PostgreSQL संस्करण 10 चला रहे हैं, तो PostgreSQL सेवा को systemctl restart postgresql-10 साथ systemctl restart postgresql-10

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 फ़ाइल को संपादित करके दूरस्थ कनेक्शन स्वीकार करने के लिए सर्वर को कॉन्फ़िगर करना है।

नीचे कुछ उदाहरण विभिन्न उपयोग के मामलों को दिखा रहे हैं:

/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 यदि आप PostgreSQL संस्करण 10 चला रहे हैं, तो फ़ाइल का पूर्ण पथ /var/lib/pgsql/10/data/pg_hba.conf

निष्कर्ष

आपने अपने CentOS 7 सर्वर पर PostgreSQL को स्थापित और कॉन्फ़िगर करना सीख लिया है।

आप इस विषय पर अधिक जानकारी के लिए PostgreSQL प्रलेखन से परामर्श कर सकते हैं।

सेंटोस पोस्टग्रैक्स्ल डेटाबेस