Modifier la configuration du déploiement
IBM Cloud® Databases for MySQL vous permet de modifier certains paramètres de configuration de MySQL afin que vous puissiez adapter vos bases de données MySQL à votre cas d'utilisation. Pour apporter des modifications définitives à la configuration de base de données, utilisez le plug-in d'interface de ligne de commande ou l'API Cloud Databases pour écrire les modifications dans le fichier de configuration pour votre déploiement.
La configuration est définie dans un schéma. Pour effectuer une modification, envoyez un objet JSON contenant les paramètres et leurs nouvelles valeurs à l'API ou à la CLI. Par exemple, dans l'interface de ligne de commande ou l'API, définissez
max_connections
sur 150 à l'aide d'une commande telle que:
{"configuration":{"max_connections":150}}
Pour plus d'informations, voir Gestion de MySQL Connections.
Comment calculer la variable MySQL 'max_connections
?
max_connections
est un paramètre de configuration dans MySQL qui détermine le nombre maximal de connexions simultanées pouvant être établies avec le serveur de base de données.
MySQL max_connections
formule de base
La formule de base pour le calcul de max_connections
est la suivante:
Available RAM = Global Buffers + (Thread Buffers x `max_connections`)
Pour extraire une liste de mémoires tampon et leurs valeurs, utilisez une commande telle que la suivante:
SHOW VARIABLES LIKE '%buffer%';
Utilisation du plug-in CLI Cloud Databases
Vérifiez la configuration en cours de votre déploiement à l'aide d'une commande telle que la suivante:
ibmcloud cdb deployment-configuration-schema <deployment name or CRN>
Pour modifier votre configuration à l'aide du CLI-plugin Cloud Databases, utilisez la commande deployment-configuration
:
ibmcloud cdb deployment-configuration <deployment name or CRN> [@JSON_FILE | JSON_STRING]
La commande lit les modifications que vous souhaitez effectuer à partir de l'objet JSON ou d'un fichier. Pour plus d'informations, voir la page de référence de l'interface de ligne de commande.
Utilisation de l'API Cloud Databases
Il existe deux noeuds finaux de configuration de déploiement, l'un permet d'afficher le schéma de configuration et l'autre permet de modifier la configuration. Pour afficher le schéma de configuration, envoyez une demande GET
à
/deployments/{id}/configuration/schema
.
Pour modifier la configuration, envoyez les paramètres que vous souhaitez modifier sous la forme d'un objet JSON dans le corps d'une demande PATCH
vers /deployments/{id}/configuration
.
Pour plus d'informations, voir Référence d'API.
Paramètres de fuseau horaire Databases for MySQL
Le fuseau horaire des déploiements Databases for MySQL est toujours le temps universel coordonné. Configurez votre fuseau horaire avec l'API Cloud Databases ou l'interface de ligne de commande remplacez votre fuseau horaire par un fuseau horaire nommé (recommandé) ou un décalage d'un fuseau horaire.
Vous devez reconfigurer le fuseau horaire sur les instances restaurées et sur les répliques en lecture. Bien que les tables de fuseaux horaires soient restaurées (dans le cas d'une restauration) et répliquées (dans le cas d'une réplique en lecture),
la valeur @@global.time_zone
ne l'est pas. Pour définir cette valeur, utilisez les mêmes appels d'API que précédemment, mais avec les nouveaux CRN.
Configuration de vos paramètres de fuseau horaire Databases for MySQL
Lors de la mise à disposition, un déploiement Cloud Databases est configuré en temps universel coordonné. La reconfiguration de votre fuseau horaire est une modification permanente qui doit être effectuée pour chacun de vos déploiements Cloud Databases.
La configuration de votre fuseau horaire définit le fuseau horaire global dans votre instance MySQL. Dans l'instance où se produit une reprise en ligne, votre paramètre de fuseau horaire est propagé dans le cadre de la réplication, car le paramètre de fuseau horaire est écrit dans le fichier de configuration MySQL. La seule exception à cette règle est que vous restaurez une instance à un point de cohérence avant de configurer votre fuseau horaire préféré.
Si vous configurez votre fuseau horaire en fonction de l'heure d'été, les ajustements font partie de la configuration. Aucune action n'est nécessaire de votre part. L'utilisation d'un fuseau horaire spécifique est préférable à l'utilisation d'un décalage horaire.
Cloud Databases valide la valeur du paramètre time_zone
. Si vous configurez votre déploiement avec une valeur non valide, la configuration échoue. Le nom valide time_zone values
se trouve ici.
Modification du fuseau horaire dans l'API Cloud Databases
Exemple de décalage:
curl -v -XPATCH -H "Authorization: Bearer $token" -H "Content-Type: application/json" https://api.<region>.databases.cloud.ibm.com/v5/ibm/deployments/<crn>/configuration -d '{"configuration": {"time_zone": "<EXAMPLE OFFSET"}}'
Exemple de fuseau horaire nommé:
curl -v -XPATCH -H "Authorization: Bearer $token" -H "Content-Type: application/json" https://api.<region>.databases.cloud.ibm.com/v5/ibm/deployments/<crn>/configuration -d '{"configuration": {"time_zone": "<EXAMPLE TIME ZONE"}}'
Modification du fuseau horaire dans l'interface de ligne de commande Cloud Databases
Exemple de fuseau horaire nommé
ibmcloud cdb deployment-configuration <crn> '{"time_zone": "US/Pacific"}'
Paramètres de configuration disponibles Databases for MySQL
- Valeur par défaut -
sha256_password
- Valeurs admises :
sha256_password
,mysql_native_password
- Redémarrage de la base de données? -
true
Sauf si cela est strictement nécessaire, n'utilisez pas mysql_native_password
.
innodb_buffer_pool_size_percentage
- Description: pourcentage de mémoire à utiliser pour
innodb_buffer_pool_size
. La valeur par défaut de 50% est une valeur prudente qui fonctionne pour les bases de données de n'importe quelle taille. Si votre base de données requiert plus de mémoire RAM, cette valeur peut être augmentée. Une valeur trop élevée peut dépasser les limites de mémoire de votre base de données, ce qui peut entraîner une panne. - Par défaut :
50
- Minimum :
10
- Maximum :
100
- Redémarrage de la base de données? -
true
innodb_flush_log_at_trx_commit
- Description: contrôle l'équilibre entre la conformité ACID stricte pour les opérations de validation et des performances plus élevées qui sont possibles lorsque les opérations d'E-S liées à la validation sont réorganisées et effectuées par lots. Vous pouvez obtenir de meilleures performances en modifiant la valeur par défaut, mais vous pouvez ensuite perdre des transactions en cas de panne.
- Par défaut :
2
- Minimum :
0
- Maximum :
2
- Redémarrage de la base de données? -
false
- Description: Taille en octets de la mémoire tampon utilisée par InnoDB pour écrire dans les fichiers journaux sur le disque.
- Par défaut :
33554432
- Minimum :
1048576
- Maximum :
4294967295
- Redémarrage de la base de données? -
true
- Description : Taille en octets de chaque fichier journal d'un groupe de journaux. les
Innodb_log_file_size
et "innodb_log_files_in_group
ont été remplacés par "innodb_redo_log_capacity
. Le réglage du "innodb_log_file_size
entraîne également le réglage du "innodb_redo_log_capacity
. - Par défaut :
2147483648
- Minimum :
4194304
- Maximum :
274877906900
- Redémarrage de la base de données? -
false
- Description: paramètre qui influence les algorithmes et les heuristiques de l'opération flush pour le pool de mémoire tampon InnoDB. Un paramètre plus petit que la valeur par défaut convient généralement à la plupart des charges de travail. Une valeur beaucoup plus élevée que nécessaire peut avoir un impact sur les performances. N'augmentez la valeur que si vous disposez d'une capacité d'E-S de secours sous une charge de travail standard.
- Par défaut :
256
- Minimum :
128
- Maximum :
2048
- Redémarrage de la base de données? -
false
- Description : Nombre de threads d'E/S pour les opérations d'écriture sur InnoDB.
- Par défaut :
4
- Minimum :
1
- Maximum :
64
- Redémarrage de la base de données? -
true
- Valeur par défaut -
1073741824
- Minimum -
1024
- Maximum -
1073741824
- Redémarrage de la base de données? -
false
- Description-Indique le nombre total d'instructions préparées sur le serveur.
- Valeur par défaut -
16382
- Minimum -
0
- Maximum-(version ≤ 8.0.17)
1048576
, (version ≥ 8.0.18)4194304
- Redémarrage de la base de données? -
false
- Valeur par défaut -
200
- Redémarrage de la base de données? -
false
Vous devrez peut-être effectuer une mise à l'échelle avant d'augmenter le nombre maximal de connexions.
- Valeur par défaut -
1800
- Redémarrage de la base de données? -
false
- Description : Nombre de secondes d'attente d'écriture d'un bloc dans une connexion avant l'abandon de l'écriture.
- Par défaut :
60
- Minimum :
1
- Maximum :
7200
- Redémarrage de la base de données? -
false
- Valeurs autorisées :
ALLOW_INVALID_DATES
ANSI_QUOTES
ERROR_FOR_DIVISION_BY_ZERO
HIGH_NOT_PRECEDENCE
IGNORE_SPACE
NO_AUTO_CREATE_USER
NO_AUTO_VALUE_ON_ZERO
NO_BACKSLASH_ESCAPES
NO_DIR_IN_CREATE
NO_ENGINE_SUBSTITUTION
NO_FIELD_OPTIONS
NO_KEY_OPTIONS
NO_TABLE_OPTIONS
NO_UNSIGNED_SUBTRACTION
NO_ZERO_DATE
NO_ZERO_IN_DATE
ONLY_FULL_GROUP_BY
PAD_CHAR_TO_FULL_LENGTH
PIPES_AS_CONCAT
REAL_AS_FLOAT
STRICT_ALL_TABLES
STRICT_TRANS_TABLES
- Redémarrage de la base de données? -
false
- Description: Le fuseau horaire actuellement défini sur le serveur est'+ 00:00'(temps universel coordonné) par défaut. Toutefois, il peut également être réglé sur un décalage spécifique par rapport au temps universel coordonné au format [HH]:MM, avec un préfixe + ou -, par exemple "+10:00", '-6:00" ou "+05:30". Les fuseaux horaires nommés tels que "MET" ou "US/Pacific" peuvent également être utilisés.
- Par défaut :
+00:00
- Type:
string
- Redémarrage de la base de données? -
false
- Description: Nombre de secondes pendant lesquelles le serveur attend une activité sur une connexion non interactive avant de la fermer.
- Par défaut :
28800
- Minimum :
1
- Maximum :
31536000
- Redémarrage de la base de données? -
false
- Description : Nombre d'unités d'exécution d'E-S pour les opérations de lecture dans InnoDB.
- Par défaut :
4
- Minimum :
1
- Maximum :
64
- Redémarrage de la base de données? -
true
- Description : Nombre de secondes d'attente de plus de données à partir d'une connexion avant l'abandon de la lecture.
- Par défaut :
30
- Minimum :
1
- Maximum :
7200
- Redémarrage de la base de données? -
false