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.
Table des matières
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 et0
si ce n'est pas le cas. Il s'agit de la valeur par défaut duread_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)