Spécification des paramètres de base de données - Amazon Relational Database Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Spécification des paramètres de base de données

Les types de paramètres de base de données sont les suivants :

  • Entier

  • Booléen

  • Chaîne

  • Long

  • Double

  • Horodatage

  • Objet d'autres types de données définis

  • Tableau de valeurs de type entier, booléen, chaîne, long, double, horodatage ou objet

Vous pouvez également spécifier des paramètres entiers et booléens au moyen d'expressions, de formules et de fonctions.

Pour le moteur Oracle, vous pouvez utiliser la variable de formule DBInstanceClassHugePagesDefault pour spécifier un paramètre de base de données booléen. Consultez Variables de formule de paramètre de bases de données.

Pour le SQL moteur Postgre, vous pouvez utiliser une expression pour spécifier un paramètre de base de données booléen. Consultez Expressions de paramètre de base de données booléennes.

Des formules de paramètre de bases de données

Une formule de paramètre de base de données est une expression qui se réduit à une valeur entière ou booléenne. Vous insérez l'expression entre des accolades : {}. Vous pouvez utiliser une formule pour une valeur de paramètre de base de données ou en tant qu'argument pour une fonction de paramètre de base de données.

Syntaxe
{FormulaVariable} {FormulaVariable*Integer} {FormulaVariable*Integer/Integer} {FormulaVariable/Integer}

Variables de formule de paramètre de bases de données

Chaque variable de formule renvoie une valeur entière ou booléenne. Les noms des variables sont sensibles à la casse.

AllocatedStorage

Renvoie un entier qui représente la taille du volume de données en octets.

DBInstanceClassHugePagesDefault

Renvoie une valeur booléenne. Actuellement, la prise en charge ne concerne que les moteurs Oracle.

Pour de plus amples informations, veuillez consulter Activation de HugePages pour une instance RDS for Oracle.

DBInstanceClassMemory

Renvoie un entier correspondant au nombre d'octets de mémoire disponibles pour le processus de base de données. Ce nombre est calculé en interne, en commençant par la quantité totale de mémoire pour la classe d'instance de base de données. Le calcul en soustrait la mémoire réservée au système d'exploitation et aux RDS processus qui gèrent l'instance. Par conséquent, ce nombre est toujours légèrement inférieur aux chiffres de mémoire affichés dans les tables de classes d'instance dans Classes d'instances de base de données . La valeur exacte dépend d'une combinaison de facteurs. Il s'agit notamment de la classe d'instance, du moteur de base de données et du fait que cela s'applique à une RDS instance ou à une instance faisant partie d'un cluster Aurora.

DBInstanceVCPU

Renvoie un entier représentant le nombre d'unités centrales virtuelles (vCPUs) utilisées par Amazon RDS pour gérer l'instance.

EndPointPort

Renvoie un entier qui représente le port utilisé lors de la connexion à l'instance de base de données.

TrueIfReplica

Renvoie 1 si l'instance de base de données est un réplica en lecture et 0 si ce n'est pas le cas. Il s'agit de la valeur par défaut du read_only paramètre dans MySQL.

Opérateurs de formule de paramètre de bases de données

Les formules de paramètre DB prennent en charge deux opérateurs : division et multiplication.

Opérateur de division : /

Divise le dividende par le diviseur, en renvoyant un quotient entier. Les décimales dans le quotient sont tronquées, pas arrondies.

Syntaxe

dividend / divisor

Les arguments de dividende et de diviseur doivent être des expressions entières.

Opérateur de multiplication : *

Multiplie les expressions, affichant ainsi le résultat des expressions. Les décimales dans les expressions sont tronquées, pas arrondies.

Syntaxe

expression * expression

Les deux expressions doivent être des entiers.

Fonctions de paramètre de bases de données

Vous spécifiez les arguments des fonctions de paramètres de base de données sous la forme d'entiers ou de formules. Chaque fonction doit avoir au moins un argument. Spécifiez plusieurs arguments sous la forme d'une liste séparée par des virgules. Cette liste ne peut pas contenir de membres vides, tels que argument1,,argument3. Les noms de fonctions ne sont pas sensibles à la casse.

IF

Renvoie un argument.

Actuellement, la prise en charge ne concerne que les moteurs Oracle et {DBInstanceClassHugePagesDefault} est le seul premier argument pris en charge. Pour plus d'informations, consultez Activation de HugePages pour une instance RDS for Oracle.

Syntaxe

IF(argument1, argument2, argument3)

