Gestion d'OCI Database with PostgreSQL
Utilisez des configurations pour gérer les variables et activer les extensions pour une base de données OCI Database with PostgreSQL.
Les configurations sont des listes de variables et d'extensions activées et configurées que vous pouvez définir pour régler, optimiser ou étendre une base de données. Les ensembles de variables par défaut sont optimisés pour les formes matérielles associées aux systèmes de base de données. De nombreuses extensions sont activées automatiquement pour les systèmes de base de données.
Les administrateurs peuvent définir plus de variables et activer des extensions supplémentaires en créant une nouvelle configuration personnalisée ou en copiant une configuration existante. Une fois qu'une configuration est affectée à une base de données, toutes les extensions activées sont disponibles pour l'administrateur de base de données.
Etant donné que le service OCI Database with PostgreSQL optimise les variables de configuration pour vous, seuls les utilisateurs avancés peuvent avoir besoin de les modifier et de les gérer. Pour plus d'informations, reportez-vous au manuel de référence PostgreSQL.
Variables
Les configurations par défaut propres aux formes incluent des variables optimisées pour fournir des performances et un comportement prêts à l'emploi satisfaisants. Vous pouvez personnaliser ces variables lors de la création d'une nouvelle configuration personnalisée ou de la copie d'une configuration existante et appliquer la configuration personnalisée à un système de base de données.
Les types de variable incluent :
-
Variables utilisateur, qui peuvent être modifiées dans une liste de configuration personnalisée. Vous pouvez modifier des variables utilisateur lorsque vous créez ou copiez une configuration. Certaines variables utilisateur sont des variables utilisateur par défaut. Vous ne pouvez pas enlever ces variables utilisateur par défaut d'une configuration.
- Variables dynamiques, qui peuvent être modifiées sans redémarrer la base de données.
- Variables statiques, qui nécessitent que PostgreSQL soit redémarré pour être modifié.
- Variables système, qui ne peuvent pas être modifiées. Les variables système sont définies en fonction de La forme ou des exigences de La base de données.
Pour afficher les valeurs associées à une variable de configuration spécifique, reportez-vous aux rubriques Obtention des détails de configuration par défaut et Obtention des détails de configuration personnalisée.
Plus d'informations sur les variables de configuration
La version communautaire de PostgreSQL s'appuie sur le système d'exploitation Linux pour gérer la mémoire sur le système. Entre autres éléments, il utilise le cache de page du noyau Linux pour éviter d'aller sur le disque pour la plupart des pages de base de données. Le cache de page Linux est nécessairement très général et n'est pas personnalisé pour PostgreSQL.
En revanche, OCI Database with PostgreSQL effectue sa propre gestion de la mémoire. OCI Database with PostgreSQL a implémenté un cache de page personnalisé et ne repose pas uniquement sur le cache de page Linux. Le cache de page personnalisé est entièrement implémenté dans le répertoire utilisateur et est plus efficace pour les charges globales PostgreSQL (par exemple, pour éviter la double mise en mémoire tampon). OCI Database with PostgreSQL pré-alloue une partie fixe de mémoire pour ce cache de page personnalisé et ne l'utilisera à aucune autre fin.
OCI Database with PostgreSQL est, comme la version communautaire, configuré pour allouer une certaine quantité de mémoire pour shared_buffers
.
Vous pouvez contrôler oci.pagecache
et shared_buffers
à l'aide de variables de configuration.
oci.pagecache_size
contrôle la quantité de mémoire allouée à OCI Database with PostgreSQL. Cette variable est définie dans MiBytes.shared_buffers
contrôle la quantité de mémoire allouée à la mémoire partagée PostgreSQL pour les pages de données. Cette variable est définie en unités de taille de bloc (8KiB).
Les valeurs par défaut sont environ 50 % de mémoire pour oci.pagecache_size
et 25 % de mémoire pour shared_buffers
. Avec les paramètres par défaut, environ 75 % de la mémoire totale du système de base de données est toujours allouée. Les mesures indiquent cette quantité telle qu'elle est utilisée, mais cette mémoire est utilisée pour les tampons de données PostgreSQL comme prévu et n'entraîne aucun effet négatif.
Par défaut, l'extension pg_cron
ne peut être créée que dans la base de données postgres
. Si vous essayez de créer l'extension, un message d'erreur tel que ERROR: can only create extension in database postgres
peut se produire.
Pour créer l'extension dans une autre base de données, vous devez ajuster la valeur du paramètre pg_cron.database_name
dans une configuration personnalisée. Par exemple :
pg_cron.database_name='<database_name>'
Pour plus d'informations, reportez-vous à pg_cron
.
Configurations flexibles et variables d'entier
Certaines variables utilisateur sont indiquées par des valeurs entières. Si vous utilisez une configuration fixe, vous pouvez définir une variable telle que max_connections
sur une valeur spécifique. Cette valeur ne peut pas être modifiée ultérieurement et peut rendre la configuration incompatible avec d'autres systèmes de base de données.
Une configuration flexible permet d'utiliser des expressions entières pour les valeurs de variable. Les variables utilisant des expressions entières peuvent évoluer de manière flexible avec des systèmes de base de données de configurations matérielles différentes. Par exemple, au lieu d'une valeur définie pour max_connections
, vous pouvez l'associer à la mémoire de l'instance :
min(DB_INSTANCE_MEMORY_IN_BYTES/76251136,5000)
OCI Database with PostgreSQL prend en charge les variables suivantes dans les expressions d'entier :
- DB_INSTANCE_OCPU_COUNT
- DB_INSTANCE_MEMORY_IN_BYTES
- DB_INSTANCE_MEMORY_IN_KILOBYTES
- DB_INSTANCE_MEMORY_IN_MEGABYTES
- DB_INSTANCE_MEMORY_IN_GIGABYTES
- DB_INSTANCE_MEMORY_IN_TERABYTES
Extensions
Certaines extensions prises en charge par OCI Database with PostgreSQL doivent être activées pour pouvoir être utilisées. Vous pouvez activer ces extensions lorsque vous créez ou copiez une configuration. Pour plus d'informations, reportez-vous à Activation des extensions pour une base de données et à Extensions PostgreSQL prises en charge pour OCI Database with PostgreSQL.
Stratégie IAM requise
Les instructions de stratégie suivantes permettent à un groupe d'administrateurs de gérer les configurations de base de données OCI Database with PostgreSQL :
Allow group <postgresql-admin-group> to read compartments in tenancy
Allow group <postgresql-admin-group> to manage postgres-configuration in [ tenancy | compartment <compartment_name> | compartment id <compartment_OCID> ]
Allow group <postgresql-admin-group> to use tag-namespaces in tenancy
Pour plus d'informations, reportez-vous à OCI Database with PostgreSQL Policies.
Etapes suivantes
Gérez les listes de configuration à l'aide des tâches suivantes :