Moduli estensioni ufficiali di PostgreSQL
PostgreSQL è un potente sistema di database relazionale a oggetti open-source, con una ricca varietà di moduli estensione per migliorare le sue funzionalità. ServBay include tutti i moduli estensione ufficiali di PostgreSQL, consentendo agli utenti di utilizzare facilmente questi moduli per soddisfare diverse esigenze applicative complesse. Di seguito sono riportati alcuni dei moduli estensione ufficiali più comuni di PostgreSQL e una breve descrizione di ciascuno.
Moduli estensioni comuni
1. pg_stat_statements
Funzionalità: Raccoglie e registra le statistiche di esecuzione delle dichiarazioni SQL.
Utilizzo: Aiuta gli amministratori di database ad analizzare e ottimizzare le prestazioni delle query.
Comando di installazione:
CREATE EXTENSION pg_stat_statements;
2. pg_trgm
Funzionalità: Fornisce funzionalità di ricerca di somiglianza delle stringhe basata sui trigrammi.
Utilizzo: Utilizzato per il matching approssimativo, la ricerca full-text e altro.
Comando di installazione:
CREATE EXTENSION pg_trgm;
3. hstore
Funzionalità: Fornisce funzionalità di memorizzazione di coppie chiave-valore.
Utilizzo: Adatto per scenari che richiedono la memorizzazione di attributi dinamici, come dati di configurazione, metadati, ecc.
Comando di installazione:
CREATE EXTENSION hstore;
4. citext
Funzionalità: Fornisce un tipo di testo insensibile al maiuscolo/minuscolo.
Utilizzo: Utilizzato per scenari che richiedono confronti insensibili al maiuscolo/minuscolo, ad esempio nomi utente, indirizzi email, ecc.
Comando di installazione:
CREATE EXTENSION citext;
5. uuid-ossp
Funzionalità: Genera UUID (identificatori univoci universali).
Utilizzo: Utilizzato in scenari che richiedono identificatori univoci, come chiavi primarie, ID di sessione, ecc.
Comando di installazione:
CREATE EXTENSION "uuid-ossp";
6. intarray
Funzionalità: Fornisce operazioni aggiuntive sugli array di interi.
Utilizzo: Adatto a scenari che richiedono operazioni complesse su array di interi.
Comando di installazione:
CREATE EXTENSION intarray;
7. btree_gin
Funzionalità: Fornisce supporto per operazioni B-tree basate su indici GIN.
Utilizzo: Utilizzato in scenari che richiedono indici e query efficienti.
Comando di installazione:
CREATE EXTENSION btree_gin;
8. btree_gist
Funzionalità: Fornisce supporto per operazioni B-tree basate su indici GiST.
Utilizzo: Utilizzato in scenari che richiedono indici multidimensionali e query complesse.
Comando di installazione:
CREATE EXTENSION btree_gist;
9. cube
Funzionalità: Fornisce supporto per dati multidimensionali.
Utilizzo: Adatto a scenari che richiedono la gestione di dati multidimensionali, come data warehouse, analisi OLAP, ecc.
Comando di installazione:
CREATE EXTENSION cube;
10. fuzzystrmatch
Funzionalità: Fornisce funzionalità di matching approssimativo delle stringhe.
Utilizzo: Utilizzato per la ricerca approssimativa, la pulizia dei dati, ecc.
Comando di installazione:
CREATE EXTENSION fuzzystrmatch;
11. plpgsql
Funzionalità: Supporto linguistico per PL/pgSQL.
Utilizzo: Utilizzato per scrivere procedure memorizzate e trigger.
Comando di installazione:
CREATE EXTENSION plpgsql;
12. tablefunc
Funzionalità: Fornisce supporto per le funzioni di tabella.
Utilizzo: Utilizzato in query crosstab, pivot dei dati, ecc.
Comando di installazione:
CREATE EXTENSION tablefunc;
13. dblink
Funzionalità: Fornisce funzionalità di connessione cross-database.
Utilizzo: Utilizzato per interrogare i dati da un altro database.
Comando di installazione:
CREATE EXTENSION dblink;
14. postgres_fdw
Funzionalità: Fornisce accesso a database PostgreSQL esterni.
Utilizzo: Utilizzato per query cross-database e integrazione dei dati.
Comando di installazione:
CREATE EXTENSION postgres_fdw;
15. pgcrypto
Funzionalità: Fornisce funzionalità di crittografia e decrittografia.
Utilizzo: Utilizzato per la crittografia dei dati, hash, e altre esigenze di sicurezza.
Comando di installazione:
CREATE EXTENSION pgcrypto;
Installazione e utilizzo dei moduli estensione
In ServBay, puoi installare e utilizzare i moduli estensione ufficiali di PostgreSQL seguendo questi passaggi:
Connettersi al database PostgreSQL:
bashpsql -U your_username -d your_database
1Installare il modulo estensione:
sqlCREATE EXTENSION module_name;
1Verificare l'installazione:
sql\dx
1
Di seguito è riportato un esempio di abilitazione di pg_trgm
:
psql (16.3 (ServBay))
Type "help" for help.
postgres=# \dx
List of installed extensions
Name | Version | Schema | Description
----------+---------+------------+------------------------------
pgcrypto | 1.3 | public | cryptographic functions
plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural language
(2 rows)
postgres=# CREATE EXTENSION pg_trgm;
CREATE EXTENSION
postgres=# \dx
List of installed extensions
Name | Version | Schema | Description
----------+---------+------------+-------------------------------------------------------------------
pg_trgm | 1.6 | public | text similarity measurement and index searching based on trigrams
pgcrypto | 1.3 | public | cryptographic functions
plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural language
(3 rows)
postgres=#
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Consultare i moduli forniti da PostgreSQL
In ServBay, puoi visualizzare i moduli forniti da PostgreSQL usando il comando seguente:
SELECT * FROM pg_available_extensions order by name;
Un risultato tipico è il seguente:
name | default_version | installed_version | comment
------------------------------+-----------------+-------------------+---------------------------------------------------------------------------------------------------------------------
address_standardizer | 3.4.2 | | Used to parse an address into constituent elements. Generally used to support geocoding address normalization step.
address_standardizer_data_us | 3.4.2 | | Address Standardizer US dataset example
adminpack | 2.1 | | administrative functions for PostgreSQL
amcheck | 1.3 | | functions for verifying relation integrity
autoinc | 1.0 | | functions for autoincrementing fields
bloom | 1.0 | | bloom access method - signature file based index
btree_gin | 1.3 | | support for indexing common datatypes in GIN
btree_gist | 1.7 | | support for indexing common datatypes in GiST
citext | 1.6 | | data type for case-insensitive character strings
cube | 1.5 | | data type for multidimensional cubes
dblink | 1.2 | | connect to other PostgreSQL databases from within a database
dict_int | 1.0 | | text search dictionary template for integers
dict_xsyn | 1.0 | | text search dictionary template for extended synonym processing
earthdistance | 1.1 | | calculate great-circle distances on the surface of the Earth
file_fdw | 1.0 | | foreign-data wrapper for flat file access
fuzzystrmatch | 1.2 | | determine similarities and distance between strings
hstore | 1.8 | | data type for storing sets of (key, value) pairs
insert_username | 1.0 | | functions for tracking who changed a table
intagg | 1.1 | | integer aggregator and enumerator (obsolete)
intarray | 1.5 | | functions, operators, and index support for 1-D arrays of integers
isn | 1.2 | | data types for international product numbering standards
lo | 1.1 | | Large Object maintenance
ltree | 1.2 | | data type for hierarchical tree-like structures
moddatetime | 1.0 | | functions for tracking last modification time
old_snapshot | 1.0 | | utilities in support of old_snapshot_threshold
pageinspect | 1.12 | | inspect the contents of database pages at a low level
pg_buffercache | 1.4 | | examine the shared buffer cache
pg_freespacemap | 1.2 | | examine the free space map (FSM)
pg_jieba | 1.1.1 | | a parser for full-text search of Chinese
pg_prewarm | 1.2 | | prewarm relation data
pg_stat_statements | 1.10 | | track planning and execution statistics of all SQL statements executed
pg_surgery | 1.0 | | extension to perform surgery on a damaged relation
pg_trgm | 1.6 | 1.6 | text similarity measurement and index searching based on trigrams
pg_visibility | 1.2 | | examine the visibility map (VM) and page-level visibility info
pg_walinspect | 1.1 | | functions to inspect contents of PostgreSQL Write-Ahead Log
pgcrypto | 1.3 | 1.3 | cryptographic functions
pgrouting | 3.6.2 | | pgRouting Extension
pgrowlocks | 1.2 | | show row-level locking information
pgstattuple | 1.5 | | show tuple-level statistics
plpgsql | 1.0 | 1.0 | PL/pgSQL procedural language
postgis | 3.4.2 | | PostGIS geometry and geography spatial types and functions
postgis_sfcgal | 3.4.2 | | PostGIS SFCGAL functions
postgis_tiger_geocoder | 3.4.2 | | PostGIS tiger geocoder and reverse geocoder
postgres_fdw | 1.1 | | foreign-data wrapper for remote PostgreSQL servers
refint | 1.0 | | functions for implementing referential integrity (obsolete)
seg | 1.4 | | data type for representing line segments or floating-point intervals
sslinfo | 1.2 | | information about SSL certificates
tablefunc | 1.0 | | functions that manipulate whole tables, including crosstab
tcn | 1.0 | | Triggered change notifications
tsm_system_rows | 1.0 | | TABLESAMPLE method which accepts number of rows as a limit
tsm_system_time | 1.0 | | TABLESAMPLE method which accepts time in milliseconds as a limit
unaccent | 1.1 | | text search dictionary that removes accents
vector | 0.7.0 | | vector data type and ivfflat and hnsw access methods
xml2 | 1.1 | | XPath querying and XSLT
zhparser | 2.2 | | a parser for full-text search of Chinese
(55 rows)
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
Grazie a questi moduli, puoi migliorare le funzionalità di PostgreSQL per soddisfare diverse esigenze applicative complesse. ServBay include tutti i moduli ufficiali di PostgreSQL, permettendo agli utenti di installare e utilizzare secondo necessità.