Impostazione di Trusted Language Extensions nell'istanza database RDS per PostgreSQL
I passaggi seguenti si basano sull'ipotesi che l'istanza database RDS per PostgreSQL sia associata a un gruppo di parametri personalizzato del database. Puoi usare la AWS Management Console o la AWS CLI per questi passaggi.
Quando imposti Trusted Language Extensions nell'istanza database RDS per PostgreSQL, lo installi in un database specifico che deve essere utilizzato dagli utenti del database che dispongono delle relative autorizzazioni.
Per impostare Trusted Language Extensions
Esegui i seguenti passaggi utilizzando un account membro del gruppo rds_superuser (ruolo).
Accedi alla AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/
. -
Nel riquadro di navigazione, scegli l' istanza database RDS per PostgreSQL.
-
Apri la scheda Configurazione per l' l'istanza database RDS per PostgreSQL. Tra i dettagli dell'istanza, individua il collegamento Parameter group (Gruppo di parametri).
-
Scegli il collegamento per aprire i parametri personalizzati associati l'istanza database RDS per PostgreSQL.
-
Nel campo di ricerca Parametri, digita
shared_preper trovare il parametroshared_preload_libraries. -
Scegli Edit parameters (Modifica parametri) per accedere ai valori delle proprietà.
-
Aggiungi
pg_tleall'elenco nel campo Values (Valori). Utilizza una virgola per separare gli elementi nell'elenco di valori.
Riavvia l'istanza database RDS per PostgreSQL in modo che la modifica al parametro
shared_preload_librariesdiventi effettiva.Quando l'istanza è disponibile, verifica che
pg_tlesia stato inizializzato. Utilizzapsqlper connetterti all'istanza database RDS per PostgreSQL, quindi esegui il comando seguente.SHOW shared_preload_libraries;shared_preload_libraries -------------------------- rdsutils,pg_tle (1 row)Con
pg_tleinizializzato, puoi ora creare l'estensione.CREATE EXTENSION pg_tle;Per verificare che l'estensione sia installata, puoi usare il seguente metacomando
psql.labdb=>\dxList of installed extensions Name | Version | Schema | Description ---------+---------+------------+-------------------------------------------- pg_tle | 1.0.1 | pgtle | Trusted-Language Extensions for PostgreSQL plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural languageAssegna il ruolo
pgtle_adminal nome utente principale che hai creato per l'istanza database RDS per PostgreSQL al momento dell'impostazione. Se hai accettato l'impostazione predefinita, il valore èpostgres.labdb=>GRANT pgtle_admin TO postgres;GRANT ROLEPer verificare se la concessione è avvenuta, utilizza il metacomando
psqlcome illustrato nell'esempio seguente. Nell'output vengono visualizzati solo i ruolipgtle_adminepostgres. Per ulteriori informazioni, consulta Comprendere il ruolo rds_superuser.labdb=>\duList of roles Role name | Attributes | Member of -----------------+---------------------------------+----------------------------------- pgtle_admin | Cannot login | {} postgres | Create role, Create DB +| {rds_superuser,pgtle_admin} | Password valid until infinity |...Chiudi la sessione
psqlusando il metacomando\q.\q
Per iniziare a creare le estensioni TLE, consulta Esempio: creazione di un'estensione Trusted Language Extensions utilizzando SQL.
Puoi evitare di specificare l'argomento --region quando usi i comandi CLI configurando AWS CLI con la Regione AWS predefinita. Per ulteriori informazioni, consulta Nozioni di base sulla configurazione nella Guida per l'utente di AWS Command Line Interface.
Per impostare Trusted Language Extensions
Usa il comando AWS CLI modify-db-parameter-group per aggiungere
pg_tleal parametroshared_preload_libraries.aws rds modify-db-parameter-group \ --db-parameter-group-namecustom-param-group-name\ --parameters "ParameterName=shared_preload_libraries,ParameterValue=pg_tle,ApplyMethod=pending-reboot" \ --regionaws-region-
Usa il comando AWS CLI reboot-db-instance per riavviare l'istanza database RDS per PostgreSQL e inizializzare la libreria
pg_tle.aws rds reboot-db-instance \ --db-instance-identifieryour-instance\ --regionaws-region Quando l'istanza è disponibile, verifica che
pg_tlesia stato inizializzato. Utilizzapsqlper connetterti all'istanza database RDS per PostgreSQL, quindi esegui il comando seguente.SHOW shared_preload_libraries;shared_preload_libraries -------------------------- rdsutils,pg_tle (1 row)Con
pg_tleinizializzato, puoi ora creare l'estensione.CREATE EXTENSION pg_tle;Assegna il ruolo
pgtle_adminal nome utente principale che hai creato per l'istanza database RDS per PostgreSQL al momento dell'impostazione. Se hai accettato l'impostazione predefinita, il valore èpostgres.GRANT pgtle_admin TO postgres;GRANT ROLEChiudi la sessione
psqlcome indicato di seguito.labdb=>\q
Per iniziare a creare le estensioni TLE, consulta Esempio: creazione di un'estensione Trusted Language Extensions utilizzando SQL.