2017-05-11 1 views
2

Je configuré mon RDS Postgres 9.6.1 instance afin que le pg_stat_activity est chargé via le paramètre 'shared_preload_libraries dePostgres pg_stat_statements pas chargé

shared_preload_libraries=pg_stat_statements,pg_hint_plan 

Le Je redémarré mon exemple et vérifier si les pg_stat_statements peuvent être chargé. Mais je reçois l'erreur:

[55000] ERROR: pg_stat_statements must be loaded via shared_preload_libraries 

La commande

SHOW shared_preload_libraries; 

ne montre pas la bibliothèque pg_stat_statements.

Et donc l'erreur ci-dessus reste encore.

Est-ce que quelqu'un d'autre a le même problème?

Merci, Detlef

+0

RDS soutient 'pg_stat_statements'. 'shared_preload_libraries = pg_stat_statements, pg_hint_plan' changez en' shared_preload_libraries = 'pg_stat_statements, pg_hint_plan'' et redémarrez s'il vous plaît –

Répondre

0

MISE À JOUR

Je me suis essayé. Ajouté aux valeurs Parameters-> shared_preload_libraries: pg_stat_statements,pg_hint_plan. Cliquez sur "enregistrer les modifications", convenu sur "Appliquer immédiatement". Effectivement aucun effet. Quand je vérifie DB Parameter Group - il montre le groupe modifié, mais pg_stat_statements inutilisable. Je pense donc que mal sur JS et essayer aws cli:

aws rds describe-db-instances --db-instance-identifier p5 

il révèle que le groupe n'a pas été en effet changé !:

"OptionGroupMemberships": [ 
    { 
     "Status": "in-sync", 
     "OptionGroupName": "default:postgres-9-5" 
    } 
    ], 

J'ai fait:

aws rds modify-db-instance --db-parameter-group-name with-contrib --apply-immediately --db-instance-identifier p5 
aws rds reboot-db-instance --db-instance-identifier p5 
aws rds describe-db-instances --db-instance-identifier p5 

et il a été changé. Donc j'essaie de:

mon=> create extension pg_stat_statements ; 
CREATE EXTENSION 
mon=> select count(*) from pg_stat_statements; 
count 
------- 
    26 
(1 row) 

Voila. Vous ne savez pas si c'est une fonctionnalité de Chrome (Version 57.0.2987.133 (64 bits)) ou JS, ou si vous n'obtenez pas des étapes de clic intuitives, mais que je n'ai pas réussi à appliquer les modifications. S'il vous plaît essayez avec aws cli pour voir si vous avez du succès là-bas.

PRÉCÉDENT String requires quotes I think.:

String: In general, enclose the value in single quotes, doubling any single quotes within the value. Quotes can usually be omitted if the value is a simple number or identifier, however.

réglage Alors peut-être shared_preload_libraries cette façon vous aidera:

shared_preload_libraries = 'pg_stat_statements,pg_hint_plan' 

https://www.postgresql.org/docs/current/static/runtime-config-client.html:

shared_preload_libraries (string)

This variable specifies one or more shared libraries to be preloaded at server start. This parameter can only be set at server start. If a specified library is not found, the server will fail to start.

+0

Dans l'écran de configuration AWS, la clé "shared_preload_libraries" doit être spécifiée sans guillemets simples. –

+0

ah, oui - il n'y a pas de postgres.conf, theres une page de groupe de paramètres ou smth ..., ce qui est dans les journaux après le redémarrage du cluster? .. –

+0

rien vraiment. il ne montre aucune erreur.Lorsque vous essayez de sélectionner * à partir de pg_stat_statements, il est écrit: 'ERREUR: pg_stat_statements doit être chargé via shared_preload_libraries' –