मैं मॉड्यूल आयात कैसे करूं या पोस्टग्रेक्यूएल 9.1+ में एक्सटेंशन स्थापित करूं?


जवाबों:


104

Postgrseql 9.1 एक नए आदेश के लिए प्रदान करता है CREATE EXTENSION। आपको मॉड्यूल स्थापित करने के लिए इसका उपयोग करना चाहिए।

9.1 में दिए गए मॉड्यूल यहां देखे जा सकते हैं। । शामिल हैं,

adminpack , auth_delay , auto_explain , btree_gin , btree_gist
, chkpass , citext , cube , dblink , dict_int
, dict_xsyn , dummy_seclabel , earthdistance , file_fdw , fuzzystrmatch
, hstore , intagg , intarray , isn , lo
, ltree , oid2name , pageinspect , passwordcheck , pg_archivecleanup
, pgbench , pg_buffercache , pgcrypto , pg_freespacemap , pgrowlocks
, pg_standby , pg_stat_statements , pgstattuple , pg_test_fsync , pg_trgm
, pg_upgrade , seg , sepgsql , spi , sslinfo , tablefunc
, test_parser , tsearch2 , unaccent , uuid-ossp , vacuumlo
, xml2

उदाहरण के लिए यदि आप स्थापित करना चाहते हैं earthdistance, तो बस इस कमांड का उपयोग करें:

CREATE EXTENSION earthdistance;

यदि आप इसके नाम में हाइफ़न के साथ एक्सटेंशन स्थापित करना चाहते हैं, जैसे uuid-ossp, आपको एक्सटेंशन का नाम डबल कोट्स में संलग्न करना होगा:

CREATE EXTENSION "uuid-ossp";

3
सुविधा के लिए, किसी एक्सटेंशन को हटाने के लिए: DROP EXTENSION extension_name [, ...]
स्टू

58

हालांकि इवान काररोल का उत्तर सही है, कृपया ध्यान दें कि आपको काम करने के लिए क्रिएट एक्सटेंशन कमांड के लिए पोस्टग्रैस्कल कंट्रिब पैकेज स्थापित करने की आवश्यकता है।

Ubuntu 12.04 में यह इस प्रकार होगा:

sudo apt-get install postgresql-contrib

Postgresql सर्वर को पुनरारंभ करें:

sudo /etc/init.d/postgresql restart

सभी उपलब्ध एक्सटेंशन इस प्रकार हैं:

/usr/share/postgresql/9.1/extension/

अब आप CREATE EXTENSION कमांड चला सकते हैं।


मैं citext स्थापित करने की कोशिश कर रहा था, लेकिन Google को यह पृष्ठ नहीं मिल रहा था, और यह उत्तर नहीं आया। अब इस पृष्ठ पर तीन बार citext का उल्लेख किया गया है :-) Google पर आएं, उस अनुक्रमणिका को करें।
बोटकोडर

12

कोर PostgreSQL विकास टीम द्वारा बनाए और प्रदान किए गए एक्सटेंशन के अलावा, तीसरे पक्ष से उपलब्ध एक्सटेंशन हैं। विशेष रूप से, उस उद्देश्य के लिए समर्पित एक साइट है: http://www.pgxn.org/


8

Postgrersql10 के लिए

मैंने इसे हल कर लिया है

yum install postgresql10-contrib

Postgresql.conf में एक्सटेंशन सक्रिय करना न भूलें

shared_preload_libraries = 'pg_stat_statements'
pg_stat_statements.track = all

फिर से शुरू करें

systemctl restart postgresql-10.service 

सभी आवश्यक एक्सटेंशन जो आप यहां पा सकते हैं

/usr/pgsql-10/share/extension/

4

Postgresql के प्रत्येक संस्करण के लिए उपलब्ध एक्सटेंशन अलग-अलग होते हैं। कौन से एक्सटेंशन उपलब्ध हैं, यह जांचने का एक आसान तरीका है, जैसा कि पहले ही उल्लेख किया जा चुका है:

SELECT * FROM pg_available_extensions;

यदि आप जिस एक्सटेंशन की तलाश कर रहे हैं वह उपलब्ध है, तो आप इसका उपयोग करके स्थापित कर सकते हैं:

CREATE EXTENSION 'extensionName';

या यदि आप इसका उपयोग छोड़ना चाहते हैं:

DROP EXTENSION 'extensionName';

यदि psqlआप एक्सटेंशन का उपयोग करके सफलतापूर्वक इंस्टॉल किया गया है, तो आप इसके अतिरिक्त जांच कर सकते \dxहैं और उपयोग करने वाले एक्सटेंशन के बारे में अधिक जानकारी प्राप्त कर सकते हैं\dx+ extensioName । यह एक्सटेंशन के बारे में अतिरिक्त जानकारी देता है, जैसे इसके साथ कौन से पैकेज का उपयोग किया जाता है।

यदि एक्सटेंशन आपके पोस्टग्रेज संस्करण में उपलब्ध नहीं है, तो आपको आवश्यक बाइनरी फ़ाइलों और पुस्तकालयों को डाउनलोड करने और उन पर इसे खोजने की आवश्यकता है /usr/share/conrib



0

अगर आपके पास SUSE है तो डाउनलोड और इंस्टॉल कैसे करें। एक उदाहरण के रूप में मैं टेबलफंक मॉड्यूल डाउनलोड कर रहा हूं ताकि मैं क्रोस्टैब का उपयोग कर सकूं। मेरे पास PostgreSQL 9.6.1 है।

डेस्कटॉप, टर्मिनल पर राइट-क्लिक करें:

sudo zypper in postgreql-contrib

क्रेडेंशियल दर्ज करें, टाइप करके जारी रखें:

y

रन क्वेरी (मैं pgAdminIII से मेरा भाग लिया):

CREATE EXTENSION tablefunc;

अब आपके पास होना चाहिए crosstab फ़ंक्शन ।

मुझे पुनरारंभ नहीं करना पड़ा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.