Gestion de la base de données OCI Database with PostgreSQL
Utilisez les configurations pour gérer les variables et activer les extensions pour un système de 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 jeux 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 automatiquement activées pour les systèmes de base de données.
Les administrateurs peuvent définir d'autres 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 la base de données.
Comme 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 de renseignements, consultez le manuel de référence PostgreSQL.
Variables
Les configurations par défaut propres à la forme comprennent des variables qui ont été optimisées pour fournir de bonnes performances et un bon comportement prêts à l'emploi. 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 de l'application de la configuration personnalisée à un système de base de données.
Les types de variable sont les suivants :
-
Variables d'utilisateur, qui peuvent être modifiées dans une liste de configuration personnalisée. Vous pouvez modifier les variables utilisateur lors de la création ou de la copie d'une configuration. Certaines variables utilisateur sont des variables utilisateur par défaut. Vous ne pouvez pas supprimer ces variables d'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 le redémarrage de PostgreSQL pour être modifiées.
- Variables de 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 voir les valeurs associées à une variable de configuration spécifique, voir Obtention des détails de la configuration par défaut et Obtention des détails de la configuration personnalisée.
Informations supplémentaires pour les variables de configuration
La version communautaire de PostgreSQL repose 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 pages 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 mis en oeuvre un cache de page personnalisé et ne repose pas uniquement sur le cache de page Linux. La mémoire cache de page personnalisée est entièrement mise en oeuvre dans le terrain de l'utilisateur et est plus efficace pour les charges de travail PostgreSQL (telles que pour éviter la mise en mémoire tampon double). OCI Database with PostgreSQL préalloue une partie fixe de la mémoire pour ce cache de page personnalisé et ne l'utilisera à aucune autre fin.
OCI Database with PostgreSQL est, comme la version de la communauté, configuré pour affecter une certaine quantité de mémoire à shared_buffers
.
Les valeurs oci.pagecache
et shared_buffers
peuvent être contrôlées à l'aide de variables de configuration.
oci.pagecache_size
contrôle la quantité de mémoire affectée au cache de pages personnalisées OCI Database with PostgreSQL. Cette variable est définie dans MiBytes.shared_buffers
contrôle la quantité de mémoire affecté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 d'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 affichent cette quantité telle qu'utilisée, mais cette mémoire est utilisée pour les mémoires 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 tentez 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 toute autre base de données, vous devez ajuster la valeur du paramètre pg_cron.database_name
dans une configuration personnalisée. Exemple :
pg_cron.database_name='<database_name>'
Pour plus de renseignements, consultez la page pg_cron
.
Configurations flexibles et variables de nombre entier
Certaines variables utilisateur sont spécifiées par des valeurs entières. Si vous utilisez une configuration fixe, vous pouvez régler une variable telle que max_connections
à 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 vous permet d'utiliser des expressions entières pour les valeurs de variable. Les variables utilisant des expressions entières peuvent être mises à l'échelle 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 de nombre 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 avant de pouvoir être utilisées. Vous pouvez activer ces extensions lorsque vous créez ou copiez une configuration. Pour plus d'informations, voir Activation des extensions pour une base de données et Extensions PostgreSQL prises en charge pour OCI Database with PostgreSQL.
Politique GIA requise
Les énoncés de politique suivants 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, voir Politiques pour OCI Database with PostgreSQL.
Étapes suivantes
Gérez les listes de configuration à l'aide des tâches suivantes :