Renvoie le deuxième argument si le premier a la valeur true. Sinon, renvoie le troisième argument.

GREATEST

Renvoie la plus grande valeur depuis une liste d'entiers ou de formules de paramètres.

Syntaxe

GREATEST(argument1, argument2,...argumentn)

Renvoie un entier.

LEAST

Renvoie la plus petite valeur depuis une liste d'entiers ou de formules de paramètres.

Syntaxe

LEAST(argument1, argument2,...argumentn)

Renvoie un entier.

SUM

Ajoute les valeurs des formules de paramètres ou d'entiers spécifiés.

Syntaxe

SUM(argument1, argument2,...argumentn)

Renvoie un entier.

Expressions de paramètre de base de données booléennes

Une expression de paramètre de base de données booléenne se réduit à une valeur booléenne de 1 ou 0. L'expression est insérée entre guillemets.

Note

Les expressions de paramètres de base de données booléennes ne sont prises en charge que pour le moteur SQL Postgre.

Syntaxe
"expression operator expression"

Les deux expressions doivent se réduire à des entiers. Une expression peut être l'un des éléments suivants :

  • Une constante entière

  • Une formule de paramètre de base de données

  • Une fonction de paramètre de base de données

  • Une variable de paramètre de base de données

Les expressions de paramètres de base de données booléennes prennent en charge les opérateurs d'inégalité suivants :

L'opérateur supérieur à : >

Syntaxe

"expression > expression"
L'opérateur inférieur à : <

Syntaxe

"expression < expression"
Les opérateurs supérieur ou égal à : >=, =>

Syntaxe

"expression >= expression" "expression => expression"
Les opérateurs inférieur ou égal à : <=, =<

Syntaxe

"expression <= expression" "expression =< expression"
Exemple utilisation d'une expression de paramètre de base de données booléenne

L'exemple d'expression de paramètre de base de données booléenne suivant compare le résultat d'une formule de paramètre à un entier. Il le fait pour modifier le paramètre de base de données booléen wal_compression pour une instance de base de données PostgreSQL. L'expression du paramètre compare le nombre de vCPUs à la valeur 2. Si le nombre de vCPUs est supérieur à 2, le paramètre wal_compression DB est défini sur true.

aws rds modify-db-parameter-group --db-parameter-group-name group-name \ --parameters "ParameterName=wal_compression,ParameterValue=\"{DBInstanceVCPU} > 2\" "

Expressions de journal des paramètres de base de données

Vous pouvez définir une valeur de paramètre de base de données entier à une expression de journal. Vous insérez l'expression entre des accolades : {}. Exemples :

{log(DBInstanceClassMemory/8187281418)*1000}

La fonction log représente la base du journal 2. Cet exemple utilise également la variable de formule DBInstanceClassMemory. Consultez Variables de formule de paramètre de bases de données.

Note

Actuellement, vous ne pouvez pas spécifier le SQL innodb_log_file_size paramètre My avec une valeur autre qu'un entier.

Exemples de valeurs de paramètre de bases de données

Ces exemples montrent l'utilisation de formules, de fonctions et d'expressions pour les valeurs des paramètres de base de données.

Avertissement

La définition incorrecte des paramètres d'un groupe de paramètres de base de données peut avoir des effets indésirables involontaires. Cela peut se manifester par une dégradation des performances et l'instabilité du système. Agissez avec prudence lorsque vous modifiez des paramètres de base de données et sauvegardez vos données avant de modifier votre groupe de paramètres de base de données. Testez les modifications de groupe de paramètres sur une instance de base de données de test, créée à l'aide de point-in-time-restores, avant d'appliquer ces modifications de groupe de paramètres à vos instances de base de données de production.

Exemple en utilisant la fonction de paramètre de base de données GREATEST

Vous pouvez spécifier la fonction GREATEST dans un paramètre de processus Oracle. Utilisez-la pour définir le nombre de processus utilisateur sur le plus grand des deux nombres : 80 ou DBInstanceClassMemory divisé par 9 868 951.

GREATEST({DBInstanceClassMemory/9868951},80)
Exemple en utilisant la fonction de paramètre de base de données LEAST

Vous pouvez spécifier la LEAST fonction dans une valeur Mon SQL max_binlog_cache_size paramètre. Utilisez-le pour définir la taille de cache maximale qu'une transaction peut utiliser dans une SQL instance My à 1 Mo ou DBInstanceClass /256.

LEAST({DBInstanceClassMemory/256},10485760)